Ansicht VECTOR_INDEXES
Wenn Sie Feedback geben oder Support für dieses Feature anfordern möchten, senden Sie eine E-Mail an bq-vector-search@google.com.
Die Ansicht INFORMATION_SCHEMA.VECTOR_INDEXES
enthält eine Zeile für jeden Vektorindex in einem Dataset.
Erforderliche Berechtigungen
Zum Aufrufen der Metadaten des Vektorindex benötigen Sie die Berechtigung bigquery.tables.get
oder bigquery.tables.list
der Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) für die Tabelle mit dem Index. Jede der folgenden vordefinierten IAM-Rollen enthält mindestens eine der folgenden Berechtigungen:
roles/bigquery.admin
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.dataViewer
roles/bigquery.metadataViewer
roles/bigquery.user
Weitere Informationen zu BigQuery-Berechtigungen finden Sie unter Zugriffssteuerung mit IAM.
Schema
Wenn Sie die AnsichtINFORMATION_SCHEMA.VECTOR_INDEXES
abfragen, wird im Ergebnis jeder Vektorindex in einem Dataset in einer eigenen Zeile dargestellt.
Die Ansicht INFORMATION_SCHEMA.VECTOR_INDEXES
hat das folgende Schema:
Spaltenname | Datentyp | Wert |
---|---|---|
index_catalog |
STRING |
Der Name des Projekts, zu dem das Dataset gehört. |
index_schema |
STRING |
Der Name des Datasets, das den Index enthält. |
table_name |
STRING |
Der Name der Tabelle, für die der Index erstellt wird. |
index_name |
STRING |
Der Name des Vektorindex. |
index_status |
STRING |
Der Status des Index: ACTIVE , PENDING
DISABLEMENT , TEMPORARILY DISABLED oder
PERMANENTLY DISABLED .
|
creation_time |
TIMESTAMP |
Der Zeitpunkt, zu dem der Index erstellt wurde. |
last_modification_time |
TIMESTAMP |
Der Zeitpunkt der letzten Änderung der Indexkonfiguration. Beispiel: Löschen einer indexierten Spalte. |
last_refresh_time |
TIMESTAMP |
Der Zeitpunkt der letzten Indexierung der Tabellendaten. Der Wert NULL bedeutet, dass der Index noch nicht verfügbar ist. |
disable_time |
TIMESTAMP |
Die Zeitpunkt, zu dem der Indexstatus auf DISABLED gesetzt wurde. Der Wert ist NULL , wenn der Indexstatus nicht DISABLED ist. |
disable_reason |
STRING |
Der Grund für die Deaktivierung des Index. NULL , wenn der Indexstatus nicht DISABLED ist. |
DDL |
STRING |
Die DDL-Anweisung (Data Definition Language, Datendefinitionssprache), die zum Erstellen des Index verwendet wird. |
coverage_percentage |
INTEGER |
Der ungefähre Prozentsatz der indexierten Tabellendaten.
0 % bedeutet, dass der Index in einer VECTOR_SEARCH -Abfrage nicht verwendet werden kann, auch wenn einige Daten bereits indexiert wurden.
|
unindexed_row_count |
INTEGER |
Die Anzahl der Zeilen in der Tabelle, die nicht indexiert sind. |
total_logical_bytes |
INTEGER |
Die Anzahl der abrechenbaren logischen Byte für den Index. |
total_storage_bytes |
INTEGER |
Die Anzahl der abrechenbaren Speicherbyte für den Index. |
Bereich und Syntax
Für Abfragen dieser Ansicht muss ein Dataset-Qualifizierer verwendet werden. In der folgenden Tabelle wird der Regionsbereich für diese Ansicht erläutert:
Ansichtsname | Ressourcenbereich | Regionsbereich |
---|---|---|
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.VECTOR_INDEXES |
Dataset-Ebene | Dataset-Standort |
- Optional:
PROJECT_ID
: die ID Ihres Google Cloud-Projekts. Wenn keine Angabe erfolgt, wird das Standardprojekt verwendet. DATASET_ID
: die ID Ihres Datasets. Weitere Informationen finden Sie unter Dataset-Qualifier.
Beispiel
-- Returns metadata for vector indexes in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.VECTOR_INDEXES;
Beispiel
Das folgende Beispiel zeigt alle aktiven Vektorindexe für Tabellen im Dataset my_dataset
, das sich im Projekt my_project
befindet. Sie enthält die Namen, die zum Erstellen verwendeten DDL-Anweisungen und den Deckungsprozentsatz. Ist eine indexierte Basistabelle kleiner als 10 MB, wird der Index nicht ausgefüllt. In diesem Fall ist der Wert coverage_percentage
0.
SELECT table_name, index_name, ddl, coverage_percentage FROM my_project.my_dataset.INFORMATION_SCHEMA.VECTOR_INDEXES WHERE index_status = 'ACTIVE';
Das Ergebnis sieht etwa so aus:
+-------------+-------------+-----------------------------------------------------------------------------------------------+---------------------+ | table_name | index_name | ddl | coverage_percentage | +-------------+-------------+-----------------------------------------------------------------------------------------------+---------------------+ | small_table | myindex1 | CREATE VECTOR INDEX `myindex1` ON `my_project.my_dataset.small_table`(embeddings) | 100 | | | | OPTIONS (distance_type = 'EUCLIDEAN', index_type = 'IVF', ivf_options = '{"numLists": 3}') | | +-------------+-------------+-----------------------------------------------------------------------------------------------+---------------------+ | large_table | myindex2 | CREATE VECTOR INDEX `myindex2` ON `my_project.my_dataset.large_table`(vectors) | 42 | | | | OPTIONS (distance_type = 'EUCLIDEAN', index_type = 'IVF', ivf_options = '{"numLists": 12}') | | +-------------+-------------+-----------------------------------------------------------------------------------------------+---------------------+