בקטע הזה מוסבר איך להגדיר את מכונת Cloud SQL כך שתתמוך באחסון, באינדוקס ובשאילתות של הטמעות וקטורים.
הטמעות וקטורים נתמכות במכונות של מהדורת Cloud SQL Enterprise ומהדורת Cloud SQL Enterprise Plus. יש תמיכה בכל הגרסאות של MySQL 8.0.36 ואילך.
לפני שמתחילים
מוודאים שלחשבון המשתמש שלכם מוקצים התפקידים Cloud SQL Admin ו-Compute Viewer.
מידע נוסף זמין במאמר בנושא תפקידים והרשאות.
הפעלת הפונקציונליות של חיפוש וקטורי באמצעות הדגל של מסד הנתונים
כדי להפעיל תמיכה באחסון הטמעות וקטורים במסד הנתונים ב-Cloud SQL ל-MySQL 8.4 ובגרסאות קודמות, צריך להפעיל את cloudsql_vector דגל מסד הנתונים של MySQL.
אם אתם משתמשים ב-Cloud SQL ל-MySQL 9.7 ואילך, אתם צריכים להפעיל את cloudsql_vectorדגל לניהול מסד נתונים MySQL כדי להוסיף תמיכה ביצירת אינדקסים של וקטורים ובביצוע חיפוש ANN.
gcloud sql instances patch INSTANCE_NAME \
--database-flags=FLAGS
מחליפים את מה שכתוב בשדות הבאים:
- INSTANCE_NAME: השם של המכונה שבה רוצים להפעיל את הפונקציונליות של חיפוש וקטורי.
FLAGS: מגדירים את הדגל הבא של MySQL במופע:
cloudsql_vector: מגדירים את הדגל הזה ל-onכדי להפעיל את הפונקציונליות של חיפוש וקטורי ב-Cloud SQL. ההגדרה הזו מושבתת כברירת מחדל. כשמגדירים את הדגל, הפקודה נראית בערך כך:gcloud sql instances patch my-instance \ --database-flags=cloudsql_vector=onהדגל
cloudsql_vectorהוא סטטי. אחרי שמעדכנים את המכונה באמצעות הדגל (על ידי הפעלה או השבתה שלו), המכונה מופעלת מחדש באופן אוטומטי כדי ששינויי ההגדרה ייכנסו לתוקף.
מידע נוסף על הגדרת פלאגים של מסד נתונים ל-MySQL זמין במאמר הגדרת פלאגים של מסד נתונים.
השבתת הטמעות וקטוריות
לפני שמשביתים את הטמעות הווקטורים במופע, צריך להסיר באופן מפורש את כל אינדקס הווקטורים במופע. במאמר הזה מוסבר איך למצוא רשימה של אינדקסים וקטוריים במופע.
אם משביתים את התמיכה בהטמעות וקטורים, אי אפשר ליצור עמודות חדשות של הטמעות וקטורים אם משתמשים ב-MySQL 8.4 או בגרסה קודמת. אם אתם משתמשים ב-MySQL 9.7 ואילך, לא תוכלו ליצור אינדקסים של וקטורים.
בנוסף, לא תוכלו להשתמש בפונקציה approx_distance לחיפושי וקטורים.
כדי להשבית את התמיכה בהטמעות וקטוריות, מגדירים את הדגל cloudsql_vector לערך off.
אחרי שמגדירים את הדגל הסטטי הזה, המכונה מופעלת מחדש באופן אוטומטי כדי שהשינוי בהגדרה ייכנס לתוקף.
כדי להשבית את התמיכה בהטמעות וקטוריות, מגדירים את הדגל cloudsql_vector לערך off.
לדוגמה:
gcloud sql instances patch INSTANCE_NAME \
--database-flags=cloudsql_vector=off
מחליפים את INSTANCE_NAME בשם המכונה שבה רוצים להשבית את התמיכה בהטמעת וקטורים.