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

:概要

最終更新日:Nov 10, 2025

Simple Log Serviceでは、Function Computeを使用してストリーミングデータを変換できます。 データの更新を検出して関数を呼び出すために、extract-transform-load (ETL) ジョブを設定できます。 次に、Logstore内の増分データが消費され、変換されます。

シナリオ

Simple Log Serviceトリガーを使用して、次のシナリオでFunction ComputeとSimple Log Serviceを統合できます。

  • データのクレンジングと処理

    Simple Log Serviceを使用すると、ログをすばやく収集、処理、クエリ、分析できます。

  • データ配信

    Simple Log Serviceを使用すると、指定された宛先にデータを送信し、クラウド上のビッグデータサービス間にデータパイプラインを構築できます。

    1. フィールドの前処理と出荷

    2. 列ストアの作成と配送

    3. カスタム処理と結果ストレージ

ETL 関数

  • 関数タイプ

    • テンプレート関数

      詳細については、「aliyun-log-fc-functions」をご参照ください。

    • ユーザー定義関数

      関数形式は、関数の実装に関連しています。 詳細については、「カスタム関数の作成」をご参照ください。

  • トリガーメカニズム

    ETLジョブは、Simple Log Serviceトリガーに対応し、関数を呼び出すために使用されます。 Simple Log ServiceでLogstoreのETLジョブを作成すると、ジョブ設定に基づいてLogstoreのシャードからデータをポーリングするためのタイマーが開始されます。 データがLogstoreに書き込まれると、<shard_id,begin_cursor,end_cursor > 形式のトリプルデータレコードが関数イベントとして生成されます。 次に、関連するETL関数が呼び出される。

    説明

    新しいデータがLogstoreに書き込まれず、ストレージシステムが更新されると、カーソル情報が変更されます。 ETL関数はシャードごとに呼び出されますが、データは変換されません。 この場合、カーソル情報を使用してシャードからデータを取得できます。 データが得られない場合、ETL関数が呼び出されるが、データは変換されない。 関数の呼び出しは無視できます。 詳細については、「カスタム関数の作成」をご参照ください。

    ETLジョブは、時間メカニズムに基づいて関数を呼び出す。 たとえば、LogstoreのETLジョブの呼び出し間隔を60秒に設定します。 データがShard 0に連続して書き込まれると、ETL関数が60秒ごとに呼び出され、過去60秒のカーソル範囲にあるデータが変換されます。

よくある質問

  • トリガーを作成しても関数が呼び出されない場合はどうすればよいですか?

    次の方法を使用して問題をトラブルシューティングできます。

    • Function Computeトリガーが設定されているLogstoreに新しいデータが書き込まれているかどうかを確認します。 新しいデータがLogstoreに書き込まれると、関数が呼び出されます。

    • 関数のトリガーログと操作ログに例外があるかどうかを確認します。

  • 関数の呼び出し間隔が予想よりも大きいのはなぜですか?

    関数はシャードごとに個別に呼び出されます。 Logstore内のシャードに対して関数が呼び出される回数が多い場合でも、各シャードに対して関数が呼び出される間隔は、指定された呼び出し間隔と一致する可能性があります。

    関数がシャードに対して呼び出される呼び出し間隔は、データ変換に指定された時間間隔と同じです。 関数が呼び出されると、レイテンシが存在する可能性があります。 これにより、コール間隔が予想よりも大きくなる可能性があります。 次のリストでは、指定された呼び出し間隔が60秒の2つのシナリオについて説明します。

    • シナリオ1: 関数が呼び出され、レイテンシが存在しません。 この関数は60秒間隔で呼び出され、[now -60s, now) の時間範囲で生成されたデータを変換します。

      説明

      関数はシャードごとに個別に呼び出されます。 Logstoreに10個のシャードが含まれ、関数の呼び出し時にレイテンシが存在しない場合、関数は60秒間隔で10回呼び出され、データをリアルタイムで変換します。

    • シナリオ2: 関数が呼び出され、レイテンシが存在します。 Simple Log Serviceシャード内のデータが変換された時点と、最新のデータがSimple Log Serviceに書き込まれた時点との時間差が10秒を超えています。 この場合、トリガーは通話間隔を短くします。 たとえば、関数を2秒間隔で呼び出して、60秒以内に生成されたデータを変換できます。