Bahasa Definisi Data (DDL) Cloud SQL

Halaman ini menentukan sintaksis untuk ekstensi Cloud SQL ke pernyataan bahasa definisi data MySQL (DDL).

Pernyataan VECTOR

Bagian ini berisi informasi tentang pernyataan VECTOR.

CREATE VECTOR INDEX

Membuat indeks vektor.

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

Parameter

  • USING SCANN: wajib diisi. Jenis indeks yang akan digunakan saat membuat indeks vektor. Algoritma ini membuat indeks ScaNN. SCANN adalah satu-satunya nilai yang didukung. Anda tidak dapat mengubah parameter ini.
  • QUANTIZER: opsional. Parameter ini memetakan vektor berdimensi tinggi ke representasi yang dikompresi. SQ8 adalah satu-satunya nilai yang didukung. Anda tidak dapat mengubah parameter ini.
  • NUM_LEAVES: opsional. Menentukan jumlah partisi (daun) yang akan dibuat. Hanya ubah setelan ini dari setelan default-nya jika Anda memiliki pemahaman yang baik tentang penelusuran ANN dan set data Anda. Jumlah yang ditentukan tidak boleh lebih besar dari jumlah penyematan di tabel dasar.
  • DISTANCE_MEASURE: wajib diisi. Formula matematika yang menghitung kemiripan dua vektor. Anda harus menetapkan pengukuran jarak yang sama dalam parameter ini dengan jarak dalam opsi penelusuran approx_distance. Lateral yang didukung adalah:
    • L2_SQUARED
    • COSINE
    • DOT_PRODUCT

Contoh

Contoh berikut menunjukkan cara membuat indeks vektor pada tabel table_name

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

ALTER TABLE

Menambahkan indeks vektor ke tabel yang ada. Penelusuran vektor memerlukan SCANN sebagai opsi indeks dan jenis kuantisasi harus 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

Parameter

  • USING SCANN: wajib diisi. Jenis indeks yang akan digunakan saat membuat indeks vektor. Algoritma ini membuat indeks ScaNN. SCANN adalah satu-satunya nilai yang didukung. Anda tidak dapat mengubah parameter ini.
  • QUANTIZER: opsional. Parameter ini memetakan vektor berdimensi tinggi ke representasi yang dikompresi. SQ8 adalah satu-satunya nilai yang didukung. Anda tidak dapat mengubah parameter ini.
  • NUM_LEAVES: opsional. Menentukan jumlah partisi (daun) yang akan dibuat. Hanya ubah setelan ini dari setelan default-nya jika Anda memiliki pemahaman yang baik tentang penelusuran ANN dan set data Anda. Jumlah yang ditentukan tidak boleh lebih besar dari jumlah penyematan di tabel dasar.
  • DISTANCE_MEASURE: wajib diisi. Formula matematika yang menghitung kemiripan dua vektor. Anda harus menetapkan pengukuran jarak yang sama dalam parameter ini dengan jarak dalam opsi penelusuran approx_distance. Lateral yang didukung adalah:
    • L2_SQUARED
    • COSINE
    • DOT_PRODUCT

Contoh

Contoh berikut menunjukkan cara menambahkan indeks vektor pada tabel t1.

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

Langkah berikutnya