Visualizzazione VECTOR_INDEXES

La vista INFORMATION_SCHEMA.VECTOR_INDEXES contiene una riga per ogni indice di vettore in un set di dati.

Autorizzazioni obbligatorie

Per vedere i metadati dell'indice vettoriale, è necessario il file bigquery.tables.get o bigquery.tables.list Identity and Access Management (IAM) autorizzazione nella tabella con l'indice. Ciascuno dei seguenti valori predefiniti I ruoli IAM includono almeno una di queste autorizzazioni:

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

Per ulteriori informazioni sulle autorizzazioni BigQuery, consulta Controllo dell'accesso con IAM.

Schema

Quando esegui una query sulla visualizzazione INFORMATION_SCHEMA.VECTOR_INDEXES, i risultati della query contengono una riga per ogni indice di vettore in un set di dati.

La vista INFORMATION_SCHEMA.VECTOR_INDEXES ha lo schema seguente:

Nome colonna Tipo di dati Valore
index_catalog STRING Il nome del progetto contenente il set di dati.
index_schema STRING Il nome del set di dati che contiene l'indice.
table_name STRING Il nome della tabella in cui viene creato l'indice.
index_name STRING Il nome dell'indice del vettore.
index_status STRING Lo stato dell'indice: ACTIVE, PENDING DISABLEMENT, TEMPORARILY DISABLED o PERMANENTLY DISABLED.
  • ACTIVE indica che l'indice è utilizzabile o è in fase di creazione. Consulta coverage_percentage per controllare lo stato di avanzamento della creazione dell'indice.
  • PENDING DISABLEMENT indica che le dimensioni totali delle tabelle indicizzate superano il limite della tua organizzazione. L'indice è in coda per l'eliminazione. In questo stato, l'indice è utilizzabile query di ricerca vettoriale e ti viene addebitato l'importo per l'indice vettoriale archiviazione.
  • TEMPORARILY DISABLED indica che le dimensioni totali delle tabelle indicizzate superano il limite della tua organizzazione oppure che la tabella indicizzata è inferiore a 10 MB. In questo stato, l'indice non viene utilizzato nelle query di ricerca vettoriale e non ti viene addebitato per l'archiviazione degli indici vettoriali.
  • PERMANENTLY DISABLED indica che è stata apportata una modifica dello schema incompatibile alla tabella indicizzata.
creation_time TIMESTAMP L'ora in cui è stato creato l'indice.
last_modification_time TIMESTAMP L'ultima volta che la configurazione dell'indice è stata modificata. Ad esempio, l'eliminazione di una colonna indicizzata.
last_refresh_time TIMESTAMP L'ultima volta che i dati della tabella sono stati indicizzati. Un valore NULL indica che l'indice non è ancora disponibile.
disable_time TIMESTAMP L'ora in cui lo stato dell'indice è stato impostato su DISABLED. Il valore è NULL se lo stato dell'indice non è DISABLED.
disable_reason STRING Il motivo per cui l'indice è stato disabilitato. NULL se lo stato dell'indice non è DISABLED.
DDL STRING L'istruzione DDL (Data Definition Language) utilizzata per creare di Google.
coverage_percentage INTEGER La percentuale approssimativa di dati della tabella che sono stati indicizzati. 0% significa che l'indice non è utilizzabile in una query VECTOR_SEARCH, anche se alcuni dati sono già stati indicizzati.
unindexed_row_count INTEGER Il numero di righe nella tabella che non sono state indicizzate.
total_logical_bytes INTEGER Il numero di byte logici fatturabili per l'indice.
total_storage_bytes INTEGER Il numero di byte di spazio di archiviazione fatturabili per l'indice.

Ambito e sintassi

Le query su questa vista devono avere un qualificatore del set di dati. La tabella seguente illustra l'ambito della regione per questa visualizzazione:

Visualizza nome Ambito risorsa Ambito regione
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.VECTOR_INDEXES A livello di set di dati Posizione del set di dati

Sostituisci quanto segue:

  • (Facoltativo) PROJECT_ID: l'ID del tuo progetto Google Cloud. Se non specificato, viene utilizzato il progetto predefinito.

Esempio

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

Esempio

L'esempio seguente mostra tutti gli indici di vettori attivi nelle tabelle del set di datimy_dataset, nel progetto my_project. Sono inclusi i nomi, le istruzioni DDL utilizzate per crearli e la percentuale di copertura. Se tabella di base indicizzata è inferiore a 10 MB, il relativo indice non viene compilato, In questo caso il valore di coverage_percentage è 0.

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

Il risultato è simile al seguente:

+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+
| 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"}') |                     |
+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+