CREATE_INDEX
ベクトル索引を作成するには、DBMS_VECTOR.CREATE_INDEX
プロシージャを使用します。
用途
Hierarchical Navigable Small World (HNSW)ベクトル索引やInverted File Flat (IVF)ベクトル索引などのベクトル索引を作成します。
構文
DBMS_VECTOR.CREATE_INDEX (
idx_name IN VARCHAR2,
table_name IN VARCHAR2,
idx_vector_col IN VARCHAR2,
idx_include_cols IN VARCHAR2 DEFAULT NULL,
idx_partitioning_scheme IN VARCHAR2 default 'LOCAL',
idx_organization IN VARCHAR2,
idx_distance_metric IN VARCHAR2 DEFAULT COSINE,
idx_accuracy IN NUMBER DEFAULT 90,
idx_parameters IN CLOB,
idx_parallel_creation IN NUMBER DEFAULT 1
);
パラメータ
パラメータ | 説明 |
---|---|
|
作成する索引の名前。 |
|
索引を作成する表。 |
|
索引を作成するVector列。 |
idx_include_cols |
索引でカバーされる列名のカンマ区切りリスト。 |
|
IVF索引のパーティション化スキーム:
IVF索引は、パーティション表のグローバル索引とローカル索引の両方をサポートします。デフォルトでは、これらの索引は重心によってグローバルにパーティション化されます。ローカルIVF索引を作成することを選択できます。これにより、実表のパーティションまたはサブパーティションと索引パーティションの間に1対1の関係が提供されます。 これらのパーティション化スキームの詳細は、「Inverted File Flatベクトル索引のパーティション化スキーム」を参照してください。 |
|
索引構成:
これらの組織タイプの詳細は、「ベクトル索引の様々なカテゴリの管理」を参照してください。 |
|
ベクトル間の距離を計算するために使用される距離メトリックまたは数学的関数:
これらの各メトリックの詳細は、「ベクトル距離関数および演算子」を参照してください。 |
|
近似検索問合せの実行時に目指す近似検索の実行のターゲット精度。 「ベクトル索引を使用した近似類似検索の理解」で説明したように、使用している索引タイプに応じて、パーセンテージ値を指定するか、内部パラメータ値を指定することで、デフォルト以外のターゲット精度値を指定できます。
|
|
ベクトル索引のタイプと関連パラメータ。 索引付けパラメータをJSON形式で指定します:
|
|
索引作成に使用されるパラレル・スレッドの数。 |
例
-
HNSW索引のneighborsとefConstructionを指定します:
dbms_vector.create_index( 'v_hnsw_01', 'vpt01', 'EMBEDDING', NULL, NULL, 'INMEMORY NEIGHBOR GRAPH', 'EUCLIDEAN', 95, '{"type" : "HNSW", "neighbors" : 3, "efConstruction" : 4}');
-
IVF索引のパーティション数を指定します:
dbms_vector.create_index( 'V_IVF_01', 'vpt01', 'EMBEDDING', NULL, NULL, 'NEIGHBOR PARTITIONS', 'EUCLIDEAN', 95, '{"type" : "IVF", "partitions" : 5}');
親トピック: DBMS_VECTOR