חיבור Looker (Google Cloud Core)‎ למסד הנתונים

אחרי שהוקצתה לכם מכונה של Looker (Google Cloud core), היא מופיעה בדף Instances של Google Cloud הפרויקט. לוחצים על כתובת ה-URL של המופע כדי לגשת אליו ולהיכנס אליו.

אחרי שמתחברים למופע Looker (Google Cloud core), אפשר להגדיר חיבור למסד נתונים במופע Looker (Google Cloud core).

הגדרת חיבור למסד נתונים

כדי להפעיל את ניתוח הנתונים, צריך לקשר את Looker (Google Cloud core) למסד נתונים. כאן אפשר לעיין ברשימת הניבים הנתמכים ב-Looker ‏ (Google Cloud Core).

אתם יכולים ליצור חיבור למסד נתונים במופע של Looker (Google Cloud core) אם יש לכם אחת מההרשאות הבאות:

כדי לחבר את מסד הנתונים, אפשר לפעול לפי המדריך הגדרת Looker שמופיע באופן דינמי במופע Looker (Google Cloud core), או לפעול לפי השלבים שמפורטים בדפי התיעוד שספציפיים לניב. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע על שדות נפוצים בחלון הגדרת החיבור של Looker זמין בדף התיעוד חיבור Looker למסד הנתונים.

אם רוצים להגדיר את החיבור של Looker (Google Cloud core) באמצעות אחת מהאפשרויות הבאות, צריך לבצע שלבים נוספים:

שימוש ב-Application Default Credentials כדי להתחבר למסד נתונים של BigQuery

במופעים של Looker (Google Cloud core) אפשר להשתמש ב-Application Default Credentials ‏ (ADC) כדי לבצע אימות כשמגדירים חיבור למסד נתונים של SQL סטנדרטי ב-BigQuery. כשמשתמשים ב-ADC, החיבור מאומת במסד הנתונים באמצעות פרטי הכניסה של חשבון השירות של פרויקט Looker (Google Cloud core).

כדי להשתמש ב-ADC עם מסד נתונים של BigQuery, בוחרים באפשרות Application Default Credentials (פרטי כניסה שמוגדרים כברירת מחדל לאפליקציה) בשדה Authentication (אימות) בדף Connection Settings (הגדרות חיבור) של מופע Looker. ההליך המלא מפורט במאמר בנושא קישור Looker למסד נתונים של BigQuery.

אם מופע Looker (Google Cloud core) שלכם משתמש בטבלאות נגזרות קבועות עם מערך נתונים ב-BigQuery, אתם צריכים גם להעניק לחשבון השירות של Looker את התפקיד BigQuery Data Editor (עריכת נתונים ב-BigQuery) בניהול זהויות וגישה (IAM).

אם אתם מתחברים למסד נתונים של BigQuery שנמצא בפרויקט אחר מהמופע של Looker (Google Cloud core), נדרשת הגדרה נוספת. אפשר לעיין בקטע שימוש ב-Application Default Credentials עם מסד נתונים של BigQuery בפרויקט אחר Google Cloud .

התחזות לחשבון שירות

אם רוצים לבצע אימות למסד הנתונים של BigQuery באמצעות חשבון שירות שאינו חשבון השירות של פרויקט Looker (Google Cloud core), אפשר ליצור תהליך בקשה עם הרשאת גישה על ידי הזנת חשבון שירות אחר או שרשרת של חשבונות שירות מופרדים בפסיקים בשדה Impersonated Service Account (חשבון שירות להתחזות). חשבון השירות של Looker (ליבת Google Cloud) משמש אוטומטית כחשבון השירות הראשון בשרשרת, ואין צורך להוסיף אותו לשדה. חשבון השירות האחרון בשרשרת (שנקרא גם חשבון השירות שאליו מתחזים) הוא זה שמבצע אימות מול מסד הנתונים.

כשמשתמשים בהתחזות לחשבון שירות, צריך לבצע את הפעולות הבאות:

שימוש ב-Application Default Credentials עם מסד נתונים של BigQuery בפרויקט Google Cloud אחר

השלבים לשימוש ב-ADC במסד נתונים של SQL סטנדרטי ב-BigQuery שנמצא מחוץ לפרויקט שמארח את מופע Looker (ליבת Google Cloud) זהים לשלבים להגדרת חיבור בתוך אותו פרויקט. עם זאת, לפני שמגדירים את החיבור במופע Looker (Google Cloud core), לחשבון השירות של פרויקט Looker (Google Cloud core) צריכות להיות ההרשאות הבאות ב-IAM:

