מערך נתונים מקושר של BigQuery בדלי יומנים מאפשר לשלוח שאילתות ולנתח את נתוני היומנים באמצעות שירותי BigQuery, כמו BigQuery Studio ו-Data Studio. מכיוון שמערך נתונים מקושר ב-BigQuery הוא מצביע לקריאה בלבד של קטגוריית היומנים, אתם יכולים לצרף נתוני יומנים למערכי נתונים אחרים וליצור מדיניות התראה שמבוססת על SQL בלי לשכפל נתונים או לשלם על אחסון נפרד ב-BigQuery.
אי אפשר ליצור מערך נתונים מקושר ב-BigQuery לתצוגת ניתוח נתונים. אם אתם לא מכירים את Observability Analytics, קראו את הסקירה הכללית של Observability Analytics.
מתי צריך לקשר קבוצת נתונים של BigQuery
אתם לא צריכים מערך נתונים מקושר ב-BigQuery כדי לשלוח שאילתות לנתוני היומן, או לנתוני היומן והמעקב. בתרחישים כאלה, אתם יכולים להשתמש בדף Observability Analytics. אתם יכולים גם לשמור ולשתף את השאילתות, ולשמור את השאילתה במרכז בקרה בהתאמה אישית. למידע על שליחת שאילתות לגבי נתוני המעקב, ראו שליחת שאילתות וניתוח של נתוני מעקב.
אתם צריכים לקשר קבוצת נתונים ב-BigQuery אם אתם רוצים:
- לשלב נתונים של רשומות ביומן עם מערכים אחרים של נתונים ב-BigQuery.
- להריץ שאילתות על נתוני יומנים משירות אחר, כמו BigQuery Studio או Data Studio.
- יוצרים מדיניות התראות שעוקבת אחרי התוצאה של שאילתת SQL. למידע נוסף, קראו את המאמר מעקב אחרי תוצאות של שאילתות SQL באמצעות מדיניות התראות.
מערך נתונים מקושר ב-BigQuery לדלי של יומנים מאפשר ל-BigQuery לקרוא את הנתונים בדלי של היומנים.
איך קטגוריות של יומנים ותצוגות של יומנים ממופות לאובייקטים של BigQuery
כשיוצרים מערך נתונים מקושר ב-BigQuery בשביל תיקיית יומנים, מערך נתונים חדש הופך לזמין ב-BigQuery. אתם מציינים את השם של מערך הנתונים המקושר ב-BigQuery במהלך תהליך הקישור. כל תצוגות היומנים שבתוך מאגר הנתונים ממופות באופן אוטומטי לתצוגות וירטואליות במערך הנתונים. השם של התצוגה הווירטואלית זהה לשם של תצוגת היומן התואמת.
לדוגמה, נניח שבפרויקט my_project יש קטגוריית יומנים בשם example, ולקטגוריית היומנים הזו יש תצוגת יומנים בשם _AllLogs. אם יוצרים מערך נתונים מקושר ב-BigQuery לאותו מאגר יומנים בשם my_dataset, בדף Explorer ב-BigQuery מופיעה הרשומה my_project.
צאצא של הרשומה my_project הוא מערך נתונים בשם my_dataset, ובמערך הנתונים הזה מופיעה תצוגה וירטואלית בשם _AllLogs.
ההשלכות של בקרת הגישה כשמשתמשים במערכי נתונים מקושרים של BigQuery
כשחשבון משתמש שולח שאילתה לתצוגה במערך נתונים מקושר ב-BigQuery, השאילתה פועלת דרך שכבת ההרשאות של BigQuery ולא דרך שכבת ההרשאות של Cloud Logging. לכן, התפקידים וההרשאות ב-BigQuery שניתנו לחשבון המשתמש במערך הנתונים המקושר ב-BigQuery קובעים אם הוא יכול לשלוח שאילתות למערך הנתונים.
אי אפשר להגביל ישות מורשית לתצוגה וירטואלית ספציפית בתוך קבוצת נתונים מקושרת. כשחשבון ראשי מקבל גישה למערך הנתונים המקושר ב-BigQuery, הוא יכול לשלוח שאילתות לכל תצוגה במערך הנתונים הזה.
פעולות המערכת שמתרחשות כשיוצרים מערך נתונים מקושר
כשיוצרים קישור במערך נתונים של ניראות, קורים הדברים הבאים:
יכול להיות ש-Google Cloud Observability ייצור את חשבונות השירות הבאים או ישנה את הקצאות התפקידים שלהם ב-IAM:
חשבון שירות למעקב: נדרש כדי ליצור קישור למערך נתונים מקושר ב-BigQuery. כדי ש-Google Cloud Observability ייצור את חשבון השירות הזה, צריך להפעיל את Cloud Monitoring API.
חשבון שירות של Cloud Observability: נדרש כדי ליצור קישור במערך נתונים של ניראות.
חשבון שירות של Cloud Logging: נדרש כדי ליצור קישור בקטגוריית יומנים.
ביומני הביקורת מתועדות הבקשה ליצירת קישור והבקשה ממנהל סוכני השירות להקצות לחשבון השירות של Monitoring את התפקיד סוכן שירות של Monitoring ב-IAM. ביומנים האלה מתועד גם הסיום של הפעולה הממושכת.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
כדי לקבל את ההרשאות שנדרשות ליצירת קבוצת נתונים מקושרת, צריך לבקש מהאדמין להקצות לכם את התפקיד כותב הגדרות של יומנים (
roles/logging.configWriter) ב-IAM בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
מוודאים ששדרגתם את קטגוריית היומנים לשימוש ב-Observability Analytics:
-
נכנסים לדף Logs Storage במסוף Google Cloud :
אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה עם כותרת המשנה Logging.
- אם מופיע הכפתור Upgrade, לוחצים עליו ומשלימים את תיבת הדו-שיח.
-
יצירת מערך נתונים מקושר ב-BigQuery
כדי להשתמש ביכולות של BigQuery לניתוח נתוני היומנים, שדרגו את מאגר היומנים לשימוש ב-Observability Analytics ואז צרו מערך נתונים מקושר. בהגדרה הזו, נתוני היומן נשמרים ב-Logging, אבל אפשר לקרוא אותם ב-BigQuery.
מסוף Google Cloud
כדי ליצור קישור למערך נתונים ב-BigQuery בשביל קטגוריית יומנים קיימת:
-
נכנסים לדף Logs Storage במסוף Google Cloud :
אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה עם כותרת המשנה Logging.
מאתרים את קטגוריית היומנים ומוודאים שבעמודה Observability Analytics available מופיע הערך Open.
אם בעמודה הזו מופיע Upgrade, סימן שדלי היומנים לא שודרג לשימוש ב-Observability Analytics. הגדרת Observability Analytics:
- לוחצים על שדרוג.
- לוחצים על אישור בתיבת הדו-שיח.
אחרי שהשדרוג מסתיים, ממשיכים לשלב הבא.
בקטגוריית היומנים, לוחצים על Moremore_vert ואז על Edit bucket.
תיבת הדו-שיח Edit log bucket נפתחת.
בוחרים באפשרות יצירת מערך נתונים חדש ב-BigQuery שמקושר לקטגוריה הזו ומזינים את השם של מערך הנתונים החדש.
השם של מערך הנתונים חייב להיות ייחודי לכל פרויקט ב- Google Cloud . אם תזינו שם של מערך נתונים קיים, תופיע השגיאה הבאה:
Dataset name must be unique in the selected region.לוחצים על Done ואז על Update bucket.
אחרי שהשם של מערך הנתונים המקושר מופיע בדף Logs Storage ב-Logging, יכול להיות שיעברו כמה דקות עד ש-BigQuery יזהה את מערך הנתונים.
gcloud
כדי ליצור מערך נתונים מקושר לקטגוריית יומנים ששודרגה לשימוש ב-Observability Analytics, מריצים את הפקודה gcloud logging links create:
gcloud logging links create LINK_ID --bucket=BUCKET_ID --location=LOCATION
הערך של LINK_ID שאתם מספקים משמש כשם של מערך הנתונים ב-BigQuery, והוא צריך להיות ייחודי לפרויקט ב- Google Cloud .
הפקודה links create היא אסינכרונית. הערך המוחזר של method אסינכרוני הוא אובייקט Operation, והוא מכיל מידע על התקדמות ה-method. כשה-method מסתיימת, האובייקט Operation מכיל את הסטטוס. מידע נוסף זמין במאמר שיטות API אסינכרוניות.
השלמת הפקודה links create נמשכת כמה דקות.
לדוגמה, הפקודה הבאה יוצרת מערך נתונים מקושר בשם mylink בשביל קטגוריית היומנים שנקראת my-bucket:
gcloud logging links create mylink --bucket=my-bucket --location=global
השם של מערך הנתונים חייב להיות ייחודי לכל פרויקט ב- Google Cloud . אם תנסו ליצור קבוצת נתונים עם שם זהה לזה של קבוצת נתונים קיימת, תופיע השגיאה הבאה:
BigQuery dataset with name "LINK_ID" already exists.
אם תנסו ליצור מערך נתונים מקושר בשביל תיקיית יומנים שלא שודרגה לשימוש ב-Observability Analytics, תופיע השגיאה הבאה:
A link can only be created for an analytics-enabled bucket.
REST
כדי ליצור מערך נתונים מקושר ב-BigQuery בשביל תיקיית יומנים קיימת ששודרגה לשימוש ב-Observability Analytics, צריך להפעיל את השיטה האסינכרונית projects.locations.buckets.links.create של Cloud Logging API.
מכינים את הארגומנטים לשיטה באופן הבא:
- יוצרים את גוף הבקשה לפקודה
create. גוף הבקשה בפורמט של אובייקטLink. - בפרמטר השאילתה של הפקודה, משתמשים ב-
linkId=LINK_ID. הערך של LINK_ID שאתם מספקים משמש כשם של מערך הנתונים ב-BigQuery, והוא צריך להיות ייחודי לפרויקט ב- Google Cloud .
התגובה לשיטות האסינכרוניות היא אובייקט Operation. האובייקט הזה מכיל מידע על התקדמות השיטה. כשה-method מסתיימת, האובייקט Operation מכיל את הסטטוס. מידע נוסף זמין במאמר שיטות API אסינכרוניות.
השלמת השיטה links.create נמשכת כמה דקות.
השם של מערך הנתונים חייב להיות ייחודי לכל פרויקט ב- Google Cloud . אם תנסו ליצור קבוצת נתונים עם שם זהה לזה של קבוצת נתונים קיימת, תופיע השגיאה הבאה:
BigQuery dataset with name "LINK_ID" already exists.
אם תנסו ליצור מערך נתונים מקושר בשביל תיקיית יומנים שלא שודרגה לשימוש ב-Observability Analytics, תופיע השגיאה הבאה:
A link can only be created for an analytics-enabled bucket.