カスタム複合パーティションキーを使用した LiveAnalytics スキーマ検証のタイムストリーム - Amazon Timestream

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

カスタム複合パーティションキーを使用した LiveAnalytics スキーマ検証のタイムストリーム

の Timestream でのスキーマ検証 LiveAnalytics は、データベースに取り込まれたデータが指定されたスキーマに準拠し、取り込みエラーを最小限に抑え、データ品質を向上させるのに役立ちます。特に、スキーマ検証は、クエリパフォーマンスを最適化する目的でユーザー定義のパーティションキーを採用する場合に特に役立ちます。

ユーザー定義パーティションキーを使用した LiveAnalytics スキーマ検証の Timestream とは?

LiveAnalytics スキーマ検証の Timestream は、事前定義されたスキーマに基づいてテーブルの LiveAnalytics Timestream に取り込まれるデータを検証する機能です。このスキーマは、パーティションキー、データ型、挿入されるレコードの制約など、データモデルを定義します。

ユーザー定義パーティションキーを使用する場合、スキーマの検証がさらに重要になります。パーティションキーを使用すると、パーティションキーを指定して、 の Timestream にデータを保存する方法を決定できます LiveAnalytics。カスタムパーティションキーを使用してスキーマに対して受信データを検証することで、データの整合性を強化し、エラーを早期に検出し、 の Timestream に保存されているデータの全体的な品質を向上させることができます LiveAnalytics。

カスタム複合パーティションキーで LiveAnalytics スキーマ検証に Timestream を使用する方法

カスタム複合パーティションキーで LiveAnalytics スキーマ検証に Timestream を使用するには、次の手順に従います。

クエリパターンがどのようになるかを考えてみましょう。 LiveAnalytics テーブルの Timestream のスキーマを適切に選択して定義するには、クエリ要件から始める必要があります。

カスタム複合パーティションキーを指定する: テーブルを作成するときに、カスタムパーティションキーを指定します。このキーは、テーブルデータのパーティション化に使用される属性を決定します。パーティショニングのディメンションキーとメジャーキーを選択できます。ディメンションキーはディメンション名に基づいてデータをパーティション化し、メジャーキーはメジャー名に基づいてデータをパーティション化します。

適用レベルの設定: 適切なデータパーティショニングとそれに伴う利点を確保するために、 の Amazon Timestream LiveAnalytics では、スキーマ内のパーティションキーごとに適用レベルを設定できます。適用レベルは、レコードを取り込むときにパーティションキーディメンションが必要かオプションかを決定します。2 つのオプションから選択できます。つまりREQUIRED、パーティションキーが取り込まれたレコードに存在する必要があります。また、 OPTIONALはパーティションキーが存在する必要はありません。カスタマー定義パーティションを使用する場合は、REQUIRED適用レベルを使用して、データが適切にパーティション化され、この機能の利点を最大限に活用できるようにすることをお勧めします。さらに、スキーマの作成後はいつでも適用レベルの設定を変更して、データの取り込み要件に合わせることができます。

取り込みデータ: テーブルの LiveAnalytics Timestream にデータを取り込む場合、スキーマ検証プロセスは、カスタム複合パーティションキーを使用して、定義されたスキーマとレコードをチェックします。レコードがスキーマに準拠していない場合、 の Timestream LiveAnalytics は検証エラーを返します。

検証エラーを処理する: 検証エラーの場合、 の Timestream LiveAnalytics はエラーのタイプに応じて RejectedRecordsExceptionValidationExceptionまたは を返します。これらの例外はアプリケーション内で処理し、誤ったレコードの修正や取り込みの再試行など、適切なアクションを実行してください。

適用レベルの更新: 必要に応じて、 UpdateTableアクションを使用して、テーブルの作成後にパーティションキーの適用レベルを更新できます。ただし、名前やタイプなど、パーティションキー設定の一部の側面は、テーブルの作成後に変更できないことに注意してください。強制レベルを REQUIREDから に変更するとOPTIONAL、カスタマー定義パーティションキーとして選択された属性の有無にかかわらず、すべてのレコードが受け入れられます。逆に、適用レベルを OPTIONALから に変更するとREQUIRED、この条件を満たさないレコードに対して 4xx 書き込みエラーが表示されることがあります。したがって、データのパーティショニング要件に基づいてテーブルを作成するときは、ユースケースに適した適用レベルを選択することが重要です。

カスタム複合パーティションキーで LiveAnalytics スキーマ検証に Timestream を使用するタイミング

データの一貫性、品質、最適化されたパーティショニングが重要なシナリオでは、カスタム複合パーティションキーを使用した LiveAnalytics スキーマ検証のタイムストリームを使用する必要があります。データ取り込み中にスキーマを適用することで、誤った分析や貴重なインサイトの喪失につながる可能性のあるエラーや不整合を防ぐことができます。

バッチロードジョブとのやり取り

ユーザー定義のパーティションキーを使用してテーブルにデータをインポートするようにバッチロードジョブを設定する場合、プロセスに影響を与える可能性のあるシナリオがいくつかあります。

  1. 強制レベルが に設定されている場合OPTIONAL、ジョブ設定中にパーティションキーがマッピングされていない場合、作成フロー中にコンソールにアラートが表示されます。このアラートは、 APIまたは を使用している場合は表示されませんCLI。

  2. 強制レベルが に設定されている場合REQUIRED、パーティションキーがソースデータ列にマッピングされない限り、ジョブの作成は拒否されます。

  3. ジョブの作成REQUIRED後に強制レベルが に変更された場合、ジョブは引き続き実行されますが、パーティションキーに適切なマッピングがないレコードは 4xx エラーで拒否されます。

スケジュールされたクエリとのやり取り

アグリゲート、ロールアップ、その他の形式の前処理されたデータを、ユーザー定義のパーティションキーを持つテーブルに計算して保存するためのスケジュールされたクエリジョブを設定する場合、プロセスに影響を与える可能性のあるシナリオがいくつかあります。

  1. 強制レベルが に設定されている場合OPTIONAL、ジョブ設定中にパーティションキーがマッピングされていない場合、アラートが表示されます。このアラートは、 APIまたは を使用している場合は表示されませんCLI。

  2. 強制レベルが に設定されている場合REQUIRED、パーティションキーがソースデータ列にマッピングされない限り、ジョブの作成は拒否されます。

  3. ジョブの作成REQUIRED後に強制レベルが に変更され、スケジュールされたクエリ結果にパーティションキーディメンションが含まれていない場合、ジョブの次の反復はすべて失敗します。