אם לחשבון השירות של Looker (Google Cloud core) עדיין אין תפקידי IAM בפרויקט שמכיל את מערך הנתונים ב-BigQuery, צריך להשתמש בכתובת האימייל של חשבון השירות כשמעניקים תפקידים בפרויקט הזה. כדי למצוא את כתובת האימייל של חשבון השירות, עוברים לדף IAM במסוף Google Cloud ומסמנים את התיבה Include Google-provided role grants. האימייל יהיה בפורמט service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. משתמשים בכתובת האימייל הזו כדי להקצות את התפקידים המתאימים לחשבון השירות.

אחרי שמקצים את התפקידים המתאימים, פועלים לפי השלבים לשימוש ב-ADC.

עכשיו אפשר להשתמש ב-ADC עם מסד הנתונים הזה של BigQuery SQL סטנדרטי. הפרויקט שמצורף לחשבון השירות שצוין בדף Connection Settings ישמש לחיוב וגם כפרויקט ברירת המחדל.

שימוש ב-Application Default Credentials כדי להתחבר למסד נתונים של Cloud SQL

מופעים של Looker (Google Cloud core) יכולים להשתמש ב-ADC כדי לאמת חיבור למסד נתונים של Cloud SQL (Cloud SQL ל-PostgreSQL או Cloud SQL ל-MySQL). כשמשתמשים ב-ADC כדי לבצע אימות במסד הנתונים של Cloud SQL, הפרויקט שבו מסד הנתונים של Cloud SQL פועל הוא הפרויקט שמחויב על שאילתות Looker. Google Cloud

בחיבורי Looker ל-Cloud SQL שמשתמשים ב-ADC, ‏ ADC מתחזה לחשבון שירות או לשרשרת של חשבונות שירות כדי לגשת למסד הנתונים. כשיוצרים את החיבור של Looker למסד הנתונים, משתמשים בשדה IAM database username(s) כדי לציין את חשבון השירות או את שרשרת חשבונות השירות ש-ADC יתחזה להם. חשבון השירות של Looker שנוצר אוטומטית כשיוצרים את מופע Looker (Google Cloud core) משמש אוטומטית כחשבון השירות הראשון בשרשרת, ואין צורך להוסיף אותו לשדה.

אם רוצים לבצע אימות למסד הנתונים של Cloud SQL באמצעות חשבון שירות שאינו חשבון השירות של Looker, אפשר ליצור תהליך בקשה עם הרשאות גישה על ידי הזנת חשבון שירות אחר, או שרשרת של חשבונות שירות מופרדים בפסיקים, בשדה שמות המשתמשים במסד הנתונים של IAM.

חשבון השירות האחרון בשרשרת (שנקרא גם חשבון השירות שאליו מתחזים) הוא זה שמבצע אימות במסד הנתונים, וצריך להוסיף את החשבון הזה כמשתמש במסד הנתונים של Cloud SQL. אם אתם משתמשים בחשבון השירות של Looker כחשבון השירות האחרון בשרשרת (על ידי השארת השדה שמות המשתמשים במסד הנתונים של IAM ריק), אתם צריכים להוסיף את חשבון השירות של Looker כמשתמש במסד הנתונים של Cloud SQL.

אלה השלבים הכלליים לחיבור מסד נתונים של Cloud SQL ל-PostgreSQL או Cloud SQL ל-MySQL ל-Looker באמצעות ADC:

  1. הוספת חשבון השירות שבוצעה אליו התחזות למסד הנתונים של Cloud SQL.
  2. הגדרת התחזות לחשבון שירות במסד הנתונים של Cloud SQL.
  3. מתחברים למסד הנתונים כדי להריץ פקודות נוספות להגדרת Cloud SQL ל-PostgreSQL או Cloud SQL ל-MySQL.
  4. יוצרים את הקישור של Looker למסד הנתונים.

הוספת חשבון השירות שבוצעה אליו התחזות למסד הנתונים של Cloud SQL

כשיוצרים את הקישור של Looker למסד הנתונים, משתמשים בשדה שמות משתמשים במסד הנתונים של IAM כדי לציין את חשבון השירות או את שרשרת חשבונות השירות ש-ADC יגלם כדי לבצע פעולות במסד הנתונים. חשבון השירות האחרון בשרשרת ההתחזות נחשב חשבון השירות שבוצעה אליו התחזות.

