Vista VECTOR_INDEXES
La vista INFORMATION_SCHEMA.VECTOR_INDEXES contiene una fila por cada índice de vector de un conjunto de datos.
Permisos obligatorios
Para ver los metadatos del índice vectorial, necesitas el permiso de gestión de identidades y accesos (IAM) bigquery.tables.get o bigquery.tables.list en la tabla con el índice. Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye al menos uno de estos permisos:
roles/bigquery.adminroles/bigquery.dataEditorroles/bigquery.dataOwnerroles/bigquery.dataViewerroles/bigquery.metadataViewerroles/bigquery.user
Para obtener más información sobre los permisos de BigQuery, consulta Control de acceso con gestión de identidades y accesos.
Esquema
Cuando consultas la vistaINFORMATION_SCHEMA.VECTOR_INDEXES, los resultados de la consulta
contienen una fila por cada índice vectorial de un conjunto de datos.
La vista INFORMATION_SCHEMA.VECTOR_INDEXES tiene el siguiente esquema:
| Nombre de la columna | Tipo de datos | Valor | 
|---|---|---|
index_catalog | 
      STRING | 
      Nombre del proyecto que contiene el conjunto de datos. | 
index_schema | 
      STRING | 
      Nombre del conjunto de datos que contiene el índice. | 
table_name | 
      STRING | 
      Nombre de la tabla en la que se crea el índice. | 
index_name | 
      STRING | 
      El nombre del índice vectorial. | 
index_status | 
      STRING | 
      Estado del índice: ACTIVE, PENDING
          DISABLEMENT, TEMPORARILY DISABLED o PERMANENTLY DISABLED.
          
  | 
    
creation_time | 
      TIMESTAMP | 
      La hora en la que se creó el índice. | 
last_modification_time | 
      TIMESTAMP | 
      La última vez que se modificó la configuración del índice. Por ejemplo, eliminar una columna indexada. | 
last_refresh_time | 
      TIMESTAMP | 
      La última vez que se indexaron los datos de la tabla. Un valor NULL
          significa que el índice aún no está disponible. | 
    
disable_time | 
      TIMESTAMP | 
      La hora a la que se definió el estado del índice como DISABLED. El valor es NULL si el estado del índice no es DISABLED. | 
    
disable_reason | 
      STRING | 
      Motivo por el que se ha inhabilitado el índice. NULL si el estado del índice no es DISABLED. | 
    
DDL | 
      STRING | 
      La instrucción del lenguaje de definición de datos (DDL) usada para crear el índice. | 
coverage_percentage | 
      INTEGER | 
      
      El porcentaje aproximado de datos de la tabla que se ha indexado.
      Un valor del 0% significa que el índice no se puede usar en una consulta VECTOR_SEARCH, aunque ya se hayan indexado algunos datos.
       | 
    
unindexed_row_count | 
      INTEGER | 
      Número de filas de la tabla que no se han indexado. | 
total_logical_bytes | 
      INTEGER | 
      Número de bytes lógicos facturables del índice. | 
total_storage_bytes | 
      INTEGER | 
      Número de bytes de almacenamiento facturables del índice. | 
Ámbito y sintaxis
Las consultas de esta vista deben tener un calificador de conjunto de datos. En la siguiente tabla se explica el ámbito de la región de esta vista:
| Nombre de la vista | Ámbito de los recursos | Ámbito de la región | 
|---|---|---|
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.VECTOR_INDEXES | 
  Nivel del conjunto de datos | Ubicación del conjunto de datos | 
- 
  Opcional: 
PROJECT_ID: el ID de tu Cloud de Confiance proyecto. Si no se especifica, se usa el proyecto predeterminado. - 
  
DATASET_ID: el ID de tu conjunto de datos. Para obtener más información, consulta Calificador de conjunto de datos. 
Ejemplo
-- Returns metadata for vector indexes in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.VECTOR_INDEXES;
Ejemplo
En el siguiente ejemplo se muestran todos los índices vectoriales activos de las tablas del conjunto de datos my_dataset, ubicado en el proyecto my_project. Incluye sus nombres, las instrucciones DDL usadas para crearlos y su porcentaje de cobertura. Si una tabla base indexada tiene menos de 10 MB, su índice no se rellena, en cuyo caso el valor de coverage_percentage es 0.
SELECT table_name, index_name, ddl, coverage_percentage FROM my_project.my_dataset.INFORMATION_SCHEMA.VECTOR_INDEXES WHERE index_status = 'ACTIVE';
El resultado es similar al siguiente:
+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+
| 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"}') |                     |
+------------+------------+-------------------------------------------------------------------------------------------------+---------------------+