שילוב עם Google Ads

בדף הזה מוסבר על ההגדרות הנדרשות כדי להביא נתונים מ-Google Ads כמקור נתונים של עומס העבודה השיווקי של Cortex Framework Data Foundation.

Google Ads היא פלטפורמת פרסום באינטרנט שמאפשרת לעסקים לפרסם את המוצרים או השירותים שלהם במגוון נכסי Google. ‫Cortex Framework מאגד את הנתונים שלכם ב-Google Ads עם נתונים מערוצי שיווק אחרים, מנתח אותם באופן מקיף ומשתמש ב-AI כדי לשפר את תוצאות הקמפיינים.

הדיאגרמה הבאה מתארת איך נתוני המודעות של Google Ads זמינים דרך עומס העבודה השיווקי של Cortex Framework Data Foundation:

מקור נתוני מודעות של Google Ads

איור 1. מקור נתונים של Google Ads.

קובץ תצורה

קובץ config.json מגדיר את ההגדרות שנדרשות להעברת נתונים מכל מקור נתונים, כולל Google Ads. הקובץ הזה מכיל את הפרמטרים הבאים של Google Ads:

  "marketing": {
          "deployGoogleAds": true,
          "GoogleAds": {
              "deployCDC": true,
              "lookbackDays": 180,
              "datasets": {
                  "cdc": "",
                  "raw": "",
                  "reporting": "REPORTING_GoogleAds"
                    }
                  }
                 }

בטבלה הבאה מפורטים הערכים של כל פרמטר שיווקי של Google Ads:

פרמטר משמעות ערך ברירת המחדל תיאור
marketing.deployGoogleAds פריסת Google Ads true מבצעים את הפריסה של מקור הנתונים של Google Ads.
marketing.GoogleAds.deployCDC פריסת CDC ל-Google Ads true יצירת סקריפטים לעיבוד נתוני CDC ב-Google Ads כדי להפעיל אותם כ-DAG ב-Managed Airflow.
marketing.GoogleAds.lookbackDays מספר הימים הקודמים שמוצגים ב-Google Ads 180 מספר הימים שצריך להמתין עד שתתחיל אחזור נתונים מ-Google Ads API.
marketing.GoogleAds.datasets.cdc מערך נתונים של CDC ל-Google Ads מערך נתונים של CDC ל-Google Ads.
marketing.GoogleAds.datasets.raw מערך נתונים גולמי של Google Ads מערך נתונים גולמי של Google Ads.
marketing.GoogleAds.datasets.reporting ערכת נתונים לדיווח ב-Google Ads "REPORTING_GoogleAds" מערך נתונים לדיווח ב-Google Ads.

מודל נתונים

בקטע הזה מתואר מודל הנתונים של Google Ads באמצעות דיאגרמת קשר בין ישויות (ERD).

דיאגרמת קשרים בין ישויות ב-Google Ads

איור 2. ‫Google Ads: תרשים קשרים בין ישויות.

תצוגות בסיסיות

אלה האובייקטים הכחולים בתרשים ERD, והם תצוגות בטבלאות CDC ללא טרנספורמציות, מלבד כינויים מסוימים של שמות עמודות. אפשר לראות תסריטים ב-src/marketing/src/GoogleAds/src/reporting/ddls.

תצוגות של דוחות

אלה האובייקטים הירוקים ב-ERD, והם תצוגות דיווח שמכילות מדדים מצטברים. אפשר לראות תסריטים ב-src/marketing/src/GoogleAds/src/reporting/ddls.

חיבור API

תבניות ההטמעה של Cortex Framework משתמשות ב-Google Ads API כדי לאחזר מאפיינים ומדדים של דיווח מ-Google Ads. התבניות הנוכחיות של Cortex Framework משתמשות ב-Google Ads API גרסה 17.1. כדאי לקחת בחשבון את המגבלות של Google Ads API:

  • פעולות גישה בסיסיות ביום: 15,000 (בקשות עם מספור עמודים שמכילות next_page_token תקין לא נספרות).
  • גודל דף מקסימלי: 10,000 שורות בכל דף.
  • פרמטרים מומלצים שמוגדרים כברירת מחדל: גודל הדף שווה ל-10,000 שורות בכל דף.

מידע נוסף על חיבור ה-API זמין במאמרי העזרה של Google Ads API.

אימות חשבון

כדי להגדיר אימות של החשבון:

  1. בGoogle Cloud מסוף, לוחצים על תפריט הניווט > API & Services > Credentials > Create credentials.
  2. יוצרים פרטי כניסה של מזהה לקוח OAuth עם המאפיינים הבאים. למידע נוסף, תוכלו לקרוא את המאמר שימוש ב-OAuth 2.0 כדי לגשת אל Google APIs.

    Application type: "Web Application"
    Name: CHOSEN_NAME #(For example,"Cortex Authentication Client").
    Authorized redirect URIs: http://127.0.0.1
    

    מחליפים את CHOSEN_NAME בשם שבחרתם לחשבון של פרטי הכניסה של מזהה הלקוח ב-OAuth.

  3. אחרי שמגדירים את פרטי הכניסה, שומרים את Client ID ואת Client secret. תצטרכו אותו בהמשך.

  4. יוצרים טוקן חדש באמצעות OAuth 2.0 כדי לגשת אל Google APIs. ‫Cortex Data Foundation מזהה באופן אוטומטי נתונים מכל הלקוחות (החשבונות) שאפשר לגשת אליהם באמצעות פרטי הכניסה ששימשו ליצירת האסימון, ומטמיע אותם.

  5. יוצרים סוד באמצעות Secret Manager:

    • בGoogle Cloud מסוף, לוחצים על Secret Manager.
    • יוצרים סוד בשם cortex-framework-google-ads-yaml באמצעות הפורמט הבא ומשנים את הערכים בהתאם להגדרות שלכם:
    {"developer_token": "DEVELOPER_TOKEN_VALUE", "refresh_token": "REFRESH_TOKEN_VALUE", "client_id": "CLIENT_ID_VALUE", "client_secret": "CLIENT_SECRET_VALUE", "use_proto_plus": False}
    

מחליפים את מה שכתוב בשדות הבאים:

  • DEVELOPER_TOKEN_VALUE עם ערך אסימון המפתח (developer token) שזמין בחשבון Google Ads.
  • REFRESH_TOKEN_VALUE עם הערך של אסימון הרענון שהתקבל בשלב 4.
  • CLIENT_ID_VALUE עם ערך מזהה הלקוח שהתקבל בהגדרת OAuth בשלב 2.
  • CLIENT_SECRET_VALUE מחליפים בערך של סוד הלקוח שהתקבל מהגדרת OAuth בשלב 2.

עדכניות הנתונים והעיכובים

באופן כללי, רמת העדכניות של הנתונים במקורות הנתונים של Cortex Framework מוגבלת על ידי מה שמאפשר החיבור במעלה הזרם, וגם על ידי התדירות של הפעלת ה-DAG. משנים את תדירות ההפעלה של ה-DAG בהתאם לתדירות של מקור הנתונים, למגבלות המשאבים ולצרכים העסקיים.

הנתונים שאוחזרו באמצעות Google Ads API זמינים בדרך כלל עם זמן אחזור של 3 שעות ומעלה. יכול להיות שיהיו שינויים בהמשך בגלל המרות וזיהוי של תנועה פסולה. מידע נוסף זמין במאמר מידע על עדכניות הנתונים במרכז העזרה של Google Ads.

הרשאות לחיבורים ב-Managed Service for Apache Airflow

יוצרים את החיבורים הבאים ב-Managed Airflow. פרטים נוספים זמינים במאמר בנושא ניהול חיבורים ב-Airflow.

שם החיבור מטרה
googleads_raw_dataflow ‫Google Ads API > מערך נתונים גולמי של BigQuery.
googleads_cdc_bq לגבי מערך נתונים גולמי > העברת מערך נתונים של CDC.
googleads_reporting_bq להעברה של מערך נתונים של CDC > מערך נתונים של דיווח.

הרשאות של חשבון שירות ב-Managed Airflow

נותנים הרשאות Dataflow לחשבון השירות שבו נעשה שימוש ב-Managed Airflow (כפי שהוגדר בחיבור googleads_raw_dataflow). הוראות מפורטות זמינות במסמכי התיעוד של Dataflow.

הגדרות הטמעה

