קישור ל-AlloyDB ל-PostgreSQL
אדמינים ב-BigQuery יכולים ליצור חיבור כדי לגשת לנתוני AlloyDB. החיבור הזה מאפשר למנתחי נתונים להריץ שאילתות על נתונים ב-AlloyDB.
כדי להתחבר ל-AlloyDB, צריך לבצע את השלבים הבאים:
לפני שמתחילים
- מפעילים את BigQuery Connection API.
-
כדי לקבל את ההרשאות שנדרשות ליצירת חיבור ל-AlloyDB, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין חיבורים ל-BigQuery (
roles/bigquery.connectionAdmin) בפרויקט. להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
יצירת חיבור ל-AlloyDB
מומלץ להשתמש בחיבורים כדי לטפל בפרטי הכניסה למסד הנתונים כשמתחברים ל-AlloyDB. החיבורים מוצפנים ונשמרים בצורה מאובטחת בשירות החיבורים של BigQuery. אם פרטי הכניסה של המשתמש תקפים לנתונים אחרים במקור, אפשר להשתמש שוב בחיבור. לדוגמה, אפשר להשתמש בחיבור אחד כדי להריץ שאילתות על אותו מסד נתונים במופע AlloyDB כמה פעמים.
כדי ליצור קישור ל-AlloyDB, בוחרים אחת מהאפשרויות הבאות:
המסוף
עוברים לדף BigQuery.
בחלונית Explorer, לוחצים על Add.
תיבת הדו-שיח הוספת נתונים נפתחת.
בחלונית Filter By, בקטע Data Source Type, בוחרים באפשרות Databases.
אפשרות אחרת היא להזין
alloydbבשדה חיפוש מקורות נתונים.בקטע מקורות נתונים מומלצים, לוחצים על Google Cloud AlloyDB.
לוחצים על כרטיס הפתרון AlloyDB: BigQuery Federation.
בתיבת הדו-שיח מקור נתונים חיצוני, מזינים את הפרטים הבאים:
- בשדה סוג החיבור, בוחרים באפשרות AlloyDB.
- בשדה מזהה החיבור, מזינים מזהה למשאב החיבור. מותר להשתמש באותיות, במספרים ובקווים תחתונים. לדוגמה,
bq_alloydb_connection. - בשדה מיקום הנתונים, בוחרים מיקום (או אזור) ב-BigQuery שתואם לאזור של מקור הנתונים החיצוני.
- אופציונלי: בשדה Friendly name (שם ידידותי), מזינים שם ידידותי לחיבור, כמו
My connection resource. השם הידידותי יכול להיות כל ערך שיעזור לכם לזהות את משאב הקישור אם תצטרכו לשנות אותו בהמשך. - אופציונלי: בשדה Description, מזינים תיאור למשאב החיבור הזה.
- אופציונלי: הצפנה אם רוצים להשתמש במפתח הצפנה בניהול הלקוח (CMEK) כדי להצפין את פרטי הכניסה, בוחרים באפשרות מפתח הצפנה בניהול הלקוח (CMEK) ואז בוחרים מפתח בניהול הלקוח. אחרת, פרטי הכניסה שלכם מוגנים על ידי ברירת המחדל Google-owned and Google-managed encryption key.
- בשדה שם מסד הנתונים, מזינים את השם של מסד הנתונים.
- בשדה Database username (שם משתמש במסד הנתונים), מזינים את שם המשתמש במסד הנתונים.
- בקטע סיסמת מסד הנתונים, מזינים את הסיסמה של מסד הנתונים.
- אופציונלי: כדי לראות את הסיסמה, לוחצים על הצגת הסיסמה.
בשדה AlloyDB Instance (מופע AlloyDB), מזינים את ה-URI של החיבור למופע הראשי או למופע לקריאה של AlloyDB עם הקידומת //alloydb.googleapis.com.
- דוגמה ל-URI:
//alloydb.googleapis.com/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_NAME/instances/INSTANCE_ID
- דוגמה ל-URI:
לוחצים על יצירת קישור.
לוחצים על מעבר לחיבור.
בחלונית Connection Info, מעתיקים את מזהה חשבון השירות כדי להשתמש בו בשלב הבא להענקת הרשאות ה-IAM הנכונות.
BQ
מזינים את הפקודה bq mk עם הדגלים הבאים:
bq mk \
--connection \
--location=LOCATION \
--project_id=PROJECT_ID \
--connector_configuration '{
"connector_id": "google-alloydb",
"asset": {
"database": "DATABASE",
"google_cloud_resource": "RESOURCE_PATH"
},
"authentication": {
"username_password": {
"username": "USERNAME",
"password": {
"plaintext": "PASSWORD"
}
}
}
}' \
CONNECTION_ID
מחליפים את מה שכתוב בשדות הבאים:
-
LOCATION: מציינים אזור של מערך הנתונים ב-BigQuery שיוכל לשלב את הנתונים מ-AlloyDB. שאילתות שמשתמשות בחיבור הזה חייבות להיות מופעלות מהאזור הזה. -
PROJECT_ID: מזינים את מזהה הפרויקט ב- Google Cloud . -
DATABASE: מזינים את שם מסד הנתונים. -
RESOURCE_PATH: מזינים את ה-URI של החיבור למופע הראשי או למופע לקריאה של AlloyDB עם הקידומת //alloydb.googleapis.com.- דוגמה ל-URI:
//alloydb.googleapis.com/projects/PROJECT_ID/locations/REGION_ID/clusters/CLUSTER_NAME/instances/INSTANCE_ID
- דוגמה ל-URI:
-
USERNAME: מזינים את שם המשתמש במסד הנתונים. -
PASSWORD: מזינים את הסיסמה של משתמש מסד הנתונים. -
CONNECTION_ID: מזינים מזהה חיבור כדי לזהות את החיבור הזה.
דגל אופציונלי:
-
--kms_key_name: מפתח הצפנה בניהול הלקוח. אם לא מציינים את ההגדרה הזו, פרטי הכניסה מוגנים באמצעות ברירת המחדל Google-owned and Google-managed encryption key.
API
ב-BigQuery Connection API, אפשר להפעיל את CreateConnection בתוך ConnectionService כדי ליצור מופע של חיבור. פרטים נוספים זמינים בדף של ספריית הלקוח.
הענקת גישה לחשבון השירות
חשבון שירות נוצר באופן אוטומטי כשיוצרים את החיבור הראשון בפרויקט. השם של חשבון השירות הוא BigQuery Connection Service Agent. מזהה חשבון השירות הוא בפורמט הבא:
service-PROJECT_NUMBER@gcp-sa-bigqueryconnection.iam.gserviceaccount.com.
כדי להתחבר ל-AlloyDB, צריך לתת לחיבור החדש גישה ל-AlloyDB כדי ש-BigQuery יוכל לגשת לנתונים בשם המשתמשים. לחשבון השירות צריכה להיות ההרשאה הבאה:
alloydb.instances.connect
אתם יכולים להעניק לחשבון השירות שמשויך לחיבור את תפקיד ה-IAM של לקוח AlloyDB, שכבר מוקצית לו ההרשאה הזו. אפשר לדלג על השלב הזה אם לחשבון השירות כבר יש את ההרשאה הנדרשת.
המסוף
עוברים לדף IAM & Admin.
לוחצים על Grant Access.
תיבת הדו-שיח Add principals נפתחת.
בשדה New principals, מזינים את שם חשבון השירות BigQuery Connection Service Agent או את מזהה חשבון השירות שמופיע בפרטי החיבור.
בשדה Select a role, בוחרים באפשרות AlloyDB ואז בוחרים באפשרות AlloyDB Client.
לוחצים על Save.
gcloud
משתמשים בפקודה gcloud projects add-iam-policy-binding:
gcloud projects add-iam-policy-binding PROJECT_ID --member=serviceAccount:SERVICE_ACCOUNT_ID --role=roles/alloydb.client
מספקים את הערכים הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
SERVICE_ACCOUNT_ID: מחליפים את מספר הפרויקט ב-service-PROJECT_NUMBER@gcp-sa-bigqueryconnection.iam.gserviceaccount.comומשתמשים בו.
שיתוף חיבורים עם משתמשים
אתם יכולים להקצות את התפקידים הבאים כדי לאפשר למשתמשים לשלוח שאילתות לנתונים ולנהל חיבורים:
roles/bigquery.connectionUser: מאפשר למשתמשים להשתמש בחיבורים כדי להתחבר למקורות נתונים חיצוניים ולהריץ עליהם שאילתות.
roles/bigquery.connectionAdmin: מאפשר למשתמשים לנהל את החיבורים.
במאמר תפקידים והרשאות מוגדרים מראש יש מידע נוסף על תפקידים והרשאות ב-IAM ב-BigQuery.
בוחרים באחת מהאפשרויות הבאות:
המסוף
עוברים לדף BigQuery.
החיבורים מופיעים בפרויקט בקבוצה שנקראת Connections.
בחלונית הימנית, לוחצים על כלי הניתוחים:

אם החלונית הימנית לא מוצגת, לוחצים על הרחבת החלונית הימנית כדי לפתוח אותה.
בחלונית Explorer, מרחיבים את שם הפרויקט.
לוחצים על Connections (קישורים) ואז על הקישור.
בחלונית פרטים, לוחצים על שיתוף כדי לשתף חיבור. לאחר מכן מבצעים את הפעולות הבאות:
בתיבת הדו-שיח Connection permissions, מוסיפים או עורכים חשבונות משתמשים כדי לשתף את החיבור עם חשבונות משתמשים אחרים.
לוחצים על Save.
BQ
משתמשים בפקודת set-iam-policy הבאה:
bq set-iam-policy RESOURCE FILE_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
RESOURCE: מזינים את שם המשאב בפורמטproject_id.region.connection_idאוregion.connection_id. -
FILE_NAME: מזינים את שם הקובץ שמכיל את מדיניות IAM בפורמט JSON.
מידע נוסף על הפקודה set-iam-policy זמין במאמר שליטה בגישה למשאבים באמצעות IAM.
API
משתמשים בשיטה projects.locations.connections.setIAM בקטע BigQuery Connections הפניית API בארכיטקטורת REST ומספקים מופע של המשאב policy.
המאמרים הבאים
- מידע נוסף על סוגי חיבורים שונים
- מידע נוסף על ניהול חיבורים
- מידע על שאילתות מאוחדות
- איך שולפים נתונים מ-AlloyDB