VECTOR_INDEXES 檢視畫面

INFORMATION_SCHEMA.VECTOR_INDEXES 檢視畫面會為資料集中的每個向量索引包含一個資料列。

所需權限

如要查看向量索引中繼資料,您必須在含有索引的資料表上具備 bigquery.tables.getbigquery.tables.list 身分與存取權管理 (IAM) 權限。以下每個預先定義的 IAM 角色都包含下列至少一項權限:

  • roles/bigquery.admin
  • roles/bigquery.dataEditor
  • roles/bigquery.dataOwner
  • roles/bigquery.dataViewer
  • roles/bigquery.metadataViewer
  • roles/bigquery.user

如要進一步瞭解 BigQuery 權限,請參閱「使用身分與存取權管理功能控管存取權」。

結構定義

查詢 INFORMATION_SCHEMA.VECTOR_INDEXES 檢視表時,資料集中的每個向量索引在查詢結果中都會有一個資料列。

INFORMATION_SCHEMA.VECTOR_INDEXES 檢視表具有下列結構定義:

資料欄名稱 資料類型
index_catalog STRING 包含資料集的專案名稱。
index_schema STRING 包含索引的資料集名稱。
table_name STRING 建立索引的資料表名稱。
index_name STRING 向量索引的名稱。
index_status STRING 索引的狀態:ACTIVEPENDING DISABLEMENTTEMPORARILY DISABLEDPERMANENTLY DISABLED
  • ACTIVE 表示索引可供使用或正在建立中。請參閱 coverage_percentage ,查看索引建立作業的進度。
  • PENDING DISABLEMENT 表示索引資料表的總大小超過貴機構的限制;索引會排入待刪除的隊列。處於這個狀態時,索引可用於向量搜尋查詢,且您必須為向量索引儲存空間付費。
  • TEMPORARILY DISABLED 表示索引資料表的總大小超出貴機構的限制,或是索引資料表小於 10 MB。在這個狀態下,向量搜尋查詢不會使用索引,您也不會被收取向量索引儲存空間費用。
  • PERMANENTLY DISABLED 表示索引資料表上有相容性不佳的結構定義變更。
creation_time TIMESTAMP 建立索引的時間。
last_modification_time TIMESTAMP 上次修改索引設定的時間。例如刪除已編入索引的資料欄。
last_refresh_time TIMESTAMP 上次為表格資料建立索引的時間。如果值為 NULL,表示尚未提供索引。
disable_time TIMESTAMP 索引狀態設為 DISABLED 的時間。如果索引狀態不是 DISABLED,則值為 NULL
disable_reason STRING 停用索引的原因。如果索引狀態不是 DISABLED,則為 NULL
DDL STRING 用來建立索引的資料定義語言 (DDL) 陳述式。
coverage_percentage INTEGER 已編入索引的資料表資料約略百分比。0% 表示即使部分資料已編入索引,仍無法在 VECTOR_SEARCH 查詢中使用索引。
unindexed_row_count INTEGER 資料表中未編入索引的資料列數。
total_logical_bytes INTEGER 索引的可計費邏輯位元組數。
total_storage_bytes INTEGER 索引的可計費儲存空間位元組數。

範圍和語法

對這個檢視表執行的查詢必須具有資料集限定詞。下表說明此檢視區域的範圍:

檢視表名稱 資源範圍 區域範圍
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.VECTOR_INDEXES 資料集層級 資料集位置

替換下列內容:
  • 選用:PROJECT_ID: Google Cloud 專案的 ID。如果未指定,系統會使用預設專案。
  • DATASET_ID:資料集 ID。詳情請參閱「資料集限定條件」。

示例

-- Returns metadata for vector indexes in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.VECTOR_INDEXES;

範例

以下範例會顯示專案 my_project 中資料集 my_dataset 中所有有效的向量索引。其中包含名稱、用於建立這些項目的 DDL 陳述式,以及涵蓋率百分比。如果索引基礎資料表小於 10 MB,則不會填入索引,此時 coverage_percentage 值為 0。

SELECT table_name, index_name, ddl, coverage_percentage
FROM my_project.my_dataset.INFORMATION_SCHEMA.VECTOR_INDEXES
WHERE index_status = 'ACTIVE';

結果大致如下:

+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+
| table_name | index_name | ddl                                                                                             | coverage_percentage |
+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+
| table1     | indexa     | CREATE VECTOR INDEX `indexa` ON `my_project.my_dataset.table1`(embeddings)                      | 100                 |
|            |            | OPTIONS (distance_type = 'EUCLIDEAN', index_type = 'IVF', ivf_options = '{"num_lists": 100}')   |                     |
+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+
| table2     | indexb     | CREATE VECTOR INDEX `indexb` ON `my_project.my_dataset.table2`(vectors)                         | 42                  |
|            |            | OPTIONS (distance_type = 'COSINE', index_type = 'IVF', ivf_options = '{"num_lists": 500}')      |                     |
+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+
| table3     | indexc     | CREATE VECTOR INDEX `indexc` ON `my_project.my_dataset.table3`(vectors)                         | 98                  |
|            |            | OPTIONS (distance_type = 'DOT_PRODUCT', index_type = 'TREE_AH',                                 |                     |
|            |            |          tree_ah_options = '{"leaf_node_embedding_count": 1000, "normalization_type": "NONE"}') |                     |
+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+