תבנית הצינור של Google Ads ל-BigQuery היא צינור אצווה שקורא דוחות של Google Ads וכותב ל-BigQuery.
הדרישות לגבי צינורות עיבוד נתונים
- מספרי החשבונות ב-Google Ads שבהם רוצים להשתמש.
- השאילתה בשפת השאילתות של Google Ads שבאמצעותה מתקבלים הנתונים.
- פרטי כניסה ל-OAuth עבור Google Ads API.
פרמטרים של תבניות
פרמטרים נדרשים
- customerIds: רשימה של מספרי חשבונות ב-Google Ads שאפשר להשתמש בהם כדי להריץ את השאילתה. לדוגמה,
12345,67890. - query: השאילתה שמשמשת לאחזור הנתונים. מידע נוסף על שפת השאילתות של Google Ads זמין בכתובת https://developers.google.com/google-ads/api/docs/query/overview. לדוגמה,
SELECT campaign.id, campaign.name FROM campaign. - qpsPerWorker: קצב הבקשות לשאילתות בשנייה (QPS) לשליחה אל Google Ads. מחלקים את מספר הבקשות לשנייה הרצוי לכל צינור במספר העובדים המקסימלי. חשוב להימנע מחריגה מהמגבלות לכל חשבון או לכל קוד מפתח. מידע נוסף זמין במאמר בנושא מגבלות קצב (https://developers.google.com/google-ads/api/docs/best-practices/rate-limits).
- googleAdsClientId: מזהה הלקוח ב-OAuth 2.0 שמזהה את האפליקציה. אפשר לעיין במאמר בנושא יצירת מזהה לקוח וסוד לקוח (https://developers.google.com/google-ads/api/docs/oauth/cloud-project#create_a_client_id_and_client_secret).
- googleAdsClientSecret: הסוד של לקוח OAuth 2.0 שתואם למזהה הלקוח שצוין. אפשר לעיין במאמר בנושא יצירת מזהה לקוח וסוד לקוח (https://developers.google.com/google-ads/api/docs/oauth/cloud-project#create_a_client_id_and_client_secret).
- googleAdsRefreshToken: אסימון הרענון מסוג OAuth 2.0 שמשמש להתחברות אל Google Ads API. מידע נוסף זמין במאמר בנושא אימות דו-שלבי (https://developers.google.com/google-ads/api/docs/oauth/2sv).
- googleAdsDeveloperToken: קוד המפתח של Google Ads למפתחים שמשמש לחיבור אל Google Ads API. מידע נוסף זמין במאמר בנושא קבלת קוד מפתח (https://developers.google.com/google-ads/api/docs/get-started/dev-token).
- outputTableSpec: מיקום טבלת הפלט ב-BigQuery שאליה ייכתב הפלט. לדוגמה,
<PROJECT_ID>:<DATASET_NAME>.<TABLE_NAME>.בהתאם ל-createDispositionשצוין, יכול להיות שטבלת הפלט תיצור באופן אוטומטי באמצעות סכימת Avro שסופקה על ידי המשתמש.
פרמטרים אופציונליים
- loginCustomerId: מזהה של חשבון ניהול ב-Google Ads שמשמש לגישה למזהי החשבונות. לדוגמה,
12345. - bigQueryTableSchemaPath: הנתיב ב-Cloud Storage לקובץ ה-JSON של סכימת BigQuery. אם הערך הזה לא מוגדר, הסכימה נגזרת מסכימת ה-Proto. לדוגמה,
gs://MyBucket/bq_schema.json. - writeDisposition: הערך של BigQuery WriteDisposition (https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobconfigurationload). לדוגמה,
WRITE_APPEND,WRITE_EMPTYאוWRITE_TRUNCATE. ברירת המחדל היאWRITE_APPEND. - createDisposition: BigQuery CreateDisposition (https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#jobconfigurationload). לדוגמה,
CREATE_IF_NEEDEDו-CREATE_NEVER. ברירת המחדל היאCREATE_IF_NEEDED.
הפעלת התבנית
המסוף
- עוברים לדף Dataflow Create job from template (יצירת משימה מתבנית). כניסה לדף Create job from template
- בשדה שם המשימה, מזינים שם ייחודי למשימה.
- אופציונלי: בשדה Regional endpoint (נקודת קצה אזורית), בוחרים ערך מהתפריט הנפתח. אזור ברירת המחדל הוא
us-central1.רשימת האזורים שבהם אפשר להריץ משימת Dataflow מופיעה במאמר מיקומי Dataflow.
- בתפריט הנפתח Dataflow template (תבנית של העברת נתונים), בוחרים באפשרות the Google Ads to BigQuery template.
- בשדות הפרמטרים שמופיעים, מזינים את ערכי הפרמטרים.
- לוחצים על הפעלת העבודה.
gcloud
במעטפת או בטרמינל, מריצים את התבנית:
gcloud dataflow flex-template run JOB_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/VERSION/flex/Google_Ads_to_BigQuery \ --project=PROJECT_ID \ --region=REGION_NAME \ --parameters \ customerIds=CUSTOMER_IDS,\ query=QUERY,\ qpsPerWorker=QPS_PER_WORKER,\ googleAdsClientId=GOOGLE_ADS_CLIENT_ID,\ googleAdsClientSecret=GOOGLE_ADS_CLIENT_SECRET,\ googleAdsRefreshToken=GOOGLE_ADS_REFRESH_TOKEN,\ googleAdsDeveloperToken=GOOGLE_ADS_DEVELOPER_TOKEN,\ outputTableSpec=OUTPUT_TABLE_SPEC,\
מחליפים את מה שכתוב בשדות הבאים:
-
JOB_NAME: שם ייחודי של המשימה לפי בחירתכם -
VERSION: הגרסה של התבנית שבה רוצים להשתמשאפשר להשתמש בערכים הבאים:
-
latestכדי להשתמש בגרסה העדכנית של התבנית, שזמינה בתיקיית ההורה ללא תאריך בדלי – gs://dataflow-templates-REGION_NAME/latest/ - שם הגרסה, כמו
2023-09-12-00_RC00, כדי להשתמש בגרסה ספציפית של התבנית, שאפשר למצוא אותה בתיקיית האב המתאימה עם התאריך בדלי – gs://dataflow-templates-REGION_NAME/
-
-
REGION_NAME: האזור שבו רוצים לפרוס את עבודת Dataflow, לדוגמה:us-central1 -
CUSTOMER_IDS: מספרי חשבונות Google Ads -
QUERY: השאילתה בשפת השאילתות של Google Ads -
QPS_PER_WORKER: קצב הבקשות הנדרש ב-Google Ads לכל עובד -
GOOGLE_ADS_CLIENT_ID: מזהה הלקוח ב-OAuth 2.0 שמזהה את האפליקציה -
GOOGLE_ADS_CLIENT_SECRET: הסוד של לקוח OAuth 2.0 שתואם למזהה הלקוח שצוין -
GOOGLE_ADS_REFRESH_TOKEN: טוקן הרענון של OAuth 2.0 שמשמש לחיבור אל Google Ads API -
GOOGLE_ADS_DEVELOPER_TOKEN: קוד המפתח למפתחים ב-Google Ads שמשמש להתחברות אל Google Ads API -
OUTPUT_TABLE_SPEC: טבלת הפלט ב-BigQuery
API
כדי להריץ את התבנית באמצעות API בארכיטקטורת REST, שולחים בקשת HTTP POST. מידע נוסף על ה-API ועל היקפי ההרשאות שלו זמין במאמר projects.templates.launch.
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch { "launchParameter": { "jobName": "JOB_NAME", "parameters": { "customerIds": "CUSTOMER_IDS", "query": "QUERY", "qpsPerWorker": "QPS_PER_WORKER", "googleAdsClientId": "GOOGLE_ADS_CLIENT_ID", "googleAdsClientSecret": "GOOGLE_ADS_CLIENT_SECRET", "googleAdsRefreshToken": "GOOGLE_ADS_REFRESH_TOKEN", "googleAdsDeveloperToken": "GOOGLE_ADS_DEVELOPER_TOKEN", "outputTableSpec": "OUTPUT_TABLE_SPEC", }, "containerSpecGcsPath": "gs://dataflow-templates-LOCATION/VERSION/flex/Google_Ads_to_BigQuery", "environment": { "maxWorkers": "10" } } }
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שבו רוצים להריץ את משימת Dataflow Google Cloud -
JOB_NAME: שם ייחודי של המשימה לפי בחירתכם -
VERSION: הגרסה של התבנית שבה רוצים להשתמשאפשר להשתמש בערכים הבאים:
-
latestכדי להשתמש בגרסה העדכנית של התבנית, שזמינה בתיקיית ההורה ללא תאריך בדלי – gs://dataflow-templates-REGION_NAME/latest/ - שם הגרסה, כמו
2023-09-12-00_RC00, כדי להשתמש בגרסה ספציפית של התבנית, שאפשר למצוא אותה בתיקיית האב המתאימה עם התאריך בדלי – gs://dataflow-templates-REGION_NAME/
-
-
LOCATION: האזור שבו רוצים לפרוס את עבודת Dataflow, לדוגמה:us-central1 -
CUSTOMER_IDS: מספרי חשבונות Google Ads -
QUERY: השאילתה בשפת השאילתות של Google Ads -
QPS_PER_WORKER: קצב הבקשות הנדרש ב-Google Ads לכל עובד -
GOOGLE_ADS_CLIENT_ID: מזהה הלקוח ב-OAuth 2.0 שמזהה את האפליקציה -
GOOGLE_ADS_CLIENT_SECRET: הסוד של לקוח OAuth 2.0 שתואם למזהה הלקוח שצוין -
GOOGLE_ADS_REFRESH_TOKEN: טוקן הרענון של OAuth 2.0 שמשמש לחיבור אל Google Ads API -
GOOGLE_ADS_DEVELOPER_TOKEN: קוד המפתח למפתחים ב-Google Ads שמשמש להתחברות אל Google Ads API -
OUTPUT_TABLE_SPEC: טבלת הפלט ב-BigQuery