שליטה בצינורות הנתונים של Source to Raw ו-Raw to CDC דרך ההגדרות בקובץ src/GoogleAds/config/ingestion_settings.yaml. בקטע הזה מתוארים הפרמטרים של כל צינור נתונים.

מקור לטבלאות גולמיות

בקטע הזה מוסבר אילו ישויות מאוחזרות על ידי ממשקי API ואיך. כל רשומה מתאימה לישות אחת ב-Google Ads. על סמך ההגדרה הזו,‏ Cortex יוצרת DAG של Airflow שמפעילים צינורות Dataflow כדי לאחזר נתונים באמצעות Google Ads API.

הפרמטרים הבאים שולטים בהגדרות של Source to Raw לכל רשומה:

פרמטר תיאור
load_frequency התדירות שבה DAG של הישות הזו מופעל כדי לאחזר נתונים מ-Google Ads. מידע נוסף על הערכים האפשריים זמין במאמרי העזרה בנושא Airflow.
api_name שם משאב ה-API (לדוגמה, customer).
table_name טבלה במערך הנתונים הגולמי שבה הנתונים שאוחזרו מאוחסנים (לדוגמה, customer).
schema_file קובץ סכמה בספרייה src/table_schema שממפה את שדות התגובה של ה-API לשמות העמודות בטבלת היעד.
key עמודות (מופרדות בפסיק) שיוצרות רשומה ייחודית בטבלה הזו.
is_metrics_table מציין אם רשומה מסוימת היא של ישות מדד (ב-Google Ads API). המערכת מתייחסת לטבלאות כאלה בצורה קצת שונה בגלל האופי המצטבר שלהן.
partition_details אופציונלי: אם רוצים לחלק את הטבלה למחיצות כדי לשפר את הביצועים. מידע נוסף זמין במאמר בנושא חלוקת טבלה למחיצות.
cluster_details אופציונלי: אם רוצים שהטבלה הזו תהיה מקובצת כדי לשפר את הביצועים. מידע נוסף מופיע במאמר בנושא הגדרות אשכול.

טבלאות Raw לטבלאות CDC

בקטע הזה מוסבר אילו רשומות קובעות איך הנתונים מועברים מטבלאות גולמיות לטבלאות CDC. כל רשומה תואמת לטבלה גולמית (שבתורה תואמת לישות Google Ads API כפי שצוין).

הפרמטרים הבאים שולטים בהגדרות של Raw to CDC לכל רשומה:

פרמטר תיאור
table_name טבלה במערך נתוני CDC שבה מאוחסנים הנתונים הגולמיים אחרי טרנספורמציית CDC (לדוגמה, customer).
raw_table הטבלה שבה הנתונים הגולמיים שוכפלו.
key עמודות (מופרדות בפסיקים) שיוצרות רשומה ייחודית לטבלה הזו.
load_frequency התדירות שבה DAG של הישות הזו מופעל כדי לאכלס את טבלת ה-CDC. מידע נוסף על הערכים האפשריים זמין במאמרי העזרה בנושא Airflow.
schema_file קובץ סכימה בספרייה src/table_schema שממפה עמודות גולמיות לעמודות CDC וסוג נתונים של עמודת CDC. זהו אותו קובץ סכימה שהוזכר בקטע הקודם.
partition_details אופציונלי: אם רוצים לחלק את הטבלה למחיצות כדי לשפר את הביצועים. מידע נוסף זמין במאמר בנושא חלוקת טבלה למחיצות.
cluster_details אופציונלי: אם רוצים שהטבלה הזו תהיה מקובצת כדי לשפר את הביצועים. מידע נוסף מופיע במאמר בנושא הגדרות אשכול.

הגדרות דיווח

אתם יכולים להגדיר ולשלוט באופן שבו Cortex Framework יוצר נתונים עבור שכבת הדיווח הסופית של Google Ads באמצעות קובץ הגדרות הדיווח src/GoogleAds/config/reporting_settings.yaml. הקובץ הזה קובע איך נוצרים אובייקטים של BigQuery בשכבת הדיווח (טבלאות, תצוגות,פונקציות או פרוצדורות מאוחסנות).

מידע נוסף זמין במאמר בנושא התאמה אישית של קובץ הגדרות הדיווח.

מה השלב הבא?