סקירה כללית על שילוב של Spanner עם Vertex AI

בדף הזה מובאת סקירה כללית על השילוב של Spanner עם Vertex AI. האינטגרציה של Spanner עם Vertex AI פועלת עם מסדי נתונים של GoogleSQL ו-PostgreSQL.

האינטגרציה של Spanner עם Vertex AI מאפשרת לכם לגשת למודלים של סיווג ורגרסיה של ML שמתארחים ב-Vertex AI דרך הממשק של GoogleSQL ו-PostgreSQL. השילוב הזה מאפשר לשלב בצורה חלקה את הפונקציונליות של חיזויים מבוססי-ML עם פעולות כלליות של גישה לנתוני Spanner שמתבצעות באמצעות שאילתות DQL/DML.

היתרונות של שילוב Spanner עם Vertex AI

ליצירת תחזיות של ML באמצעות שילוב של Spanner עם Vertex AI יש יתרונות רבים בהשוואה לגישה שבה מתבצעת גישה לנתוני Spanner וגישה לנקודת הקצה של Vertex AI בנפרד:

  • ביצועים:
    • חביון טוב יותר: האינטגרציה של Spanner Vertex AI מתקשרת ישירות עם שירות Vertex AI, וכך מבטלת נסיעות הלוך ושוב נוספות בין צומת מחשוב שמריץ את הלקוח של Spanner לבין שירות Vertex AI.
    • תפוקה או מקביליות טובות יותר: השילוב של Spanner עם Vertex AI פועל על בסיס התשתית המבוזרת לעיבוד שאילתות של Spanner, שתומכת בהרצת שאילתות במקביל.
  • חוויית משתמש:
    • היכולת להשתמש בממשק SQL יחיד, פשוט, עקבי ומוכר כדי להקל על תרחישי טרנספורמציה של נתונים ועל תרחישי שירות של למידת מכונה ברמת המדרגיות של Spanner, מורידה את מחסום הכניסה ללמידת מכונה ומאפשרת חוויית משתמש חלקה יותר.
  • עלויות:
    • שילוב של Spanner עם Vertex AI משתמש ביכולת החישוב של Spanner כדי למזג את התוצאות של חישובי למידת מכונה ושל ביצוע שאילתות SQL, וכך לא צריך להקצות יכולת חישוב נוספת (לדוגמה, ב-Compute Engine או ב-Google Kubernetes Engine) לצורך הזה.

איך פועל השילוב של Spanner עם Vertex AI?

האינטגרציה של Spanner עם Vertex AI לא מארחת מודלים של ML, אלא מסתמכת על התשתית של שירות Vertex AI. לא צריך לאמן מודל באמצעות Vertex AI כדי להשתמש בו בשילוב עם Spanner Vertex AI, אבל צריך לפרוס אותו לנקודת קצה של Vertex AI.

כדי לאמן מודלים על נתונים שמאוחסנים ב-Spanner, אפשר להשתמש באפשרויות הבאות:

האינטגרציה של Spanner עם Vertex AI מרחיבה את הפונקציות הבאות לשימוש במודלים של למידת מכונה:

  • יצירת חיזויים של למידת מכונה על ידי קריאה למודל באמצעות SQL בנתוני Spanner. אפשר להשתמש במודל מ-Vertex AI Model Garden או במודל שנפרס ב-Vertex AI endpoint.

  • יצירת הטבעות טקסט כדי שמודל שפה גדול (LLM) יתרגם הנחיות טקסט למספרים. מידע נוסף על הטמעות זמין במאמר יצירת הטמעות של טקסט.

שימוש בפונקציות של שילוב Spanner Vertex AI

אפשר להשתמש במודל בשילוב של Spanner עם Vertex AI כדי ליצור תחזיות או הטמעות של טקסט בקוד SQL באמצעות הפונקציות ML Predict. הפונקציות האלה הן:

GoogleSQL

אפשר להשתמש בפונקציית החיזוי הבאה של ML ב-GoogleSQL:

ML.PREDICT

כדי להשתמש במודל עם הפונקציה ML.PREDICT, צריך לרשום אותו באמצעות הצהרת ה-DDL‏ CREATE MODEL.

אפשר גם להשתמש ב-SAFE.ML.PREDICT כדי להחזיר null במקום שגיאה בתחזיות. האפשרות הזו שימושית במקרים שבהם מריצים שאילתות גדולות, ונסבלות תחזיות שנכשלו.

PostgreSQL

אפשר להשתמש בפונקציית החיזוי הבאה של ML עבור PostgreSQL:

spanner.ML_PREDICT_ROW

כדי להשתמש בפונקציות, אפשר לבחור מודל מתוך Vertex AI Model Garden או להשתמש במודל שפרסתם ב-Vertex AI.

מידע נוסף על פריסת מודל לנקודת קצה ב-Vertex AI זמין במאמר פריסת מודל לנקודת קצה.

למידע נוסף על השימוש בפונקציות האלה כדי ליצור חיזוי של למידת מכונה, אפשר לעיין במאמר יצירת חיזויים של למידת מכונה באמצעות SQL.

מידע נוסף על השימוש בפונקציות האלה ליצירת הטמעות של טקסט זמין במאמר קבלת הטמעות של טקסט.

תמחור

אין חיובים נוספים מ-Spanner כשמשתמשים בו עם שילוב Spanner Vertex AI. עם זאת, יש חיובים פוטנציאליים אחרים שקשורים לתכונה הזו:

  • אתם משלמים את התעריפים הרגילים על חיזוי אונליין של Vertex AI. החיוב הכולל תלוי בסוג המודל שבו אתם משתמשים. יש סוגים של מודלים עם תעריף קבוע לשעה, בהתאם לסוג המכונה ולמספר הצמתים שבהם משתמשים. יש סוגים מסוימים של מודלים שבהם התעריפים הם לכל שיחה. מומלץ לפרוס את האפשרות השנייה בפרויקט ייעודי שבו הגדרתם מכסות חיזוי מפורשות.

  • משלמים את התעריפים הרגילים על העברת נתונים בין Spanner לבין Vertex AI. החיוב הכולל תלוי באזור שבו מתארח השרת שמבצע את השאילתה ובאזור שבו מתארחת נקודת הקצה (endpoint) שאליה מתבצעת הקריאה. כדי לצמצם את החיובים, כדאי לפרוס את נקודות הקצה של Vertex AI באותו אזור שבו נמצא מופע Spanner. כשמשתמשים בהגדרות של מופעים בכמה אזורים או בכמה נקודות קצה של Vertex AI, צריך לפרוס את נקודות הקצה באותה יבשת.

SLA

בגלל שהזמינות של חיזוי אונליין ב-Vertex AI נמוכה יותר, צריך להגדיר כראוי את מודלי ה-ML של Spanner כדי לשמור על זמינות גבוהה של Spanner בזמן השימוש בשילוב של Spanner עם Vertex AI:

  1. מודלים של למידת מכונה ב-Spanner צריכים להשתמש בכמה נקודות קצה של Vertex AI בבקאנד כדי לאפשר יתירות כשל.
  2. נקודות הקצה של Vertex AI צריכות לעמוד בדרישות של הסכם רמת השירות (SLA) של Vertex AI.
  3. נקודות הקצה של Vertex AI צריכות לספק מספיק קיבולת כדי לטפל בתנועה הנכנסת.
  4. נקודות הקצה של Vertex AI צריכות להשתמש באזורים נפרדים שקרובים למסד הנתונים של Spanner כדי להימנע מהפסקות חשמל אזוריות.
  5. כדי למנוע בעיות במכסות החיזוי לכל פרויקט, מומלץ להשתמש בפרויקטים נפרדים לנקודות קצה של Vertex AI.

מספר נקודות הקצה המיותרות של Vertex AI תלוי בהסכם רמת השירות שלהן, וגם במספר השורות בשאילתות Spanner:

הסכם רמת השירות (SLA) של Spanner הסכם רמת שירות (SLA) של Vertex AI שורה אחת ‫10 שורות ‫100 שורות ‫1,000 שורות
99.99% 99.9% 2 2 2 3
99.99% 99.5% 2 3 3 4
99.999% 99.9% 2 2 3 3
99.999% 99.5% 3 3 4 4

נקודות קצה של Vertex AI לא צריכות לארח בדיוק את אותו מודל. מומלץ להגדיר את מודל ה-ML של Spanner כך שנקודת הקצה הראשונה שלו תהיה מודל ראשי, מורכב ועתיר חישובים. נקודות קצה נוספות למעבר אוטומטי לגיבוי יכולות להפנות למודלים פשוטים יותר שדורשים פחות משאבי מחשוב, יכולים להתרחב בצורה טובה יותר ולספוג עליות פתאומיות בתנועה.

מגבלות

  • הקלט והפלט של המודל חייבים להיות אובייקט JSON.

תאימות

Assured Workloads לא תומך ב-Vertex AI Prediction API. הפעלת הגבלה על השימוש במשאבים משביתה את Vertex AI API, ולמעשה גם את תכונת השילוב של Spanner עם Vertex AI.

בנוסף, מומלץ ליצור גבולות גזרה של VPC Service Controls כדי לוודא שמסדי הנתונים של הייצור לא יכולים להתחבר לנקודות הקצה של Vertex AI בפרויקטים שאינם פרויקטים של ייצור, שאולי אין להם את הגדרת התאימות המתאימה.