Timestream for InfluxDB 3 のスキーマ設計のベストプラクティス - Amazon Timestream

Amazon Timestream for LiveAnalytics に類似した機能をご希望の場合は Amazon Timestream for InfluxDB をご検討ください。リアルタイム分析に適した、シンプルなデータインジェストと 1 桁ミリ秒のクエリ応答時間を特徴としています。詳細については、こちらを参照してください。

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

Timestream for InfluxDB 3 のスキーマ設計のベストプラクティス

これらのガイドラインに従うことで、リソース使用率を最適化しつつ、よりシンプルでパフォーマンスの高いクエリを可能にする InfluxDB スキーマを設計できます。

パフォーマンスの最適化ガイドライン

  • クエリの優先度でタグをソートします。

    • テーブルへの最初の書き込みによって、ストレージ内の物理的な列の順序が決まります。

    • パフォーマンスを向上させるために、最も頻繁にクエリされるタグを最初に配置します。

    • 最初の書き込み後に列の順序を変更することはできません。

  • 広範なスキーマは避けてください。

    • テーブルあたりの列 (タグとフィールド) の数を制限します。

    • 列が多すぎると、リソースの使用量が増加し、パフォーマンスが低下する可能性があります。

    • 必要に応じて、フィールドを別々のテーブルにセグメント化することを検討してください。

  • 希薄なスキーマは避けてください。

    • 希薄なスキーマでは、行に多数の null 値が含まれます。

    • 非同種テーブルスキーマ、または異なるタイムスタンプを持つ個々のフィールドの書き込みが原因で発生します。

    • データの保存とクエリに不要なオーバーヘッドが加わります。

  • 同種テーブルスキーマを維持します。

    • 各行には、同じタグキーとフィールドキーが必要です。

    • null 値が多いテーブルは避けてください。

  • 適切なデータ型を使用します。

    • データに最適なデータ型を使用します。

    • クエリでは、整数フィールドとブール値フィールドが、文字列フィールドよりも優れています。

  • 可能な場合は、反復クエリに最終値キャッシュと一意値キャッシュを使用します。

クエリの簡素化に関するガイドライン

  • 名前をシンプルにします。

    • データ属性ごとに単一のタグまたはフィールドを使用します。

    • テーブル、タグ、フィールドのわかりやすいシンプルな名前を選択します。

    • 1 つの名前に複数のデータ属性を埋め込まないでください。

  • キーワードや特殊文字は避けてください。

    • SQL または InfluxQL の予約キーワードを使用しないでください。

    • テーブル名、タグキー、フィールドキーに特殊文字を使用しないでください。

    • キーワードまたは特殊文字を使用する場合、クエリで追加の引用符が必要です。