במאמר הזה נסביר איך לבצע את הפעולות הבאות ב-Dataform:
- תזמון הרצות באמצעות הגדרות של תהליכי עבודה.
- תזמון הרצות באמצעות Workflows ו-Cloud Scheduler.
- תזמון הרצות באמצעות Managed Service for Apache Airflow.
- אוטומציה של הרצות באמצעות טריגרים של Cloud Build.
בטבלה הבאה מוצגת השוואה בין השיטות:
| Method | מטרה | סוג הטריגר |
|---|---|---|
| הגדרות של תהליכי עבודה | הרצות ייצור סטנדרטיות שמבוססות על זמן ב-Dataform. | מבוסס זמן |
| זרימות עבודה ו-Cloud Scheduler | תזמור קל משקל של Dataform לצד ממשקי API אחרים, ללא שרת. | מבוסס על זמן או על אירוע |
| Managed Airflow | צינורות מורכבים עם תלות מחוץ ל-BigQuery. | מבוסס על זמן או על אירוע |
| מפעילים של Cloud Build | אוטומציה של פרסום גרסאות מיד אחרי פעולת Git push. | מבוסס-אירועים |
לפני שמתחילים
כדי לתזמן הרצות עם הגדרות של תהליכי עבודה או לתזמן הרצות עם תהליכי עבודה ו-Cloud Scheduler, מבצעים את הפעולות הבאות:
נכנסים לדף Dataform במסוף Google Cloud .
בוחרים מאגר או יוצרים מאגר.
יוצרים הגדרת גרסה.
כדי לתזמן הפעלות באמצעות Managed Service for Apache Airflow:
- בוחרים או יוצרים מאגר Dataform.
- איך מעניקים ל-Dataform גישה ל-BigQuery
- בוחרים או יוצרים סביבת עבודה ב-Dataform.
- יוצרים לפחות טבלה אחת.
- יוצרים סביבת Managed Airflow 2.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות לביצוע המשימות שמתוארות במאמר הזה, אתם צריכים לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:
- אדמין ב-Dataform (
roles/dataform.admin) במאגרים - משתמש בחשבון שירות (
roles/iam.serviceAccountUser) בחשבון השירות המותאם אישית - Composer Worker (
roles/composer.worker) בחשבון השירות של סביבת Managed Airflow -
הפעלת ריצות באופן אוטומטי באמצעות Cloud Build:
- אדמין של חשבון שירות (
roles/iam.serviceAccountAdmin) בחשבון השירות המותאם אישית - עריכה ב-Cloud Build (
roles/cloudbuild.builds.editor) בפרויקט
- אדמין של חשבון שירות (
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
כדי להשתמש בחשבון שירות מותאם אישית כשיוצרים הגדרת זרימת עבודה, צריך להעניק גישה לחשבון השירות המותאם אישית.
כדי להשתמש בפרטי כניסה של משתמש לחשבון Google כשיוצרים הגדרת תהליך עבודה (גרסת Preview), צריך להעניק גישה לחשבון Google.
כדי להפעיל ביצועים מתוזמנים להגדרת זרימת עבודה, צריך להעניק את ההרשאה iam.serviceAccounts.actAs לסוכן השירות שמוגדר כברירת מחדל ב-Dataform עבור חשבון השירות בהתאמה אישית שמשמש בהגדרת זרימת העבודה. ההרשאה הזו זמינה בתפקיד 'משתמש בחשבון שירות' (roles/iam.serviceAccountUser). למידע נוסף, אפשר לעיין במאמר שימוש במצב 'התחזות מוגבלת'.
כדי לשפר את האבטחה של קביעת פגישות, אפשר לקרוא על הטמעה של הרשאות משופרות לקביעת פגישות.
תזמון הרצות באמצעות הגדרות של תהליכי עבודה
בקטע הזה מוסבר איך ליצור הגדרת תהליך עבודה ב-Dataform כדי לתזמן ולהגדיר הפעלות של תהליכי עבודה. אתם יכולים להשתמש בהגדרות של תהליכי עבודה כדי להריץ תהליכי עבודה של Dataform לפי לוח זמנים.
מידע על הגדרות של תהליכי עבודה
כדי לתזמן הרצות של Dataform של כל הפעולות בתהליך העבודה או רק חלק מהן ב-BigQuery, אפשר ליצור הגדרות של תהליך העבודה. בהגדרת תהליך עבודה, בוחרים הגדרת מהדורת קומפילציה, בוחרים פעולות של תהליך העבודה לביצוע ומגדירים את לוח הזמנים להרצה.
לאחר מכן, במהלך הפעלה מתוזמנת של הגדרת תהליך העבודה, Dataform פורס את הפעולות שבחרתם מתוצאת הקומפילציה האחרונה בהגדרת הגרסה אל BigQuery. אפשר גם להפעיל ידנית את הריצה של הגדרת תהליך עבודה באמצעות Dataform API workflowConfigs.
הגדרות של תהליך עבודה ב-Dataform כוללות את הגדרות ההרצה הבאות:
- המזהה של הגדרת תהליך העבודה.
- הגדרות מוצר.
חשבון שירות.
זהו חשבון השירות המותאם אישית שמשויך להגדרת תהליך העבודה. אפשר לבחור חשבון שירות מותאם אישית שמשויך לפרויקט Google Cloud , או להזין ידנית חשבון שירות אחר. כברירת מחדל, הגדרות של תהליכי עבודה משתמשות באותם חשבונות שירות כמו המאגרים שלהם.
פרטי הכניסה לחשבון השירות הם שיטת ההרשאה שמוגדרת כברירת מחדל ליצירה ולביצוע של תצורות של תהליכי עבודה מתוזמנים.
פרטי כניסה של משתמש בחשבון Google (גרסת טרום-השקה (Preview))
פרטי הכניסה של משתמש בחשבון Google הם שיטת ההרשאה שמוגדרת כברירת מחדל ליצירה ולהפעלה של תצורות ידניות של תהליכי עבודה שלא מתוזמנים. מידע נוסף זמין במאמר בנושא מתן הרשאה לחשבון Google.
פעולות בתהליך העבודה שיבוצעו:
- כל הפעולות.
- בחירת פעולות.
- בחירת תגים.
לוח זמנים להפעלה ואזור זמן.
יצירת הגדרה של תהליך עבודה
כדי ליצור הגדרת זרימת עבודה ב-Dataform, פועלים לפי השלבים הבאים: