יעד ב-BigQuery

בדף הזה יש סקירה כללית על יעד BigQuery. במאמר הזה מתואר אופן הכתיבה ומפורטות המגבלות הידועות של Datastream כשמשכפלים נתונים ל-BigQuery.

איך פועל הכתיבה

  • הגודל המקסימלי של אירוע כשמבצעים סטרימינג של נתונים ל-BigQuery הוא 20MB.

  • כשמגדירים את הזרם, אפשר לבחור את האופן שבו Datastream כותב את נתוני השינויים ל-BigQuery. מידע נוסף זמין במאמר בנושא הגדרת מצב כתיבה.

מטא-נתונים של טבלה

אפליקציית Datastream מוסיפה לכל טבלה שנכתבת ליעד ב-BigQuery עמודה STRUCT בשם datastream_metadata.

מצב כתיבה של מיזוג

אם לטבלה יש מפתח ראשי במקור, העמודה מכילה את השדות הבאים:

  • UUID: סוג הנתונים של השדה הזה הוא STRING.
  • SOURCE_TIMESTAMP: סוג הנתונים של השדה הזה הוא INTEGER.

אם לטבלה אין מפתח ראשי, העמודה מכילה שדה נוסף: IS_DELETED. השדה הזה הוא מסוג הנתונים BOOLEAN, והוא מציין אם הנתונים ש-Datastream מעביר ליעד משויכים לפעולה DELETE במקור. טבלאות ללא מפתחות ראשיים הן רק להוספה.

מצב כתיבה של הוספה בלבד

העמודה datastream_metadata מכילה את אותם שדות לטבלאות עם מפתחות ראשיים ולטבלאות בלי מפתחות ראשיים:

  • UUID: סוג הנתונים של השדה הזה הוא STRING.
  • SOURCE_TIMESTAMP: סוג הנתונים של השדה הזה הוא INTEGER.
  • CHANGE_SEQUENCE_NUMBER: סוג הנתונים של השדה הזה הוא STRING. זהו מספר סידורי פנימי שמשמש את Datastream לכל אירוע שינוי.
  • CHANGE_TYPE: סוג הנתונים של השדה הזה הוא STRING. הוא מציין את הסוג של אירוע השינוי: INSERT, ‏ UPDATE-INSERT, ‏ UPDATE-DELETE או DELETE.
  • SORT_KEYS: השדה הזה מכיל מערך של ערכי STRING. אפשר להשתמש בערכים כדי למיין את אירועי השינוי.

ניהול העלויות ב-BigQuery

החיובים על BigQuery מתבצעים בנפרד מהחיובים על Datastream. כאן תוכלו לקרוא מידע נוסף על התמחור של CDC ב-BigQuery.

שיטות מומלצות לניהול עלויות

כשמשתמשים ב-Datastream עם BigQuery כיעד, כדאי להביא בחשבון את השיטות המומלצות הבאות לניהול עלויות:

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

מגבלות ידועות

המגבלות הידועות לשימוש ב-BigQuery כיעד כוללות:

  • כברירת מחדל, Datastream לא תומך בהוספת מפתח ראשי לטבלה שכבר משוכפלת ל-BigQuery ללא מפתח ראשי, או בהסרת מפתח ראשי מטבלה שמשוכפלת ל-BigQuery עם מפתח ראשי. אם אתם צריכים לבצע שינויים כאלה, פנו לתמיכה של Google. מידע על שינוי ההגדרה של המפתח הראשי בטבלת מקור שכבר יש לה מפתח ראשי מופיע במאמר אבחון בעיות.
  • מפתחות ראשיים ב-BigQuery צריכים להיות מסוגי הנתונים הבאים:

    • DATE
    • BOOL
    • GEOGRAPHY
    • INT64
    • NUMERIC
    • BIGNUMERIC
    • STRING
    • TIMESTAMP
    • DATETIME

    טבלאות שמכילות מפתחות ראשיים מסוגי נתונים לא נתמכים לא משוכפלות על ידי Datastream.

  • ‫BigQuery לא תומך בשמות של טבלאות עם התווים ., $, /, @ או +. כשיוצרים טבלאות יעד, Datastream מחליף את התווים האלה בקו תחתון.

    לדוגמה, table.name במסד הנתונים של המקור הופך ל-table_name ב-BigQuery.

    מידע נוסף על שמות של טבלאות ב-BigQuery זמין במאמר שמות של טבלאות.

  • ‫BigQuery לא תומך ביותר מארבע עמודות אשכול. כשמשכפלים טבלה עם יותר מארבע עמודות של מפתח ראשי, Datastream משתמש בארבע עמודות של מפתח ראשי כעמודות האשכול.

  • הכלי להעברת נתונים ממפה מילוליים של תאריך ושעה מחוץ לטווח, כמו סוגי תאריכים של אינסוף ב-PostgreSQL, לערכים הבאים:

    • ערך חיובי DATE עד 9999-12-31
    • הערך של DATE שלילי, עד לערך של 0001-01-01
    • ערך חיובי TIMESTAMP עד 9999-12-31 23:59:59.999000 UTC
    • הערך של TIMESTAMP שלילי, עד לערך של 0001-01-01 00:00:00 UTC
  • ב-BigQuery אין תמיכה בטבלאות סטרימינג עם מפתחות ראשיים מסוגי הנתונים FLOAT או REAL. טבלאות כאלה לא משוכפלות. מידע נוסף על סוגי תאריכים וטווחים ב-BigQuery זמין במאמר בנושא סוגי נתונים.

  • אם המקור שלכם הוא Salesforce או Salesforce Marketing Cloud (גרסת Preview), אפשרות ההגדרה Dataset for each schema לא נתמכת.

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