Linguagem de definição de dados (DDL) do Cloud SQL

Esta página define a sintaxe das extensões do Cloud SQL para as instruções de linguagem de definição de dados (DDL) do MySQL.

Instruções VECTOR

Esta seção contém informações sobre instruções VECTOR.

CREATE VECTOR INDEX

Cria um índice de vetor.

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: obrigatório. O tipo de índice a ser usado ao criar o índice de vetores. Esse algoritmo cria um índice ScaNN. SCANN é o único valor aceito. Não é possível modificar esse parâmetro.
  • QUANTIZER: opcional. Esse parâmetro mapeia um vetor de alta dimensão para uma representação compactada. SQ8 é o único valor aceito. Não é possível modificar esse parâmetro.
  • NUM_LEAVES: opcional. Especifica quantas partições (folhas) serão criadas. Só mude essa configuração padrão se você tiver um bom entendimento da pesquisa de ANN e do seu conjunto de dados. O número especificado não pode ser maior que o número de incorporações na tabela base.
  • DISTANCE_MEASURE: obrigatório. Uma fórmula matemática que calcula a similaridade de dois vetores. É necessário definir a mesma medida de distância neste parâmetro como a distância nas opções de pesquisa approx_distance. As laterais compatíveis são:
    • L2_SQUARED
    • COSINE
    • DOT_PRODUCT

Exemplo

O exemplo a seguir mostra como criar um índice vetorial na tabela table_name.

CREATE
  VECTOR INDEX index1
ON table_name(vector_column_name)
USING SCANN QUANTIZER = SQ8 DISTANCE_MEASURE = l2_squared;

ALTER TABLE

Adiciona um índice de vetor a uma tabela. As pesquisas de vetor exigem SCANN como a opção de índice, e o tipo de quantização precisa 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: obrigatório. O tipo de índice a ser usado ao criar o índice de vetores. Esse algoritmo cria um índice ScaNN. SCANN é o único valor aceito. Não é possível modificar esse parâmetro.
  • QUANTIZER: opcional. Esse parâmetro mapeia um vetor de alta dimensão para uma representação compactada. SQ8 é o único valor aceito. Não é possível modificar esse parâmetro.
  • NUM_LEAVES: opcional. Especifica quantas partições (folhas) serão criadas. Só mude essa configuração padrão se você tiver um bom entendimento da pesquisa de ANN e do seu conjunto de dados. O número especificado não pode ser maior que o número de incorporações na tabela base.
  • DISTANCE_MEASURE: obrigatório. Uma fórmula matemática que calcula a similaridade de dois vetores. É necessário definir a mesma medida de distância neste parâmetro como a distância nas opções de pesquisa approx_distance. As laterais compatíveis são:
    • L2_SQUARED
    • COSINE
    • DOT_PRODUCT

Exemplo

O exemplo a seguir mostra como adicionar um índice de vetor à tabela t1.

ALTER TABLE t1 ADD VECTOR INDEX index1(j)
USING SCANN QUANTIZER = SQ8 DISTANCE_MEASURE = l2_squared;

A seguir