מידע על תצוגות מפורטות ב-Analytics

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

סקירה כללית

תצוגת ניתוח נתונים היא משאב שאפשר להריץ עליו שאילתות. כלומר, אחרי שמגדירים תצוגת ניתוח נתונים, אפשר לכתוב שאילתות שבהן מציינים את תצוגת ניתוח הנתונים בסעיף FROM.

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

תצוגות מפורטות ב-Analytics הן לא תצוגות מהותיות. תצוגת ניתוח נתונים היא לא תצוגה שחושבה מראש ושומרת במטמון את תוצאות השאילתות באופן תקופתי. לכן, שליחת שאילתה לתצוגת ניתוח נתונים שקולה לשליחת שאילתה לתצוגות שמופיעות בשאילתה של תצוגת ניתוח הנתונים.

תצוגות מפורטות ב-Analytics הן כלי יעיל יותר משאילתות שמורות, שהן שאילתות שמריצים בדף Observability Analytics ואז שומרים. אפשר להריץ מחדש שאילתה שמורה, אבל אי אפשר להריץ שאילתה על התוצאות של שאילתה שמורה.

סוגים של תצוגות מפורטות ב-Analytics

יש שני סוגים של תצוגות ניתוח נתונים: תצוגות שהוגדרו על ידי המשתמש ותצוגות שהוגדרו על ידי המערכת:

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

  • תצוגות מפורטות ב-Analytics שמוגדרות על ידי המערכת הן תצוגות מפורטות ב-Analytics שנוצרות על ידי Google Cloud שירותים. אפשר להריץ שאילתות בתצוגות ניתוח נתונים שהוגדרו על ידי המערכת. עם זאת, אי אפשר לערוך או למחוק אותם.

מידע על הצגת התצוגות המפורטות של Analytics ב Google Cloud פרויקט זמין במאמר הצגת התצוגות המפורטות של Analytics.

המיקום של תצוגות מפורטות ב-Analytics

המיקום של תצוגת ניתוח נתונים נקבע לפי המיקום של המשאבים שהיא שולחת להם שאילתות. לדוגמה, אם תצוגת ניתוח נתונים שולחת שאילתה לתצוגת יומן שנמצאת במיקום global, גם המיקום של תצוגת ניתוח הנתונים חייב להיות global. כשמשתמשים ב Google Cloud מסוף כדי ליצור תצוגת ניתוח, המיקום מוגדר באופן אוטומטי.

תרחישים לדוגמה

בדוגמאות הבאות אפשר לראות איך אפשר להשתמש בתצוגות ניתוח נתונים כדי לפשט שאילתות ולעשות בהן שימוש חוזר.

שאילתה לפרטי הרשת

רוצים לנתח את ביצועי הרשת באמצעות VPC Flow Logs. צריך לנתח את הביצועים הכוללים של הרשת ולזהות רשתות ספציפיות, כתובות IP ומארחים. המידע הזה מאוחסן בשדות מקוננים בשדה json_payload של רשומה ביומן.

כדי לפשט את שאילתות הניתוח, יוצרים את תצוגת הניתוח הבאה ומקצים לה את השם network_details:

SELECT
  -- Create a column for each network field.
  JSON_VALUE(resource.labels.subnetwork_name) subnetwork_name,
  JSON_VALUE(json_payload.src_instance.vm_name) vm_name,
  JSON_VALUE(json_payload.connection.src_ip) as src_ip,
  JSON_VALUE(json_payload.connection.src_port) as src_port,
  JSON_VALUE(json_payload.connection.dest_ip) as dest_ip,
  JSON_VALUE(json_payload.connection.dest_port) as dest_port,
  CAST(JSON_VALUE(json_payload.bytes_sent) as INT64) as bytes_sent,
  CAST(JSON_VALUE(json_payload.packets_sent) as INT64) as packets_sent
FROM
  -- Query one log view.
  `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID`
WHERE
  -- Only query the VPC Flow Logs log.
  log_id = "compute.googleapis.com/vpc_flows"
  AND SEARCH(json_payload.reporter, "SRC")

לפני שמשתמשים בשאילתה, צריך להגדיר את הערכים של המשתנים הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: המיקום של תצוגת היומן.
  • ‫BUCKET_ID: השם או המזהה של קטגוריה ביומן.
  • ‫LOG_VIEW_ID: המזהה של תצוגת היומן, שמוגבל ל-100 תווים ויכול לכלול רק אותיות, ספרות, קווים תחתונים ומקפים.

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

SELECT vm_name, bytes_sent, packets_sent,
FROM `analytics_view.my_project.global.network_details`
ORDER BY bytes_sent DESC
LIMIT 100

שאילתת בסיס לניתוח זמן האחזור של API

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

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

SELECT week, MIN(took_ms) as min, MAX(took_ms) AS max, AVG(took_ms) AS avg
FROM (
  SELECT TIMESTAMP_TRUNC(timestamp, WEEK) AS week,
  CAST( JSON_VALUE(json_payload, '$."http.resp.took_ms"') AS INT64) as took_ms
  FROM
    -- Query one log view.
    `PROJECT_ID.LOCATION.BUCKET_ID.LOG_VIEW_ID`
  WHERE json_payload IS NOT NULL
    AND SEARCH(labels,"frontend")
    AND JSON_VALUE(json_payload.message) = "request complete"
  ORDER BY took_ms DESC, timestamp ASC
)
GROUP BY week ORDER BY week

מגבלות

המגבלות הבאות רלוונטיות לתצוגות מפורטות של נתונים ב-Analytics:

  • תצוגת ניתוח נתונים יכולה לשלוח שאילתות רק לתצוגות של יומנים.
  • משאב ההורה של תצוגת ניתוח נתונים חייב להיות Google Cloud פרויקט.
  • אפשר להריץ שאילתות בתצוגת ניתוח נתונים רק בדף Observability Analytics, ורק כשמשתמשים במנוע השאילתות Observability Analytics (ברירת מחדל).
  • כל התצוגות המפורטות שתצוגת ניתוח נתונים שולחת אליהן שאילתה צריכות להיות באותו מיקום.
  • כדי ליצור תצוגות מפורטות של נתוני Analytics או לנהל אותן, צריך להשתמש במסוף Google Cloud .
  • בכל פרויקט Google Cloud אפשר ליצור עד 100 תצוגות ניתוח.
  • אפשר ליצור לכל היותר 50 תצוגות ניתוח נתונים לכל אזור.
  • בכל Google Cloud פרויקט, תצוגת ניתוח נתונים יכולה להיות ב-10 אזורים לכל היותר.

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