כדי להשתמש ב-ADC עם Cloud SQL, צריך להוסיף את חשבון השירות שמתבצעת לגביו התחזות למסד הנתונים של Cloud SQL:

  • במקרה ברירת המחדל, אם משאירים את השדה שמות המשתמשים במסד הנתונים של IAM ריק, ADC יתחזה לחשבון השירות של Looker. במקרה הזה, חשבון השירות של Looker הוא חשבון השירות שמתבצעת אליו התחזות, ולכן צריך להוסיף את חשבון השירות של Looker למסד הנתונים של Cloud SQL. מידע על חשבון השירות של Looker וההליך להצגת כתובת האימייל בחשבון של חשבון השירות של Looker מופיע במאמר יצירת מופע של Looker (Google Cloud core).
  • אם מציינים חשבון שירות שאינו חשבון השירות של Looker, או אם מציינים שרשרת של חשבונות שירות בשדה שמות המשתמשים במסד הנתונים של IAM, צריך להוסיף את חשבון השירות האחרון בשרשרת ההתחזות למסד הנתונים של Cloud SQL.

כדי להוסיף חשבון שירות למסד הנתונים של Cloud SQL, צריך להיות לכם תפקיד Cloud SQL Admin ב-IAM.

כדי להוסיף את חשבון השירות שמתחזה למסד הנתונים של Cloud SQL, מבצעים את השלבים שמתוארים בקטע 'הוספת חשבון שירות או משתמש IAM למכונה של מסד הנתונים' בהתאם לניב של מסד הנתונים:

הגדרת התחזות לחשבון שירות במסד הנתונים של Cloud SQL

אחרי שיוצרים את משתמש Cloud SQL במסד הנתונים, צריך להגדיר את מסד הנתונים של Cloud SQL לחיקוי זהות השירות. לשם כך, מבצעים את השלבים הבאים:

  1. פועלים לפי ההליך להפעלת Cloud SQL Admin API.
  2. מוודאים שלכל חשבונות השירות בשרשרת, כולל חשבון השירות של Looker, יש את ההרשאות המתאימות ב-IAM.
  3. פועלים לפי ההליך של הקצאת תפקיד יחיד במסוף Google Cloud . מקצים את התפקידים הבאים ב-Cloud SQL לחשבון השירות שניתנה לו הרשאת התחזות והוספתם למסד הנתונים של Cloud SQL:

    אם מציינים חשבון שירות שאינו חשבון השירות של Looker, או אם מציינים שרשרת של חשבונות שירות בשדה שמות המשתמשים במסד הנתונים של IAM, צריך להעניק לכל חשבון שירות בשרשרת את ההרשאה הבאה:

פקודות הגדרה נוספות ל-Cloud SQL ל-MySQL

ב-Cloud SQL ל-MySQL, צריך להתחבר למכונת מסד הנתונים ולהריץ את הפקודה הבאה במסד הנתונים של Cloud SQL ל-MySQL:

GRANT ALL on DATABASE_NAME.* to 'DATABASE_USER'@'%'

מחליפים את מה שכתוב בשדות הבאים:

  • DATABASE_NAME: השם של מסד הנתונים.
  • DATABASE_USER: שם המשתמש של חשבון השירות שנוצר לו ייצוג, שקוצר ונוסף למסד הנתונים של Cloud SQL. חשבון השירות יהיה בפורמט service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. לקצר את שם המשתמש על ידי הסרת @ וכל מה שמופיע אחריו. אחרי החיתוך, שם המשתמש ייראה כך: service-<project number>.

לדוגמה, אם שם המשתמש של חשבון השירות הוא service-12345678901@gcp-sa-looker.iam.gserviceaccount.com ושם מסד הנתונים הוא looker-test, הפקודה תהיה:

GRANT ALL on looker-test.* to 'service-12345678901'@'%'

פקודות נוספות להגדרה של Cloud SQL ל-PostgreSQL

ב-Cloud SQL ל-PostgreSQL, צריך להתחבר למופע מסד הנתונים ולהריץ כמה פקודות הגדרה במסד הנתונים של Cloud SQL ל-PostgreSQL:

  • מעניקים למשתמש הרשאות במסד הנתונים, כמו שמתואר בקטע משתמשים ואבטחה בדף התיעוד של PostgreSQL.
  • מגדירים את נתיב החיפוש של SQL Runner ב-Looker, כדי שיוכל לאחזר מטא-נתונים ממסד הנתונים, כמו שמתואר בקטע הגדרת search_path בדף PostgreSQL במסמכי התיעוד של Looker.

יצירת החיבור מ-Looker (Google Cloud core) למסד הנתונים של Cloud SQL

