יצירת מערך נתונים מקושר ב-BigQuery

אתם יכולים ליצור מערך נתונים מקושר של BigQuery במערך הנתונים של יכולת התצפית, וכך להשתמש בשירותי BigQuery כדי להריץ שאילתות על נתוני המעקב. אחרי כן תוכלו לצרף נתוני מעקב למערכי נתונים עסקיים ולנתח טווחים באמצעות BigQuery Studio או BigQuery API.

אם אתם משתמשים ב-Observability Analytics, אתם לא צריכים מערך נתונים מקושר ב-BigQuery כדי לנתח את נתוני העקבות באמצעות SQL. אפשר גם לשלב את נתוני העקבות והיומן כשמשתמשים ב-Observability Analytics. מידע נוסף זמין במאמרים שליחת שאילתות וניתוח של עקבות באמצעות SQL ושליחת שאילתות וניתוח של יומנים באמצעות Observability Analytics.

מתי צריך קבוצת נתונים מקושרת

אתם צריכים מערך נתונים מקושר ב-BigQuery אם אתם רוצים לבצע את הפעולות הבאות:

יצירת מערך נתונים מקושר ב-BigQuery

בקטע הזה מוסבר איך ליצור מערך נתונים מקושר ב-BigQuery על מערך נתונים של יכולת תצפית, כדי שתוכלו להשתמש בשירותי BigQuery כדי לשלוח שאילתות לנתוני המעקב. כל מערך נתונים של יכולת התבוננות תומך במערך נתונים מקושר אחד של BigQuery.

כשיוצרים מערך נתונים מקושר, מתחילה פעולה ממושכת. כמה פעולות מתבצעות כחלק מהפעולה הזו:

  • ביומני הביקורת מתועדת הבקשה ליצירת קישור והשלמת הפעולה.
  • אם חשבון השירות של Monitoring לא קיים, הוא נוצר על ידי Google Cloud Observability.

    כדי ליצור את חשבון השירות הזה, צריך להפעיל את Cloud Monitoring API.

  • כדי ליצור מערך נתונים מקושר, צריך חשבון שירות ב-Google Cloud Observability. כשצריך, נוצר חשבון שירות:

  • יומן הביקורת מתעד את הבקשה של מנהל סוכני השירות להעניק לחשבון השירות של Monitoring את תפקיד ה-IAM‏ Monitoring Service Agent.

לפני שמתחילים

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Monitoring and Observability APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  5. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Cloud Monitoring and Observability APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  8. כדי לקבל את ההרשאות שנדרשות ליצירת קישור במערך נתונים של יכולת התבוננות, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Observability Editor (roles/observability.editor) בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

    יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יצירת מערך נתונים

gcloud

לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

  • LINK_ID: השם של מערך הנתונים ב-BigQuery.
  • DATASET_ID: מזהה קבוצת הנתונים. נתוני המעקב מאוחסנים במערך נתונים בשם Spans.
  • BUCKET_ID: המזהה של קטגוריית הנתונים של יכולת התצפית. לדוגמה, המזהה יכול להיות _Trace.
  • LOCATION: המיקום של קטגוריות הנתונים של יכולת התצפית.
  • PROJECT_ID: מזהה הפרויקט.

מריצים את הפקודה gcloud beta observability buckets datasets links create:

‫Linux,‏ macOS או Cloud Shell

gcloud beta observability buckets datasets links create \
  projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID \
 --dataset=DATASET_ID\
 --bucket=BUCKET_ID \
 --location=LOCATION \
 --project=PROJECT_ID

‏Windows (PowerShell)

gcloud beta observability buckets datasets links create `
  projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID `
 --dataset=DATASET_ID`
 --bucket=BUCKET_ID `
 --location=LOCATION `
 --project=PROJECT_ID

Windows‏ (cmd.exe)

gcloud beta observability buckets datasets links create ^
  projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID ^
 --dataset=DATASET_ID^
 --bucket=BUCKET_ID ^
 --location=LOCATION ^
 --project=PROJECT_ID

הפקודה create מפעילה פעולה ממושכת. בדוגמה הבאה אפשר לראות תגובה שהתקבלה אחרי שהפקודה הסתיימה ללא שגיאות:

Create request issued for: [mydataset]
Waiting for operation [projects/my-project/locations/us/operations/operation-1775164903749-64e80c9817833-9ff804b6-c3e9cbe7] to complete...done.
Created link [mydataset].

REST

כדי ליצור קישור למערך נתונים ב-BigQuery, שולחים בקשה לנקודת הקצה projects.locations.buckets.datasets.links.create.

צריך לציין את פרמטר האב, שמופיע בפורמט הבא:

projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID

השדות בביטוי שלמעלה מייצגים את המשמעויות הבאות:

  • PROJECT_ID: מזהה הפרויקט.
  • LOCATION: המיקום של קטגוריית הנתונים של יכולת התצפית.
  • BUCKET_ID: המזהה של קטגוריית הנתונים של יכולת התצפית. לדוגמה, המזהה יכול להיות _Trace.
  • DATASET_ID: המזהה של מערך הנתונים שנשלחת אליו השאילתה. לדוגמה, המזהה יכול להיות Spans.

הפקודה הזו דורשת פרמטר שאילתה וגוף בקשה:

  • צריך לציין את פרמטר השאילתה, linkId, ולהגדיר אותו לשם של מערך הנתונים ב-BigQuery. לדוגמה, linkId="my_link". שם קבוצת הנתונים ב-BigQuery צריך להיות ייחודי לפרויקט Google Cloud , והוא יכול לכלול רק אותיות, ספרות וקווים תחתונים. השם מוגבל ל-100 תווים.

  • גוף הבקשה הוא אובייקט Link. הערך בשדה name הוא בפורמט הבא:

    projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID
    

    הערך שאתם מציינים בשדה name צריך להיות זהה למערך הנתונים המקושר ב-BigQuery שאליו מתייחס פרמטר השאילתה.

    השדה LINK_ID הוא השם של מערך הנתונים ב-BigQuery.

התגובה היא אובייקט Operation. האובייקט הזה מכיל מידע על ההתקדמות של השיטה. כששיטת הגיבוי מסתיימת, אובייקט Operation מכיל נתוני סטטוס.

רשימה מלאה של נקודות הקצה של Observability API זמינה במאמרי העזרה של Observability API.

אם נתקלתם בשגיאות הרשאה כשניסיתם ליצור מערך נתונים מקושר, כדאי לעיין במאמר בנושא פתרון בעיות שקשורות להרשאות.

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