En esta página se define la sintaxis de las extensiones de Cloud SQL para las instrucciones del lenguaje de definición de datos (DDL) de MySQL.
Instrucciones VECTOR
En esta sección se incluye información sobre las instrucciones VECTOR
.
CREATE VECTOR INDEX
Crea un índice vectorial.
CREATE VECTOR INDEX index_name
[opt_index_type]
ON table_name (column_name)
[index_options]
where opt_index_type is:
| USING SCANN
where index_option is :
USING SCANN
| [QUANTIZER=SQ8]
| [NUM_LEAVES=int_value]
| DISTANCE_MEASURE=L2_SQUARED|DOT_PRODUCT|COSINE
Parámetros
USING SCANN
: obligatorio. El tipo de índice que se va a usar al crear el índice de vector. Este algoritmo crea un índice ScaNN.SCANN
es el único valor admitido. No puedes modificar este parámetro.QUANTIZER
: opcional. Este parámetro asigna un vector de alta dimensión a una representación comprimida.SQ8
es el único valor admitido. No puedes modificar este parámetro.NUM_LEAVES
: opcional. Especifica cuántas particiones (hojas) se van a crear. Solo debes cambiar este ajuste de su valor predeterminado si conoces bien la búsqueda de ANN y tu conjunto de datos. El número especificado no puede ser mayor que el número de inserciones de la tabla base.DISTANCE_MEASURE
: obligatorio. Fórmula matemática que calcula la similitud de dos vectores. Debe definir la misma medida de distancia en este parámetro que la distancia de las opciones de búsqueda deapprox_distance
. Los laterales admitidos son:L2_SQUARED
COSINE
DOT_PRODUCT
Ejemplo
En el siguiente ejemplo se muestra cómo crear un índice vectorial en la tabla table_name
.
CREATE
VECTOR INDEX index1
ON table_name(vector_column_name)
USING SCANN QUANTIZER = SQ8 DISTANCE_MEASURE = l2_squared;
ALTER TABLE
Añade un índice vectorial a una tabla. Las búsquedas vectoriales requieren SCANN
como opción de índice y el tipo de cuantización debe ser SQ8
.
ALTER TABLE table_name
ADD VECTOR INDEX index_name(key_part)[index_option];
WHERE key_part is:{ _col_name_[(_length_)] | (_expr_) }
WHERE
index_option
is:USING
SCANN
| [QUANTIZER = SQ8]
| [NUM_LEAVES = int_value]
| DISTANCE_MEASURE
= L2_SQUARED | DOT_PRODUCT | COSINE
Parámetros
USING SCANN
: obligatorio. El tipo de índice que se va a usar al crear el índice de vector. Este algoritmo crea un índice ScaNN.SCANN
es el único valor admitido. No puedes modificar este parámetro.QUANTIZER
: opcional. Este parámetro asigna un vector de alta dimensión a una representación comprimida.SQ8
es el único valor admitido. No puedes modificar este parámetro.NUM_LEAVES
: opcional. Especifica cuántas particiones (hojas) se van a crear. Solo debes cambiar este ajuste de su valor predeterminado si conoces bien la búsqueda de ANN y tu conjunto de datos. El número especificado no puede ser mayor que el número de inserciones de la tabla base.DISTANCE_MEASURE
: obligatorio. Fórmula matemática que calcula la similitud de dos vectores. Debe definir la misma medida de distancia en este parámetro que la distancia de las opciones de búsqueda deapprox_distance
. Los laterales admitidos son:L2_SQUARED
COSINE
DOT_PRODUCT
Ejemplo
En el siguiente ejemplo se muestra cómo añadir un índice vectorial en la tabla t1
.
ALTER TABLE t1 ADD VECTOR INDEX index1(j)
USING SCANN QUANTIZER = SQ8 DISTANCE_MEASURE = l2_squared;
Siguientes pasos
- Consulta el resumen sobre la búsqueda de vectores en Cloud SQL.
- Consulta cómo habilitar e inhabilitar las inserciones vectoriales en tu instancia.
- Consulta cómo generar incrustaciones vectoriales.
- Consulta cómo crear índices vectoriales.
- Consulta cómo realizar búsquedas en incrustaciones de vectores.