כדי ליצור את החיבור מ-Looker למסד הנתונים, פועלים לפי השלבים הבאים:

  1. בקטע Admin (ניהול) ב-Looker, בוחרים באפשרות Connections (חיבורים) ואז לוחצים על Add Connection (הוספת חיבור).
  2. בתפריט הנפתח Dialect, בוחרים באפשרות Google Cloud PostgreSQL או, אם משתמשים ב-Cloud SQL ל-MySQL, בוחרים באפשרות Google Cloud SQL.
  3. בקטע Authentication, לוחצים על האפשרות Application Default Credentials.
  4. בשדה IAM database username(s) מציינים את חשבון השירות או את שרשרת חשבונות השירות שרוצים ש-ADC יתחזה להם כדי לבצע פעולות במסד הנתונים:

  5. ממלאים את שאר פרטי החיבור. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע נוסף זמין בדף חיבור Looker למסד הנתונים.

  6. כדי לוודא שהחיבור בוצע בהצלחה, לוחצים על בדיקה. מידע לפתרון בעיות זמין בדף בנושא בדיקת הקישוריות למסד הנתונים.

  7. כדי לשמור את ההגדרות האלה, לוחצים על Connect (חיבור).

אחרי שמגדירים חיבור למסד נתונים, אפשר להגדיר פרויקט של LookML.

הגדרת אימות OAuth ב-BigQuery

כדי להגדיר אימות OAuth לחיבורים למסד נתונים של BigQuery במופע Looker (Google Cloud core), צריך לבצע את השלבים הבאים:

  1. בקטע Authentication (אימות), בוחרים באפשרות OAuth. כברירת מחדל, ב-Looker (Google Cloud core) נעשה שימוש בפרטי הכניסה של אפליקציית OAuth שהאדמין של Looker השתמש בהם כשיצר את מופע Looker (Google Cloud core). לא צריך ליצור או להזין ידנית את הסוד ומספר הלקוח.
  2. מוסיפים עוד כתובת URI להפניה אוטומטית לשדה Authorized redirect URIs בלקוח OAuth של המופע (או יוצרים לקוח OAuth חדש עם פרטי הכניסה ומוסיפים כתובת URI להפניה אוטומטית). כתובת ה-URI להפניה אוטומטית חייבת להשתמש בכתובת ה-URL של מכונת Looker, ואחריה /external_oauth/redirect. מידע נוסף זמין במאמר בנושא יצירת פרטי כניסה של OAuth ל-BigQuery.

אם רוצים להזין באופן ידני פרטי כניסה שונים ל-OAuth עבור החיבור הזה, מעבירים את המתג הגדרה ידנית של פרטי כניסה ל-OAuth למצב מופעל, ואז ממלאים את השדות מזהה לקוח OAuth וסוד לקוח OAuth. אם תזינו פרטי כניסה של OAuth באופן ידני, הם לא ישתנו או יתעדכנו בפרטי הכניסה ששימשו ליצירת מופע Looker (Google Cloud core). כדי ליצור ולהשתמש בסוגים שונים של פרטי כניסה, פועלים לפי השלבים במאמר הגדרת פרויקט של מסד נתונים ב-BigQuery ל-OAuth.

ניבים נתמכים ב-Looker (Google Cloud Core)‎

בטבלה הבאה מפורטת התמיכה של Looker ‏ (Google Cloud Core) בניבים של מסדי נתונים:

דיאלקט האם יש תמיכה?
Actian Avalanche
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Amazon Redshift 2.1+
Amazon Redshift Serverless 2.1+
Apache Druid
Apache Druid 0.13.x - 0.17.x
Apache Druid 0.18+
Apache Hive 2.3+
Apache Hive 3.1.2+
Apache Spark 3+
ClickHouse
Cloudera Impala 3.1+
Cloudera Impala 3.1+ with Native Driver
Cloudera Impala with Native Driver
DataVirtuality
Databricks
Denodo 7
Denodo 8 & 9
Dremio
Dremio 11+
Exasol
Google BigQuery Legacy SQL
Google BigQuery Standard SQL
Google Cloud AlloyDB for PostgreSQL
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Greenplum
HyperSQL
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008+
Microsoft SQL Server 2012+
Microsoft SQL Server 2016
Microsoft SQL Server 2017+
MongoBI
MySQL
MySQL 8.0.12+
Oracle
Oracle ADWC
PostgreSQL 9.5+
PostgreSQL pre-9.5
PrestoDB
PrestoSQL
SAP HANA
SAP HANA 2+
SingleStore
SingleStore 7+
Snowflake
Teradata
Trino
Vector
Vertica

הוראות להגדרת מסד נתונים

הוראות זמינות לניבי ה-SQL הבאים:

המאמרים הבאים