שימוש ב-BigQuery Graph וב-Spanner Graph

במאמר הזה אנחנו משווים בין BigQuery Graph לבין Spanner Graph כדי לעזור לכם להחליט באיזה פתרון גרפים כדאי להשתמש.

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

מתי כדאי להשתמש ב-BigQuery Graph וב-Spanner Graph

‫BigQuery Graph ו-Spanner Graph משרתים סוגים שונים של עומסי עבודה (workloads) של גרפים. ‫BigQuery Graph מיועד לניתוח מעמיק בקנה מידה גדול, ו-Spanner Graph מיועד לפעולות בזמן אמת.

BigQuery Graph

‫BigQuery Graph מותאם להרצת שאילתות מורכבות על גרפים גדולים. אתם יכולים לנתח דפוסים גלובליים, לזהות מגמות היסטוריות ולחשוף קשרים נסתרים במערכי נתונים עצומים.

המאפיינים הטכניים שלו כוללים ביצועים אופטימליים בהיקף גדול, עיבוד מקביל, שאילתות מורכבות על חלק משמעותי מהגרף, שימוש אינטנסיבי ב-Compute וצבירות מורכבות.

תרחישי שימוש נפוצים:

  • זיהוי תרמיות במצב אופליין: מציאת משתמשים חשודים אחרים שמחוברים לתרמיות מוכרות ברשת כולה בתרשים לקוחות, בתוך כמה דרגות של חיבורים שמשתפים את אותה כתובת אימייל, מספר טלפון או כתובת. במדריך Spanner & BigQuery: Real-Time Fraud Defense Shield מוסבר איך לזהות הונאות.
  • אופטימיזציה של שרשרת האספקה: בניית תרשים של רשימת החומרים שמייצג את הקשרים בין מוצרים סופיים לבין הרכיבים שלהם לצורך תכנון המלאי. חישוב תאריכי מסירה של מוצרים והבנת זמינות החומרים על ידי ניתוח מוצרים ברמה העליונה עד לרכיבי הבסיס שלהם בכל קווי המוצרים.
  • פילוח של נתוני הלקוחות: אפשר ליצור גרף של נתוני הלקוחות כדי להבין את התהליכים שהלקוחות עוברים בנוגע למינויים למוצרים, להמרות ולנטישת המינוי. בעזרת הנתונים האלה אפשר לזהות את הסיבות לנטישת הלקוחות, לזהות דפוסי שימוש ולהשתמש בתרשים לפילוח לקוחות ולטירגוט קהלים בכלל הקהל.

Spanner Graph

‫Spanner Graph מיועד לפעולות בזמן אמת. הוא מותאם לאפליקציות שצריכות לבצע שאילתות של k-hop שנוגעות בקבוצה קטנה של רכיבי גרף באופן מיידי, לזהות הונאה תוך אלפיות השנייה, לבצע מעקב אחר מקורות לזיהוי תלות ואימות זהות ולהציג המלצות בזמן אמת.

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

תרחישי שימוש נפוצים:

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

איך BigQuery Graph ו-Spanner Graph פועלים יחד

‫BigQuery Graph ו-Spanner Graph פועלים יחד כדי לספק פתרון מקיף. לדוגמה, בתרחיש שימוש של תצוגת 360 מעלות של לקוח:

  1. תובנות בזמן אמת: נציג שירות לקוחות משתמש ב-Spanner Graph כדי לטפל בתלונות של משתמשים לגבי משלוח של מוצר שגוי, על סמך נתונים סטטיסטיים בזמן אמת של רכישות ומשלוחים.
  2. שכפול או שאילתה: אפשר לשכפל נתונים מ-Spanner ל-BigQuery באמצעות Spanner Change Streams בלי לבצע חילוץ, טרנספורמציה וטעינה (ETL) מורכבים, או להריץ שאילתות על נתונים ב-Spanner ישירות מ-BigQuery באמצעות BigQuery federated queries.
  3. ניתוח תבניות: מדען נתונים משתמש ב-BigQuery Graph כדי לזהות 'נקודה חמה של נטישה' באותם נתונים, ולסמן את הלקוח כ'בסיכון'.
  4. לולאת משוב: התוויות 'בסיכון' מועברות ל-Spanner Graph עם תמיכה בהפקה, שינוי וטעינה (ETL) הפוכים כדי ליצור קוד שובר ללקוח הזה ולמנוע נטישה.

