שילוב עם Meta
בדף הזה מוסבר על ההגדרות הנדרשות כדי להביא נתונים מ-מטא (פייסבוק ו-אינסטגרם Ads) כמקור נתונים של עומס העבודה השיווקי של Cortex Framework Data Foundation.
מטא היא חברת טכנולוגיה שבבעלותה כמה פלטפורמות פופולריות באינטרנט. המסגרת של Cortex משלבת נתונים של מודעות מאינסטגרם ומפייסבוק כדי לנתח אותם, משלבת אותם עם מקורות נתונים אחרים ומשתמשת ב-AI כדי לקבל תובנות מעמיקות יותר ולבצע אופטימיזציה של אסטרטגיית השיווק.
בתרשים הבא מתואר איך נתוני שיווק של Meta זמינים דרך עומס העבודה השיווקי של Cortex Framework Data Foundation:

קובץ תצורה
קובץ config.json מגדיר את ההגדרות שנדרשות כדי להתחבר למקורות נתונים להעברת נתונים מעומסי עבודה שונים. הקובץ הזה מכיל את הפרמטרים הבאים של Meta:
"marketing": {
"deployMeta": true,
"Meta": {
"deployCDC": true,
"datasets": {
"cdc": "",
"raw": "",
"reporting": "REPORTING_Meta"
}
}
}
בטבלה הבאה מתואר הערך של כל פרמטר שיווקי:
| פרמטר | משמעות | ערך ברירת המחדל | תיאור |
marketing.deployMeta
|
פריסת Meta | true
|
מריצים את הפריסה של מקור הנתונים של Meta. |
marketing.Meta.deployCDC
|
פריסת סקריפטים של CDC עבור Meta | true
|
ליצור סקריפטים לעיבוד CDC של Meta כדי להריץ אותם כ-DAG ב-Managed Airflow. |
marketing.Meta.datasets.cdc
|
מערך נתונים של CDC עבור Meta | מערך נתונים של CDC עבור Meta. | |
marketing.Meta.datasets.raw
|
מערך נתונים גולמי ל-Meta | קבוצת נתונים גולמית למטא. | |
marketing.Meta.datasets.reporting
|
מערך נתונים לדיווח ב-Meta | "REPORTING_Meta"
|
מערך נתונים לדיווח עבור Meta. |
מודל נתונים
בקטע הזה מתואר מודל הנתונים של Meta באמצעות דיאגרמת קשר בין ישויות (ERD).
תצוגות בסיסיות
אלה האובייקטים הכחולים ב-ERD, והם תצוגות בטבלאות CDC עם טרנספורמציות מינימליות לפירוק של מבני נתונים מורכבים. אפשר לראות תסריטים ב-src/marketing/src/Meta/src/reporting/ddls.
תצוגות של דוחות
אלה האובייקטים הירוקים ב-ERD, והם תצוגות דיווח שמכילות מדדים מצטברים. אפשר לראות תסריטים ב-src/marketing/src/Meta/src/reporting/ddls.
חיבור API
תבניות ההטמעה ב-Cortex Framework for Meta משתמשות ב-Meta Marketing API כדי לאחזר מאפיינים ומדדים של דיווח. התבניות הנוכחיות משתמשות בגרסה v25.0.
מערכת Meta מטילה מגבלת קצב דינמית כששולחים שאילתות ל-Marketing API. כשמגיעים למגבלת הקצב, יכול להיות שגרפים מכווני מחזור (DAG) של הטמעת נתונים ממקור לנתונים גולמיים לא יושלמו בהצלחה. במקרים כאלה, אפשר לראות הודעות שגיאה רלוונטיות ביומן, וההפעלה הבאה של ה-DAGs תטען באופן רטרואקטיבי את הנתונים החסרים.
ל-Meta Marketing API יש שתי רמות גישה: בסיסית ורגילה. התוכנית הרגילה מציעה מכסה גבוהה בהרבה, ומומלצת אם אתם מתכננים להשתמש בתכונה 'העברה ממקור לנתונים גולמיים' באופן נרחב. פרטים נוספים על המגבלות האלה ועל האופן שבו אפשר להשיג רמת גישה גבוהה יותר זמינים במסמכי התיעוד של Meta.
אם יש לכם גישה לרמה רגילה, אתם יכולים להקטין את הערך של ההגדרה next_request_delay_sec ב-src/Meta/src/raw/pipelines/config.ini כדי לקצר את זמני הטעינה.
גישה ל-API וטוקן גישה
כדי להעביר נתונים ממטא ל-Cortex Framework, צריך לבצע את השלבים הבאים ב-Meta Business Manager וב-Developer Console.
- מזהים אפליקציה לשימוש. אתם יכולים ליצור אפליקציה חדשה שמקושרת לחשבון העסקי. חשוב לוודא שהאפליקציה היא מסוג
Business. - הגדרת הרשאות שניתנות לאפליקציה כדי ליצור טוקנים באמצעות האפליקציה, צריך להיות מוקצים לה בתור אדמינים. לעיון במאמרי העזרה בנושא תפקידים באפליקציות חשוב להקצות לאפליקציה נכסים רלוונטיים (חשבונות).
יוצרים אסימון גישה. כדי לגשת ל-Meta Marketing API, צריך אסימוני גישה, והם תמיד משויכים לאפליקציה ולמשתמש. אפשר ליצור את האסימון באמצעות משתמש מערכת או באמצעות פרטי הכניסה שלכם.
- יוצרים משתמש מערכת עם הרשאות אדמין.
- יצירת טוקן. חשוב לרשום את הטוקנים מיד אחרי שהם נוצרים, כי אי אפשר לאחזר אותם אחרי שיוצאים מהדף.
- מעניקים לטוקן את ההרשאות
ads_readו-business_managementכדי לגשת לאובייקטים הנתמכים.
כדי להפעיל את Secret Manager ב-Managed Airflow, פועלים לפי ההוראות בתיעוד של Managed Airflow. לאחר מכן יוצרים סוד בשם
cortex_meta_access_tokenומאחסנים את האסימון שיצרתם בשלב הקודם כתוכן.
עדכניות הנתונים והעיכובים
באופן כללי, רמת העדכניות של הנתונים במקורות הנתונים של Cortex Framework מוגבלת על ידי מה שמאפשר החיבור במעלה הזרם, וגם על ידי התדירות של הפעלת ה-DAG. משנים את תדירות ההפעלה של ה-DAG בהתאם לתדירות של מקור הנתונים, למגבלות המשאבים ולצרכים העסקיים.
ב-Meta Marketing API, רוב הנתונים (לא כולל המרות) זמינים כמעט בזמן אמת, אבל יכול להיות שיתבצעו בהם שינויים עד 28 ימים אחרי האירוע.
הרשאות לחיבורים ב-Managed Service for Apache Airflow
יוצרים את החיבורים הבאים ב-Managed Airflow. פרטים נוספים זמינים במאמר בנושא ניהול חיבורים ב-Airflow.
| שם החיבור | מטרה |
meta_raw_dataflow
|
Meta Marketing API > מערך נתונים גולמי של BigQuery |
meta_cdc_bq
|
למערך נתונים גולמי > העברת מערך נתונים של CDC |
meta_reporting_bq
|
למערך נתונים של CDC > העברת מערך נתונים של דיווח |
הרשאות של חשבון שירות ב-Managed Airflow
נותנים הרשאות Dataflow לחשבון השירות שבו נעשה שימוש ב-Managed Airflow (כפי שהוגדר בחיבור meta_raw_dataflow).
הוראות מפורטות זמינות במסמכי התיעוד של Dataflow. לחשבון השירות נדרשת גם ההרשאה Secret Manager Secret Accessor. פרטים נוספים זמינים במאמר בנושא בקרת גישה.
פרמטרים של בקשה
הספרייה src/Meta/config/request_parameters מכילה קובץ מפרט של בקשת API לכל ישות שמחולצת מ-Meta Marketing API. כל קובץ בקשה מכיל רשימה של שדות לאחזור מ-Meta Marketing API, שדה אחד בכל שורה. מידע נוסף זמין במאמר Meta Marketing API Reference.
הגדרות הטמעה
שליטה בצינורות הנתונים של Source to Raw ו-Raw to CDC דרך ההגדרות בקובץ src/Meta/config/ingestion_settings.yaml.
בקטע הזה מתוארים הפרמטרים של כל צינור נתונים.
מקור לטבלאות גולמיות
בקטע הזה יש רשומות שקובעות אילו ישויות יאוחזרו על ידי ממשקי API ואיך. כל רשומה תואמת לישות אחת ב-Meta Marketing API. על סמך ההגדרה הזו, Cortex Framework יוצר DAG של Airflow שמריץ צינורות עיבוד נתונים של Dataflow כדי לאחזר נתונים באמצעות Meta Marketing APIs.
קובץ src/Meta/src/raw/pipelines/config.ini שולט בחלק מההתנהגויות של Managed Airflow DAG ובאופן השימוש ב-Meta Marketing APIs.
בכל קובץ יש תיאורים של כל פרמטר.
הפרמטרים הבאים שולטים בהגדרות של Source to Raw
לכל רשומה:
| פרמטר | תיאור |
base_table
|
טבלה במערך הנתונים הגולמי שבה הנתונים שאוחזרו מאוחסנים (לדוגמה, customer).
|
load_frequency
|
התדירות שבה DAG כזה פועל כדי לאחזר נתונים מ-Meta. מידע נוסף על הערכים האפשריים זמין במאמרי העזרה בנושא Airflow. |
object_endpoint
|
נתיב נקודת הקצה של ה-API (לדוגמה,
campaigns עבור נקודת הקצה /{account_id}/campaigns).
|
entity_type
|
סוג הטבלה (צריך להיות אחד מהערכים fact, dimension או addaccount)).
|
object_id_column
|
עמודות (מופרדות בפסיק) שיוצרות רשומה ייחודית בטבלה הזו. חובה רק אם הערך של entity_type הוא fact.
|
breakdowns
|
אופציונלי: עמודות פירוט
(מופרדות בפסיק) לנקודות קצה של תובנות. רלוונטי רק אם entity_type הוא fact.
|
action_breakdowns
|
אופציונלי: עמודות פירוט של פעולות
(מופרדות בפסיק) לנקודות קצה של תובנות. רלוונטי רק אם entity_type הוא fact.
|
partition_details
|
אופציונלי: אם רוצים לחלק את הטבלה הזו למחיצות כדי לשפר את הביצועים. מידע נוסף זמין במאמר בנושא חלוקת טבלה למחיצות. |
cluster_details
|
אופציונלי: אם רוצים שהטבלה הזו תהיה מקובצת כדי לשפר את הביצועים. מידע נוסף מופיע במאמר בנושא הגדרות אשכול. |
טבלאות Raw לטבלאות CDC
בקטע הזה מתוארים הערכים שקובעים איך הנתונים מועברים מטבלאות Raw לטבלאות CDC. כל רשומה תואמת לטבלת נתונים גולמיים (שבתורה תואמת לישות של Meta API כמו שצוין).
הפרמטרים הבאים שולטים בהגדרות של Raw to CDC לכל רשומה:
| פרמטר | תיאור |
base_table
|
טבלה שבה הנתונים הגולמיים שוכפלו. טבלה עם אותו שם במערך הנתונים של CDC מאחסנת את הנתונים הגולמיים אחרי טרנספורמציה של CDC (לדוגמה, campaign_insights).
|
row_identifiers
|
עמודות (מופרדות בפסיק) שיוצרות רשומה ייחודית בטבלה הזו. |
load_frequency
|
התדירות שבה DAG של הישות הזו מופעל כדי לאכלס את טבלת ה-CDC. מידע נוסף על הערכים האפשריים מופיע במסמכי התיעוד של Airflow. |
partition_details
|
אופציונלי: אם רוצים לחלק את הטבלה הזו למחיצות כדי לשפר את הביצועים. מידע נוסף זמין במאמר בנושא חלוקת טבלה למחיצות. |
cluster_details
|
אופציונלי: אם רוצים שהטבלה הזו תהיה מקובצת כדי לשפר את הביצועים. מידע נוסף מופיע במאמר בנושא הגדרות אשכול. |
סכימת טבלה של CDC
ב-Meta, כל השדות מאוחסנים בפורמט מחרוזת בשכבת הנתונים הגולמיים. בשכבת ה-CDC, סוגים פרימיטיביים מומרים לסוגים רלוונטיים של נתונים עסקיים, וכל הסוגים המורכבים מאוחסנים בפורמט JSON של BigQuery.
כדי להפעיל את ההמרה הזו, בספרייה src/Meta/config/table_schema
יש קובץ סכימה אחד לכל ישות שצוינה בקטע raw_to_cdc_tables
שמסביר איך לתרגם נכון כל טבלה גולמית ב-BigQuery לטבלת CDC.
כל קובץ סכימה מכיל שלוש עמודות:
-
SourceField: שם השדה של הטבלה הגולמית של הישות הזו. -
TargetField: שם העמודה בטבלת ה-CDC של הישות הזו. -
DataType: סוג הנתונים של כל שדה בטבלת ה-CDC.
הגדרות דיווח
אתם יכולים להגדיר ולשלוט באופן שבו Cortex יוצר נתונים בשכבת הדיווח הסופית של Meta באמצעות קובץ הגדרות הדיווח (src/Meta/config/reporting_settings.yaml). הקובץ הזה קובע איך נוצרים אובייקטים של BigQuery בשכבת הדיווח (טבלאות, תצוגות, פונקציות או פרוצדורות מאוחסנות).
מידע נוסף זמין במאמר בנושא התאמה אישית של קובץ הגדרות הדיווח.
מה השלב הבא?
- מידע נוסף על מקורות נתונים ועומסי עבודה אחרים זמין במאמר מקורות נתונים ועומסי עבודה.
- מידע נוסף על השלבים לפריסה בסביבות ייצור זמין במאמר דרישות מוקדמות לפריסת Cortex Framework Data Foundation.
