検索最適化によるポイントルックアップクエリの高速化¶
ポイントルックアップクエリは、少数の行を返すことが期待されるクエリです。検索最適化サービスにより、以下を使用するポイントルックアップクエリのパフォーマンスを向上させることができます。
以下のセクションでは、ポイント検索クエリの検索最適化サポートに関する詳細情報を提供します。
ポイント検索クエリの検索最適化の実現¶
クエリの述語で参照される列の検索最適化を有効にしない限り、ポイント検索クエリは改善されません。テーブルのポイント・ルックアップ・クエリのパフォーマンスを向上させるには、 ALTER TABLE ... ADD SEARCH OPTIMIZATION コマンドを使用します。
特定の列の検索最適化を有効にします。
テーブルのすべての列の検索最適化を有効にします。
一般的には、特定の列に対してのみ検索最適化を有効にするのがベストプラクティスです。ON EQUALITY 句を使用して列を指定します。この例では、特定の列の検索最適化を可能にしています。
ALTER TABLE mytable ADD SEARCH OPTIMIZATION ON EQUALITY(mycol);
(半構造化 データおよび GEOGRAPHY を除く) サポートされているデータ型のすべての列に対して EQUALITY を指定する場合:
ALTER TABLE mytable ADD SEARCH OPTIMIZATION;
詳細については、 検索最適化の有効化と無効化 をご参照ください。
サポートされるポイント検索クエリの例¶
検索最適化サービスは、等号述語を使用する以下のクエリのパフォーマンスを向上させることができます。
SELECT * FROM test_table WHERE id = 3;
IN 句は、検索最適化サービスによってサポートされています。
SELECT id, c1, c2, c3
FROM test_table
WHERE id IN (2, 3)
ORDER BY id;