タプルおよびUDTフィールドのインデックス作成
既存の検索インデックスにCQLタプル型およびユーザー定義型(UDT)カラムを追加します。
ガイドライン
タプル型とユーザー定義型(UDT)を含む高度なデータ型についてのガイドライン:
- 位置指定された型付きのフィールドを要素とする固定要素数の集合を保持する新しいタプル・データ型。UDTの代わりにタプルを使用できます。
- UDTを使用すると、テーブル内で関連する情報を持つ複数のフィールドを処理しやすくなります。UDTはタプルの特殊な型です。タプルに関するすべての例とドキュメント・リファレンスは、タプルとUDTのどちらにも適用されます。
情報を別のテーブルに格納するのではなく、UDTを使用して関連する情報のフィールドを表すことで、複数のテーブルを必要とするアプリケーションを簡素化できます。
DSE Searchがサポートしていないもの:
- タプルとUDTをプライマリ・キーの宣言内で使用すること。
- タプルとUDTをCQLマップ値として使用すること。代わりに、マップに類似したデータ・モデルをシミュレートするための回避策を使用してください。
- タプルまたはUDTの動的フィールド。
- タプル/UDTサブフィールドのソートとファセット化。
パフォーマンスとメモリー
タプルとUDTの読み取り/書き込みは1つの情報単位として行われます。タプルとUDTを使用する場合は、パフォーマンスとメモリーへの影響を考慮してください。サブフィールドはタプルまたはUDT全体として管理され、個別には処理されません。
ハイライト
既存の検索インデックスにCQLタプル型およびユーザー定義型(UDT)カラムを追加します。- DataStaxのタプル・クラス(
com.datastax.bdp.search.solr.core.types.TupleField
)を使用してテーブル・カラムのフィールドを定義します。 - 対応するSolrフィールド型を使用して、CQLのタプル・カラムまたはUDTカラム内の各値のフィールドを定義します。 注: スキーマ・フィールド名は
column_name.fieldN
です。ここで、column_nameはCQLカラムと一致し、Nは1から始まるフィールドの位置です。