完全一致検索(TermQuery)は、指定された値と完全に一致するデータをテーブル内から検索します。これは文字列の完全一致に類似しています。
注意事項
-
KeywordやIntegerなどのテキスト以外のフィールドタイプでは、フィールドの値がクエリの term と完全に一致している必要があります。 -
Text フィールドに対して完全一致検索を使用することは避けてください。その理由は、
Textフィールドの形態素解析結果が予測不能であり、時間の経過とともに変更される可能性があるためです。Textフィールドに対する完全一致検索は、アナライザによって生成されたトークンのいずれかがクエリの term と完全に一致するかどうかをチェックします。このとき、クエリの term 自体は形態素解析されません。トークン化されていない元の値全体を一致させるには、仮想カラム を使用してフィールドをKeywordタイプにマッピングし、その後クエリを実行してください。たとえば、「tablestore is cool」という値を持つTextフィールドが「tablestore」、「is」、「cool」に形態素解析される場合、「tablestore」、「is」、または「cool」でクエリを実行すると一致結果が返されます。
操作手順
インデックス管理 タブに移動します。
Table Store コンソール にログインします。
上部のナビゲーションバーで、リソースグループとリージョンを選択します。
概要 ページで、インスタンス名をクリックするか、操作 列の インスタンス管理 をクリックします。
インスタンス詳細 タブの データテーブル一覧 タブで、データテーブル名をクリックするか、操作列の インデックス管理 をクリックします。
インデックス管理 タブで、対象の Search Index を見つけ、操作 列の 検索 をクリックします。
-
検索 ダイアログボックスで、クエリを設定します。
デフォルトでは、すべてのカラムが返されます。特定のカラムのみを返す場合は、すべてのカラムを取得 をオフにして、カンマ区切りでカラム名を入力します。
説明デフォルトでは、Table Store はデータテーブルのプライマリキー列を返します。
論理演算子を選択します:And、Or、または Not。
And を選択した場合、すべての指定条件を満たすデータが返されます。Or を選択した場合、いずれかの指定条件を満たすデータが返されます。Not を選択した場合、指定条件を満たさないデータが返されます。
-
インデックスフィールドを選択し、追加 をクリックします。
-
インデックスフィールドのクエリタイプを 完全一致検索 (TermQuery) に設定し、検索する値を入力します。
デフォルトではソートは無効です。特定のフィールドで結果をソートするには、ソートを有効化 をオンにして、ソートフィールドを追加し、ソート順を設定します。
デフォルトでは集約は無効です。特定のフィールドに対して統計集約を実行するには、集約を有効化 をオンにして、集約対象フィールドを追加し、集約設定を行います。
OK をクリックします。
クエリ結果は インデックス管理 タブに表示されます。
開発連携
SDK またはコマンドラインツールを使用して、完全一致検索を実行できます。
課金
Search Index を使用したデータのクエリは、読み取りスループットを消費します。詳細については、「Search Index のメータリングと課金」をご参照ください。
よくある質問
関連ドキュメント
Search Index は、多次元データクエリに対応するさまざまなクエリタイプをサポートしています。これには、完全一致検索、複数値完全一致検索、完全一致検索、一致検索、フレーズ一致検索、範囲クエリ、プレフィックス検索、サフィックス検索、ワイルドカード検索、トークンベースのワイルドカード検索、ブール検索、ジオクエリ、ネストされたクエリ、ベクトル検索、および exists 検索 が含まれます。
データをクエリする際には、結果セットをソートおよびページネーションしたり、折りたたみ(重複排除)を実行したりできます。
最大値や最小値の検索、合計の計算、行数のカウントなどのデータ分析を行うには、統計集約機能または SQL クエリ 機能を使用できます。
結果セットの順序を問わず高速にデータをエクスポートするには、Parallel Scan 機能を使用できます。