パーティションの追加
パーティションには、次の 3 つの主要な機能があります。
パーティションの作成について
インデックスにパーティションを作成するには、クエリの一種であるルーティング式を作成します。パーティションのルーティング式では、最初のパイプまでの正規表現検索クエリに何らかの値を、つまり検索制約を入れることができます。パーティションには英数字で名前を指定する必要があります。アンダースコア (_) 以外の特殊文字は使用できません。クエリにはワイルドカードを使用できますが、parse や検索の operator を含めることはできません。
あまり一般的でない使用事例に関するパーティションを作成します。その目的は、インデックス内のパーティションを使用して、検索を制限し安全を確保することと、検索パフォーマンスを向上させることです。非常に一般的な使用事例に関するパーティションを作成した場合でもパーティションは機能しますが、パフォーマンスの向上を最大限に活用できません。
パーティション作成の詳細な手順については、「アナリティクス層」を参照してください。パーティションは、メッセージをリアルタイムに取り込むもので、集計データで埋め戻しを行わない点が Scheduled View と異なります。パーティションは、作成された時点から非集計インデックスの構築を開始し、作成された時点以降のデータのみをインデックス化します。
パフォーマンスを最適化するためのベストプラクティス
パーティションを設計する際は、次の点に留意してください。
- 変更される可能性のあるクエリは使用しない。パーティションの使用から利益を得るには、長期のメッセージ編成でパーティションを使用する必要があります。
- クエリはで極力明確にする。クエリを明確にすることで、パーティション内のデータ量が減り、検索パフォーマンスが向上します。
- クエリの柔軟性を保つ。
sourceCategory=*Apache*
などの柔軟なクエリを使用すると、クエリを分割しなくてもメタデータを調整できます。 - 最も頻繁に使用されるデータをグループ化する。たとえば、Web データ、セキュリティ データ、エラーなどのカテゴリでパーティションを作成します。
- 使用するデータをチーム別にグループ化します。パーティションは、組織内のロールおよびチーム別にメッセージを編成する優れた方法です。
- パーティション内に過剰な量のデータを含めない。データの 2% ~ 20 % をパーティションに送信します。インデックス内のデータの 90% をパーティションに含めると、検索パフォーマンスが向上しなくなります。
- 重複するパーティションを作成しない。複数のパーティションがある場合、重複したルーティング式を作成すると、メッセージが重複する可能性があります。たとえば、次のパーティションがある場合、
_sourceCategory=prod/Apache
のメッセージは両方のパーティションに格納されるため、そのメッセージは重複することになります。
Partition1:_sourceCategory=prod
Partition2:_sourceCategory=*/Apache
検索と保持期間の強化
アナリティクス層によって、検索と保持機能が強化されます。アナリティクス パーティションには有用な柔軟性があり、分析をデータの値に合わせることができます。継続層や高頻度層を使用することにより、ユース ケースやアナリティクスのニーズごとにデータを適切にセグメント化できるため、アナリティクスへの投資を最小限に抑えることができます。
- アナリティクス層の作成方法、および継続層と高頻度層の各タイプの使用方法や機能については「アナリティクス層」を参照してください。
- パーティションに対して検索を実行する方法については、「パーティションに対する検索の実行」および「パーティションによる検索の最適化」を参照してください。
- データ保持期間とその変更方法については、「変動する保持期間によるインデックスの管理」を参照してください。