הפעלת שירות העברת נתונים ל-BigQuery
כדי להשתמש בשירות העברת הנתונים ל-BigQuery, צריך לבצע את השלבים הבאים בתור בעלים של הפרויקט:
- יוצרים פרויקט ומפעילים את BigQuery API.
- מפעילים את שירות העברת הנתונים ל-BigQuery.
למידע נוסף על תפקידים ב-IAM, אפשר לעיין במאמר תפקידים והרשאות במסמכי ה-IAM.
יצירת פרויקט והפעלת BigQuery API
לפני שמשתמשים בשירות העברת נתונים ל-BigQuery, צריך ליצור פרויקט וברוב המקרים גם להפעיל חיוב בפרויקט הזה. אפשר להשתמש בפרויקט קיים עם שירות העברת הנתונים ל-BigQuery, או ליצור פרויקט חדש. אם אתם משתמשים בפרויקט קיים, יכול להיות שתצטרכו גם להפעיל את BigQuery API.
כדי ליצור פרויקט ולהפעיל את BigQuery API:
-
נכנסים לדף לבחירת הפרויקט במסוף Cloud de Confiance .
-
בוחרים או יוצרים Cloud de Confiance פרויקט.
תפקידים שנדרשים כדי לבחור או ליצור פרויקט
- Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (יצירת פרויקטים) (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים
מפעילים את החיוב בפרויקט לכל ההעברות. העברות חינמיות לא מחויבות.
צריך להפעיל את החיוב רק פעם אחת לכל פרויקט, גם אם מעבירים נתונים מכמה מקורות. צריך גם להפעיל את החיוב כדי להריץ שאילתות על הנתונים ב-BigQuery אחרי שהנתונים מועברים.
- BigQuery מופעל באופן אוטומטי בפרויקטים חדשים.
כדי להפעיל את BigQuery בפרויקט קיים, צריך להפעיל את
BigQuery API.
הפעלת BigQuery API
הפעלת שירות העברת נתונים ל-BigQuery
כדי ליצור העברה, צריך להפעיל את שירות העברת הנתונים ל-BigQuery. כדי להפעיל את שירות העברת נתונים ל-BigQuery, צריך לקבל את התפקיד בעלים בפרויקט.
כדי להפעיל את שירות העברת נתונים ל-BigQuery:
פותחים את הדף BigQuery Data Transfer API בספריית ה-API.
בתפריט הנפתח, בוחרים את הפרויקט המתאים.
לוחצים על הלחצן 'הפעלה'.
סוכן שירות
שירות העברת נתונים ל-BigQuery משתמש בסוכן שירות כדי לגשת למשאבים שלכם ולנהל אותם. האיסור הזה כולל, בין היתר, את המשאבים הבאים:
- שליפת אסימון גישה לחשבון השירות לשימוש באישור העברת הנתונים.
- פרסום התראות בנושא Pub/Sub שצוין, אם האפשרות הזו מופעלת.
- הפעלת משימות BigQuery.
- אחזור אירועים מהמינוי שצוין ב-Pub/Sub להעברה מבוססת-אירועים של Cloud Storage
סוכן השירות נוצר אוטומטית בשמכם אחרי שמפעילים את שירות העברת הנתונים ל-BigQuery ומשתמשים בממשק ה-API בפעם הראשונה. כשסוכן שירות נוצר, Google מקצה לו אוטומטית את תפקיד סוכן השירות המוגדר מראש.
הרשאה של חשבון שירות בפרויקטים שונים
אם מאשרים את העברת הנתונים באמצעות חשבון שירות מפרויקט ששונה מהפרויקט שבו מופעל שירות העברת הנתונים ל-BigQuery, צריך להקצות את התפקיד roles/iam.serviceAccountTokenCreator לסוכן השירות באמצעות הפקודה הבאה ב-Google Cloud CLI:
gcloud iam service-accounts add-iam-policy-binding service_account \ --member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.com \ --role roles/iam.serviceAccountTokenCreator
כאשר:
- service_account הוא חשבון השירות שמשמש להרשאת העברת הנתונים בין הפרויקטים.
- project_number הוא מספר הפרויקט שבו מופעל שירות העברת הנתונים ל-BigQuery.
מידע נוסף על הגדרת משאבים בפרויקטים שונים זמין במאמר הגדרת משאב בפרויקט אחר במרכז העזרה בנושא התחזות לחשבון שירות של 'ניהול זהויות והרשאות גישה'.
כשמפעילים את ממשק ה-API של שירות העברת נתונים ל-BigQuery דרך Cloud de Confiance המסוף, Google מנסה להעניק באופן אוטומטי את ההרשאות הנדרשות. עם זאת, אם מפעילים את ה-API או יוצרים העברות באמצעות Terraform, Google Cloud CLI או שיטות תכנותיות אחרות, צריך להגדיר את ההרשאות הנדרשות באופן ידני. כדי לאשר העברה באמצעות חשבון שירות מפרויקט אחר, צריך לשים לב לנקודות הבאות:
הגדרת הרשאות להעברות בין פרויקטים: כדי לגשת בצורה מאובטחת למקורות נתונים בין פרויקטים, צריך להעניק לסוכן השירות של DTS (שנמצא בפרויקט היעד) את התפקיד
roles/iam.serviceAccountTokenCreatorבזהות של חשבון השירות במקור.אכיפת העיקרון של הרשאות מינימליות: מעניקים את התפקיד הזה ברמת המשאב (בחשבון השירות הספציפי שבו נעשה שימוש) ולא ברמת הפרויקט.
יצירה ידנית של סוכן שירות
אם רוצים להפעיל את יצירת סוכן השירות לפני שמתקשרים עם ה-API, למשל אם צריך להקצות לסוכן השירות תפקידים נוספים, אפשר להשתמש באחת מהגישות הבאות:
- API: services.GenerateServiceIdentity
- ה-CLI של gcloud: gcloud beta services identity create
- ספק Terraform: google_project_service_identity
כשמפעילים ידנית את יצירת סוכן השירות, Google לא מקצה באופן אוטומטי את התפקיד המוגדר מראש של סוכן השירות. צריך להקצות לסוכן השירות באופן ידני את התפקיד המוגדר מראש באמצעות הפקודה הבאה ב-Google Cloud CLI:
gcloud projects add-iam-policy-binding project_number \ --member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.s3ns-system.iam.gserviceaccount.com \ --role roles/bigquerydatatransfer.serviceAgent
כאשר:
- project_number הוא מספר הפרויקט שבו מופעל שירות העברת הנתונים ל-BigQuery.
הענקת גישה ל-bigquery.admin
מומלץ להעניק את bigquery.admin תפקיד IAM המוגדר מראש למשתמשים שיוצרים העברות של שירות העברת נתונים ל-BigQuery.
התפקיד bigquery.admin כולל את הרשאות ה-IAM שנדרשות לביצוע המשימות הנפוצות ביותר. התפקיד bigquery.admin כולל את ההרשאות הבאות בשירות העברת נתונים ל-BigQuery:
- הרשאות של שירות העברת נתונים ל-BigQuery:
bigquery.transfers.updatebigquery.transfers.get
- הרשאות ב-BigQuery:
bigquery.datasets.getbigquery.datasets.getIamPolicybigquery.datasets.updatebigquery.datasets.setIamPolicybigquery.jobs.create
במקרים מסוימים, יכול להיות שההרשאות הנדרשות יהיו שונות בין מקורות נתונים שונים. מידע ספציפי על IAM מופיע בקטע 'הרשאות נדרשות' בכל מדריך להעברת מקור נתונים. לדוגמה, אפשר לעיין במאמר הרשאות להעברה ב-Amazon S3 או במאמר הרשאות להעברה ב-Cloud Storage.
כדי להקצות את התפקיד bigquery.admin:
המסוף
פותחים את הדף IAM במסוף Cloud de Confiance .
לוחצים על Select a project (בחירת פרויקט).
בוחרים פרויקט ולוחצים על Open.
לוחצים על הוספה כדי להוסיף חברים חדשים לפרויקט ולהגדיר את ההרשאות שלהם.
בתיבת הדו-שיח הוספת חברים:
- בחברים, מזינים את כתובת האימייל של המשתמש או הקבוצה.
- בתפריט הנפתח Select a role, לוחצים על BigQuery > BigQuery Admin.
לוחצים על הוספה.
gcloud
אפשר להשתמש ב-Google Cloud CLI כדי להקצות למשתמש או לקבוצה את התפקיד bigquery.admin.
כדי להוסיף קישור יחיד למדיניות IAM של הפרויקט, מקלידים את הפקודה הבאה. כדי להוסיף משתמש, מציינים את האפשרות --member בפורמט user:user@example.com. כדי להוסיף קבוצה, מציינים את הדגל --member בפורמט group:group@example.com.
gcloud projects add-iam-policy-binding project_id \ --member principal:address \ --role roles/bigquery.admin
כאשר:
- project_id הוא מזהה הפרויקט.
- principal הוא
groupאוuser. - address היא כתובת האימייל של המשתמש או הקבוצה.
לדוגמה:
gcloud projects add-iam-policy-binding myproject \
--member group:group@example.com \
--role roles/bigquery.admin
הפקודה מחזירה את המדיניות המעודכנת:
bindings:
- members:
- group:group@example.com
role: roles/bigquery.admin
מידע נוסף על תפקידי IAM ב-BigQuery זמין במאמר תפקידים והרשאות מוגדרים מראש.
המאמרים הבאים
אחרי שמפעילים את שירות העברת הנתונים ל-BigQuery, יוצרים העברה למקור הנתונים.
- פלטפורמות SaaS:
- פלטפורמות שיווק:
- פלטפורמות תשלומים:
- PayPal (תצוגה מקדימה)
- Stripe (תצוגה מקדימה)
- Shopify (תצוגה מקדימה)
- מסדי נתונים ומחסני נתונים:
- Amazon Redshift
- Apache Hive Metastore
- Microsoft SQL Server (תצוגה מקדימה)
- MySQL
- Oracle
- PostgreSQL
- Snowflake (תצוגה מקדימה)
- Teradata
- אחסון בענן:
- שירותי Google: