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

DataHub:Function Compute 同期の作成

最終更新日:Mar 13, 2026

同期関数の作成

1. Function Compute 関数の作成

1.1 サービスの作成

Function Compute コンソールに移動し、サービスを作成します。すでにFunction Compute 関数を作成している場合は、この手順をスキップしてください。

1.2 関数の作成

作成したばかりのサービスで関数を作成するには、[Create Function] をクリックしてコードを入力します。詳細については、「関数概要」をご参照ください。[Triggers] ページで、[Skip] をクリックし、次に [Finish] をクリックします。

2. サービスにリンクされたロールの権限付与

Security Token Service (STS) の一時アカウント方式を選択すると、DataHub 用のサービスにリンクされたロールが自動的に作成されます。DataHub サービスは、このロールを使用して FC にアクセスし、データ同期を実行します。

3. DataHub Topic の作成

詳細については、「DataHub 同期の開始」をご参照ください。

4. DataHub Function Compute コネクタの作成

4.1 Topic 詳細ページへの移動

4.2 FC コネクタの作成

4.3 構成情報の入力

  • エンドポイント: Function Compute のサービスエンドポイントです。内部サービスエンドポイントを https://<account_id>.fc.<region>.aliyuncs.com の形式で指定する必要があります。たとえば、中国 (上海) リージョンの Function Compute のエンドポイントは https://12423423992.fc.cn-shanghai-internal.aliyuncs.com です。詳細については、「サービスエンドポイント」をご参照ください。

  • サービス: 送信先の Function Compute サービス名です。

  • 関数: 送信先の Function Compute 関数名です。

  • 開始時刻: 関数呼び出しを開始する DataHub Topic 内の位置です。

    5. イベント構造の定義

    Function Compute に送信されるデータは、次の構造を持ちます。

{
  "eventSource": "acs:datahub",
  "eventName": "acs:datahub:putRecord",
  "eventSourceARN": "/projects/test_project_name/topics/test_topic_name",
  "region": "cn-hangzhou",
  "records": [
    {
      "eventId": "0:12345",
      "systemTime": 1463000123000,
      "data": "[\"col1's value\",\"col2's value\"]"
    },
    {
      "eventId": "0:12346",
      "systemTime": 1463000156000,
      "data": "[\"col1's value\",\"col2's value\"]"
    }
  ]
}

ここで、

  • eventSource: イベントソースです。これは定数文字列 acs:datahub です。

  • eventName: イベント名です。DataHub からのデータの場合、イベント名は acs:datahub:putRecord です。

  • eventSourceARN: イベントソース識別子です。これには、/projects/test_project_name/topics/test_topic_name のような DataHub プロジェクト名と Topic 名が含まれます。

  • region: ソース DataHub サービスが配置されているリージョンです。cn-hangzhou などです。

  • records: イベントに含まれるレコードのリストです。

    • eventId: レコードの ID です。形式は shardId:SequenceNumber です。

    • systemTime: イベントが DataHub に保存されたときの UNIX タイムスタンプ (ミリ秒) です。

    • data: イベントのデータコンテンツです。Tuple Topic の場合、このフィールドはリストです。リストの各要素は、Topic 内のフィールドの値に対応する文字列です。BLOB Topic の場合、このフィールドは文字列です。

      6. 注意事項

  • サービスドメイン名は内部サービスドメイン名である必要があります。Function Compute サービス名と関数名は存在している必要があります。

  • DataHub は、データ処理の順序を確実にするために、同期モードでの関数呼び出しのみをサポートしています。

  • 関数で実行時エラーが発生した場合、DataHub は 1 秒後にタスクを再試行し、512 回失敗するとタスクを一時停止します。

  • Web コンソールで、タスク実行ステータス、ポイント、詳細なエラーメッセージなどを表示できます。