העברת נתונים בין BigQuery Graph ל-Spanner Graph

אתם יכולים להעביר נתונים בין Spanner Graph לבין BigQuery Graph בהתאם לדרישות של עומס העבודה שלכם:

  • העברת נתונים של ETL: כדי להעביר נתונים מ-Spanner ל-BigQuery לצורך שאילתות אנליטיות, משתמשים בתבנית Dataflow.

  • הפוך ETL: אפשר להריץ שאילתות על נתוני Spanner ישירות מ-BigQuery Graph, אבל יכולים להיות תרחישים שבהם תצטרכו להעביר נתונים מ-BigQuery ל-Spanner Graph. משתמשים בהצהרת ה-SQL‏ EXPORT DATA. מידע נוסף זמין במאמר הסבר על צינור ה-ETL ההפוך.

השוואה בין תכונות

בטבלה הבאה מפורטות התכונות לפי המוצר שהן מותאמות לו בצורה הכי טובה:

תכונה גרף BigQuery (אופליין/אצווה) ‫Spanner Graph (אונליין/בזמן אמת)
מודל גרף, שאילתה והמחשה מודלים מאוחדים של גרפים ושפת שאילתות גרפים, והכול מבוסס על GoogleSQL, חלק מתקן ISO SQL. אותו ממשק להמחשה של תרשים. מודלים מאוחדים של גרפים ושפת שאילתות גרפים, והכול מבוסס על GoogleSQL, חלק מתקן ISO SQL. אותו ממשק להמחשה של תרשים.
עומס עבודה ראשי אופליין (באצווה): צבירות של מערכי נתונים גדולים. אונליין (בזמן אמת): נפח גבוה של קריאות/כתיבות עם זמן אחזור נמוך.
זמן האחזור של השאילתה שניות עד שעות. אופטימיזציה לסריקה של טרה-בייט או פטה-בייט. אלפיות השנייה לשניות. חשוב במיוחד לאפליקציות שפונות למשתמשים.
מבנה השאילתה גרף גלובלי או מלא: "מי מגיע לקהל של יותר מ-5,000 אנשים?" מקומי או שכונתי: "Who are friends with my friends, but aren't in my immediate circle?"
שינוי גודל בסדר גודל של פטה-בייט, כמעט ללא הגבלה, מותאם לנתונים היסטוריים בקנה מידה גדול. ניתן להרחבה אופקית, עם יכולת התאמה כמעט בלתי מוגבלת, מותאם לנתונים פעילים.
עדכניות הנתונים כמעט בזמן אמת או באצווה. אפשר לגשת לנתונים ממקורות שונים (לדוגמה, נתוני Spanner Graph באמצעות Data Boost ל-Spanner,‏ Bigtable,‏ Cloud Storage או Amazon S3). עקביות חזקה בזמן אמת.
הזנת נתונים אגמי נתונים, יומנים היסטוריים, נתוני עסקאות שהועברו לארכיון. שידורים חיים של אפליקציות, אינטראקציות של משתמשים.
העברת נתונים ‫Spanner ל-BigQuery (חילוץ קדימה, טרנספורמציה וטעינה (ETL)) באמצעות תבניות מוכנות מראש (חילוץ קבוצתי, סטרימינג). ‫BigQuery ל-Spanner (ETL הפוך) באמצעות EXPORT_DATA. איחוד שאילתות (zero-ETL) עם סכימה חיצונית. ‫Spanner ל-BigQuery (חילוץ קדימה, טרנספורמציה וטעינה (ETL)) באמצעות תבניות מוכנות מראש (חילוץ קבוצתי, סטרימינג). ‫BigQuery ל-Spanner (ETL הפוך) באמצעות EXPORT_DATA. איחוד שאילתות (zero-ETL) עם סכימה חיצונית.

המאמרים הבאים