このページでは、
Kubernetes デプロイ オプションを使用して AlloyDB Omni バージョン
16.8.0 について説明します。
別のデプロイ オプションを選択します。
ScaNN ベクトルクエリのパフォーマンスの概要
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
ドキュメントのバージョンを選択してください。
このページでは、AlloyDB AI の Scalable Nearest Neighbor(ScaNN)インデックスを使用してベクトルクエリのパフォーマンスを向上させる方法の概要について説明します。詳細については、
インデックスとクエリベクトルを作成するをご覧ください。
ScaNN インデックスは、ツリー量子化ベースのインデックス登録を使用します。この手法では、インデックスは量子化(ハッシュ化)関数とともに検索ツリーを学習します。クエリを実行すると、検索ツリーを使用して検索空間が枝刈りされ、量子化を使用してインデックス サイズが圧縮されます。この枝刈りにより、クエリベクトルとデータベース ベクトルの類似性(距離)のスコアリングが高速化されます。
最近傍クエリで高い秒間クエリ数(QPS)と高い再現率の両方を実現するには、使用するデータとクエリに最も適した方法で ScaNN インデックスのツリーをパーティショニングする必要があります。
高次元エンベディング モデルは、はるかに低い次元数でも多くの情報を保持できます。たとえば、エンベディングの次元のわずか 20% で情報の 90% を保持できます。このようなデータセットを高速化するため、AlloyDB AI ScaNN インデックスは、インデックスに登録されたベクトルに対して主成分分析(PCA)による次元削減を自動的に実行します。これにより、ベクトル検索の CPU とメモリ使用量がさらに削減されます。詳細については、scann.enable_pca をご覧ください。
次元削減により、インデックスでの再現率はわずかに低下します。この再現率の低下を補正するため、AlloyDB AI ScaNN インデックスは、まずインデックスから取得した多数の PCA 済みベクトル候補を使用してランク付けを行います。次に、これらの PCA 済みベクトル候補を元のベクトルに基づいて再度ランク付けします。詳細については、scann.pre_reordering_num_neighbors をご覧ください。
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-11-28 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-11-28 UTC。"],[],[]]