チャネルメッセージの再処理 - AWS IoT Analytics

AWS IoT Analytics は、新規顧客には利用できなくなりました。の既存のお客様は、通常どおりサービスを AWS IoT Analytics 引き続き使用できます。詳細はこちら

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

チャネルメッセージの再処理

AWS IoT Analytics を使用すると、チャネルデータを再処理できます。これは次のような場合に便利です。

  • 最初からやり直さずに、既存の取り込まれたデータを再生する。

  • パイプラインを更新し、既存のデータに変更を反映して最新の状態にする。

  • カスタマー管理型ストレージオプション、チャネルに対する許可、またはデータストアに変更を加える前に取り込まれたデータを含める。

パラメータ

を使用してパイプラインを介してチャネルメッセージを再処理する場合は AWS IoT Analytics、次の情報を指定する必要があります。

StartPipelineReprocessing

パイプラインによるチャネルメッセージの再処理を開始します。

ChannelMessages

再処理する 1 つ以上のチャネルメッセージセットを指定します。

channelMessages オブジェクトを使用する場合は startTimeendTime に対して値を指定してはいけません。

s3Paths

チャネルメッセージを保存する Amazon Simple Storage Service (Amazon S3) オブジェクトを識別するために 1 つ以上のキーを指定します。このキーにはフルパスを使用する必要があります。

パスの例: 00:00:00/1582940490000_1582940520000_123456789012_mychannel_0_2118.0.json.gz

タイプ: 文字列の配列

配列メンバーの制約: 1~100 項目

長さの制約: 1~1024 文字

endTime

再処理されるチャネルデータの終了時間 (その時間を含まない)。

endTime パラメータに対して値を指定する場合は、channelMessages オブジェクトを使用してはいけません。

タイプ: タイムスタンプ

startTime

再処理される未加工メッセージデータの開始時間 (その時間を含む)。

startTime パラメータに対して値を指定する場合は、channelMessages オブジェクトを使用してはいけません。

タイプ: タイムスタンプ

pipelineName

再処理を開始するパイプラインの名前。

タイプ: 文字列

長さの制約: 1~128 文字

チャネルメッセージの再処理 (コンソール)

このチュートリアルでは、 AWS IoT Analytics コンソールの指定された Amazon S3 オブジェクトに保存されているチャネルデータを再処理する方法を示します。

開始する前に、再処理するチャネルメッセージがカスタマー管理型の Amazon S3 バケットに保存されていることを確認してください。

  1. AWS IoT Analytics コンソール にサインインします。

  2. ナビゲーションペインで [Pipelines] (パイプライン) を選択します。

  3. ターゲットのパイプラインを選択します。

  4. [Actions] (アクション) から [Reprocess messages] (メッセージの再処理) を選択します。

  5. [Pipeline reprocessing] (パイプラインの再処理) ページで、[Reprocess messages] (メッセージの再処理) に対して [S3 objects] (S3 オブジェクト) を選択します。

    AWS IoT Analytics コンソールには、次のオプションもあります。

    • [All available range] (すべての利用可能な範囲) - チャネル内の有効なデータをすべて再処理します。

    • [Last 120 days] (過去 120 日間) - 過去 120 日以内に到着したデータを再処理します。

    • [Last 90 days] (過去 90 日間) - 過去 90 日以内に到着したデータを再処理します。

    • [Last 30 days] (過去 30 日間) - 過去 30 日以内に到着したデータを再処理します。

    • [Custom range] (カスタムレンジ) - 指定された時間内に到着したデータを再処理します。どの時間範囲でも選択できます。

  6. チャンネルメッセージを保存する Amazon S3 オブジェクトのキーを入力します。

    キーを見つけるには以下の作業を行います。

    1. Amazon S3 コンソールに移動します。

    2. ターゲットの Amazon S3 オブジェクトを選択します。

    3. [Properties] (プロパティ) の [Object overview] (オブジェクトの概要) セクションで、キーをコピーします。

  7. [Start reprocessing] (再処理の開始) を選択します。

チャネルメッセージの再処理 (API)

StartPipelineReprocessing API を使用する場合は、以下に留意してください。

  • startTime パラメータと endTime パラメータは、生データが取り込まれた時間を指定しますが、これらはおおよその推定時間です。最も近い時間に切り上げることができます。startTime は包括的ですが、endTime は排他的です。

  • コマンドは再処理を非同期的に起動し、ただちに返ります。

  • 再処理されるメッセージは、最初の処理順で処理される保証はありません。ほぼ同じですが、正確ではありません。

  • パイプラインを通じて同じチャネルメッセージを再処理するために 24 時間ごとに実行できる StartPipelineReprocessing API リクエストは最高で 1000 件です。

  • 生データの再処理には追加コストが発生します。

詳細については、AWS IoT Analytics API リファレンスStartPipelineReprocessing を参照してください。

チャネルの再処理アクティビティのキャンセル

パイプラインの再処理アクティビティをキャンセルするには、CancelPipelineReprocessing API を使用するか、 AWS IoT Analytics コンソールのアクティビティページで再処理をキャンセルを選択します。再処理をキャンセルすると、残りのデータは再処理されません。別の再処理リクエストを開始する必要があります。

再処理のステータスを確認するには DescribePipeline API を使用します。レスポンスの reprocessingSummaries フィールドを確認します。