すべてのプロダクト
Search
ドキュメントセンター

:コンテンツ分割

最終更新日:Jan 11, 2025

このトピックでは、データクレンジング機能で提供されるコンテンツ分割テンプレートを使用してメッセージデータを処理する方法について説明します。

背景情報

データクレンジング機能は、コンテンツ分割、動的ルーティング、コンテンツエンリッチメント、コンテンツマッピングテンプレートなど、メッセージ処理のための共通テンプレートを提供します。テンプレート内のコードを使用してメッセージを処理できます。ビジネス要件に基づいてテンプレート内のコードを変更することもできます。

データクレンジング機能は、Function Computeに基づいて基本的なオペレーター機能を提供します。データクレンジング機能は、次のサービスでサポートされています。ApsaraMQ for RocketMQApsaraMQ for KafkaApsaraMQ for MQTTApsaraMQ for RabbitMQ、および Simple Message Queue (formerly MNS) (SMQ)。データクレンジングタスクを作成した後、Function Computeコンソール にログインしてカスタムコードを記述し、対応する関数の設定を変更できます。

オペレーター

説明

コンテンツ分割

正規表現に基づいてメッセージコンテンツを分割し、分割されたメッセージを1つずつ宛先に送信します。

動的ルーティング

正規表現に基づいてメッセージコンテンツを照合します。コンテンツが一致するメッセージは、対応する宛先サービスにルーティングされます。コンテンツが一致しないメッセージは、デフォルトの宛先サービスにルーティングされます。

コンテンツエンリッチメント

エンリッチメントソースに基づいてメッセージコンテンツをエンリッチします。メッセージの元のコンテンツにアカウント ID が含まれている場合、アカウント ID を使用してデータベースをクエリし、クライアントリージョンを取得します。次に、データベースとクライアントリージョンの情報がソースメッセージの本文に入力され、宛先サービスに送信されます。

コンテンツマッピング

正規表現に基づいてメッセージコンテンツをマッピングします。たとえば、システムはメッセージ内の機密フィールドをマスクしたり、メッセージサイズを最小サイズに縮小したりします。

このトピックでは、ApsaraMQ for RocketMQ を使用して、コンテンツ分割テンプレートを使用してデータクレンジングを実行する方法について説明します。

次のメッセージには、生徒のリストが含まれています。

message:
[John, Male, 17, Class 4; Alice, Female, 17, Class 3; Tom, Male, 17, Class 4]

メッセージを次のメッセージに分割し、分割されたメッセージを宛先サービスに送信する必要があります。サンプルコード:

message:
    [John, Male, 17, Class 4]
message:
    [Alice, Female, 17, Class 3]
message:
    [Tom, Male, 17, Class 4]

dataclean_split

手順

  1. ApsaraMQ for RocketMQ コンソール にログインします。

  2. 左側のナビゲーションペインで、メッセージ統合 > メッセージ送信 を選択します。 上部のナビゲーションバーで、リージョンを選択します。

  3. メッセージ送信 (Sink) ページで、タスクの作成 をクリックします。

  4. メッセージ送信の作成 パネルで、パラメーターを設定し、[確認] をクリックします。

    以下の項目では、設定する必要があるパラメーターについて説明します。その他のパラメーターにはデフォルト値を使用します。

    • 基本情報

      パラメーター

      説明

      タスク名

      タスク名。

      メッセージ送信タイプ

      メッセージをルーティングするサービス。この例では、[apsaramq For Rocketmq] が選択されています。ドロップダウンリストから、[apsaramq For Rocketmq][apsaramq For Rabbitmq][SMQ][apsaramq For Kafka] などのメッセージングサービスを選択できます。

    • [リソース設定]

      パラメーター

      説明

      [ソース]

      リージョン

      ソース ApsaraMQ for RocketMQインスタンスが存在するリージョン。この例では、[中国 (杭州)] が選択されています。

      バージョン

      メッセージをルーティングする ApsaraMQ for RocketMQ インスタンスのバージョン。この例では、[rocketmq 5.x] が選択されています。

      RocketMQ インスタンス

      メッセージをルーティングする ApsaraMQ for RocketMQ インスタンス。

      Topic

      メッセージを配信する ApsaraMQ for RocketMQ インスタンスのトピック。

      Tag

      メッセージをフィルタリングするために使用されるタグ。

      Group ID

      グループ ID。この例では、クイック作成 が選択され、GID_EVENTBRIDGE_xxx 形式の ID を持つグループが作成されます。

      コンシューマーオフセット

      メッセージが消費されるオフセット。この例では、最新のオフセット が選択されています。

      [ターゲット]

      [バージョン]

      メッセージのルーティング先の ApsaraMQ for RocketMQ インスタンスのバージョン。この例では、[rocketmq 5.x] が選択されています。

      [インスタンス ID]

      メッセージをルーティングする ApsaraMQ for RocketMQ インスタンスの ID。

      [トピック]

      メッセージをルーティングする ApsaraMQ for RocketMQ インスタンスのトピック。

    • データ処理

      • メッセージフィルタリング: メッセージのデータをフィルタリングするかどうかを指定します。この例では、フィルタリングしない が選択されています。

      • メッセージ変換: メッセージを変換するために使用するルール。この例では、[メッセージ変換] パラメーターに カスタム設定メッセージ本文 パラメーターに データクレンジング関数テンプレートの作成関数テンプレート パラメーターに [コンテンツ分割 Transform_split] を選択し、[関数コード] エディターのコードを実際のビジネス要件に基づいて変更します。

    メッセージアウトフロータスクを作成した後、Function Computeコンソール にログインして、システムによって自動的に作成されたサービスと関数を確認できます。