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

DataHub:Function Computeへのデータ同期

最終更新日:Jan 17, 2025

Function Computeへのデータ同期

1. Function Computeで関数を作成する

1.1 サービスを作成する

[Function Computeコンソール] でサービスを作成します。サービスがすでに作成されている場合は、この手順をスキップします。

fc_a

1.2 関数を作成する

[サービスと関数] ページで、作成したサービスをクリックし、[関数の作成] をクリックします。コードをアップロードするか、関数のサンプルコードを使用します。詳細については、「関数の作成」をご参照ください。トリガーパラメーターにはデフォルト値を使用します。次に、[作成] をクリックします。

fc_b

2. DataHubのサービスリンクロールを作成する

Security Token Service ( STS ) から一時的なアクセス認証情報を使用する場合、DataHub のサービスリンクロールが自動的に作成されます。その後、DataHubはサービスリンクロールを使用してデータをFunction Computeに同期します。

3. DataHubトピックを作成する

詳細については、「トピックの管理」をご参照ください。

4. DataConnectorを作成する

4.1 トピックの詳細ページに移動する

fc_c

4.2 [Function Compute] をクリックする

fc_d

4.3 必要に応じてパラメーターを設定する

fc_e

  • エンドポイント: Function Computeのエンドポイント。次の形式で内部エンドポイントを入力する必要があります: https://<Alibaba CloudアカウントID>.fc.<リージョンID>.aliyuncs.com。中国 (上海) リージョンでFunction Computeにアクセスするために使用される内部エンドポイントの例: https://12423423992.fc.cn-shanghai-internal.aliyuncs.com。詳細については、「エンドポイント」をご参照ください。

  • サービス: 宛先関数が属するサービスの名前。

  • 関数: 宛先関数の名前。

  • 開始時間: トピックデータがFunction Computeに同期される開始時間。

    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: イベントソースの ID 。プロジェクト名とトピック名が含まれます。例: /projects/test_project_name/topics/test_topic_name

  • region: イベントが属するDataHubのリージョン。例: cn-hangzhou

  • records: イベント内のレコード。

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

    • systemTime: イベントがDataHubに書き込まれた時刻 (ミリ秒単位)。

    • data: イベントのデータ。データがTUPLEタイプのトピックにある場合、パラメーター値はリストです。リスト内の各要素は、トピック内のフィールド値に対応する文字列です。データがBLOBタイプのトピックにある場合、パラメーター値は文字列です。

      6. 使用上の注意

  • Function Computeにアクセスするために使用されるエンドポイントは、内部エンドポイントである必要があります。Function Computeでサービスと関数を作成する必要があります。

  • DataHubは同期モードでの関数呼び出しのみをサポートします。これにより、データが順番に処理されることが保証されます。

  • DataHubは、宛先関数の実行時にエラーが発生した場合、1 秒後に同期を再試行します。同期が 512 回失敗した場合、同期は中断されます。

  • DataHubコンソールに移動して、DataConnectorの状態、同期のオフセット、詳細なエラーメッセージなど、DataConnectorに関する情報を表示できます。