יצירת שאילתות שמורות

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

במאמר ניהול שאילתות שמורות מוסבר איך למחוק שאילתות שמורות ולנהל את היסטוריית השאילתות השמורות.

ההרשאות הנדרשות

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

לכל המשתמשים עם התפקיד אדמין ב-Dataform (roles/dataform.admin) יש גישת בעלים לכל השאילתות השמורות שנוצרו בפרויקט.

למידע נוסף על ניהול הזהויות והרשאות הגישה (IAM) ב-BigQuery, קראו את המאמר בקרת גישה באמצעות IAM.

הרשאות ליצירת שאילתות שמורות

כדי ליצור ולהריץ שאילתות שמורות, צריך את הרשאות ה-IAM הבאות:

  • dataform.locations.get
  • dataform.locations.list
  • dataform.repositories.list
  • dataform.repositories.create

אתם יכולים לקבל את ההרשאות האלה מתפקידי ה-IAM הבאים:

הרשאות לעריכת שאילתות שמורות

כדי לערוך ולהריץ שאילתות שמורות, צריך את התפקידים הבאים ב-IAM:

הרשאות לצפייה בשאילתות שמורות

כדי להציג ולהריץ שאילתות שמורות, צריך את התפקידים הבאים ב-IAM:

שיקולי אבטחה לגבי שאילתות שמורות

נכסי הקוד ב-BigQuery מופעלים על ידי Dataform, ולכן חשוב להביא בחשבון את ההשלכות הבאות על האבטחה של משתמשים שיש להם גישה לנכסים האלה:

  • ההרשאות ברמת הפרויקט ב-Dataform קובעות את הרשאות הגישה לנכסי הקוד. משתמשים עם ההרשאה dataform.repositories.list – שכלולה בתפקידים סטנדרטיים ב-BigQuery כמו BigQuery Job User,‏ BigQuery Studio User ו-BigQuery User – יכולים לראות את כל נכסי הקוד בחלונית Explorer של הפרויקט ב- Cloud de Confiance , גם אם הם לא יצרו את הנכסים האלה או שהנכסים האלה לא שותפו איתם. כדי להגביל את החשיפה, אתם יכולים ליצור תפקידים בהתאמה אישית שלא כוללים את ההרשאה dataform.repositories.list.
  • משתמשים שיכולים לערוך את הנכסים האלה יכולים לגשת לכל הסודות ששותפו עם סוכן השירות של Dataform. כדי לאבטח את פרטי הכניסה, צריך להגביל את הגישה ליצירה ולעריכה למשתמשים מהימנים, ולהגביל את הגישה של סוכן השירות של Dataform לסודות. מידע נוסף זמין במאמר גישה לסודות במהלך התקנת החבילה.

מידע נוסף זמין במאמר שיקולי אבטחה לגבי הרשאות ב-Dataform.

הגדרת אזור ברירת המחדל לנכסי קוד

כל נכסי הקוד החדשים בפרויקט Cloud de Confiance משתמשים באזור ברירת המחדל. אחרי שיוצרים את הנכס, אי אפשר לשנות את האזור שלו.

כדי להגדיר את אזור ברירת המחדל לנכסי קוד חדשים:

  1. נכנסים לדף BigQuery.

    כניסה ל-BigQuery

  2. בחלונית הימנית, לוחצים על Files כדי לפתוח את דפדפן הקבצים:

    לוחצים על **Files** כדי לפתוח את דפדפן הקבצים.

  3. ליד שם הפרויקט, לוחצים על View files panel actions > Switch code region.

  4. בוחרים את אזור הקוד שרוצים להשתמש בו כברירת מחדל.

  5. לוחצים על Save.

רשימת האזורים הנתמכים ב-BigQuery Studio

הצפנה באמצעות CMEK

אתם יכולים להצפין את השאילתות השמורות שמגובות ב-Dataform באמצעות מפתחות הצפנה בניהול הלקוח (CMEK), על ידי שימוש במפתח CMEK שמוגדר כברירת מחדל ברמת הפרויקט ל-Dataform API. אי אפשר להחיל מפתחות CMEK נפרדים על שאילתות שמורות במסוף Cloud de Confiance . ההגדרות החדשות חלות רק על שאילתות שמורות חדשות.

למידע נוסף ולהוראות להגדרת מפתח ברירת המחדל, ראו שימוש ב-CMEK כדי להגן על נכסי קוד ב-BigQuery Studio.

יצירת שאילתות שמורות

כדי ליצור שאילתה שמורה:

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    כניסה ל-BigQuery

  2. לוחצים על שאילתת SQL.

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

    SELECT
      name,
      SUM(number) AS total
    FROM
      `bigquery-public-data.usa_names.usa_1910_2013`
    GROUP BY
      name
    ORDER BY
      total DESC
    LIMIT
      10;

    לחלופין, אתם יכולים להשתמש בחלונית Reference כדי ליצור שאילתות חדשות.

  4. לוחצים על Save > שמירת שאילתה או על Control+S (או Command+S ב-macOS).

  5. בתיבת הדו-שיח Save query, מקלידים שם לשאילתה השמורה.

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

  7. לוחצים על Save.

    הגרסה הראשונה של השאילתה השמורה נוצרת.

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

    סרגל הכלים ליד עורך השאילתות.

    התכונה Comments בסרגל הכלים נמצאת בגרסת Preview. כדי לשלוח משוב או לבקש תמיכה בתכונה הזו, שלחו אימייל לכתובת bqui-workspace-pod@google.com.

שיתוף שאילתות שמורות

כדי לשתף שאילתה שמורה עם משתמש, קודם צריך לתת לו גישה לשאילתה השמורה ולהוסיף אותו לתפקיד IAM מתאים. אחר כך אתם יוצרים קישור לשאילתה השמורה ומשתפים את הקישור עם המשתמש.

משתמשים שאתם משתפים איתם שאילתה רואים רק את הגרסה האחרונה שלה. שינויים שנשמרו אוטומטית ולא שמרתם באופן מפורש לא מופיעים בשאילתה המשותפת.

כדי לשתף שאילתה שמורה:

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    כניסה ל-BigQuery

  2. בחלונית השמאלית, לוחצים על Files כדי לפתוח את דפדפן הקבצים.

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

  3. בחלונית Files, מרחיבים את הפרויקט ואת תיקיות המשנה כדי למצוא את השאילתה השמורה שרוצים לשתף.

  4. לוחצים על View actions ליד השאילתה השמורה, ואז על Share > Manage permissions.

  5. בחלונית Manage permissions, לוחצים על Add user/group.

  6. בשדה New principals, מזינים חשבון משתמש.

  7. ברשימה Role, בוחרים אחד מהתפקידים הבאים:

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

  9. לוחצים על Save.

  10. כדי לחזור לפרטי השאילתה השמורה, לוחצים על סגירה.

  11. כדי ליצור קישור לשאילתה השמורה, לוחצים על View actions > Share > Copy link.

    הקישור מועתק ללוח.

פתיחת גרסה של שאילתה שמורה כשאילתה חדשה

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

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    כניסה ל-BigQuery

  2. בחלונית הימנית, לוחצים על Files כדי לפתוח את דפדפן הקבצים:

    לוחצים על **Files** כדי לפתוח את דפדפן הקבצים.

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

  3. בחלונית Files, מרחיבים את הפרויקט ואת תיקיות המשנה כדי למצוא את השאילתה השמורה שרוצים לפתוח.

  4. לוחצים על השאילתה השמורה ואז על היסטוריית גרסאות.

  5. לוחצים על View actions ליד גרסה של שאילתה שמורה, ואז על Open as new query.

עדכון שאילתות שמורות

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

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    כניסה ל-BigQuery

  2. בחלונית הימנית, לוחצים על Files כדי לפתוח את דפדפן הקבצים:

    לוחצים על **Files** כדי לפתוח את דפדפן הקבצים.

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

  3. בחלונית Files, מרחיבים את הפרויקט ואת תיקיות המשנה כדי למצוא את השאילתה השמורה שרוצים לעדכן.

  4. לוחצים על השאילתה השמורה כדי לפתוח אותה.

  5. לשנות את השאילתה.

  6. כדי לשמור את השאילתה ששיניתם, לוחצים על Save query > Save query או על Control+S (או Command+S ב-macOS).

    נוצרת גרסה חדשה של השאילתה.

העלאת שאילתות שמורות

אתם יכולים להעלות שאילתת SQL מקומית כדי להשתמש בה כשאילתה שמורה ב-BigQuery Studio. השאילתה השמורה שהועלתה תופיע גם בדף BigQuery במסוף Cloud de Confiance .

כדי להעלות שאילתה שמורה:

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    כניסה ל-BigQuery

  2. בחלונית הימנית, לוחצים על Files כדי לפתוח את דפדפן הקבצים:

    לוחצים על **Files** כדי לפתוח את דפדפן הקבצים.

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

  3. בחלונית Files, לוחצים על View actions לצד התיקייה שאליה רוצים להעלות את השאילתה, ואז לוחצים על Upload > Query.

  4. בתיבת הדו-שיח Upload SQL, בשדה SQL לוחצים על Browse ובוחרים את השאילתה שרוצים להעלות.

  5. אופציונלי: בשדה שם SQL, עורכים את שם השאילתה.

  6. בשדה Region, בוחרים את האזור שבו רוצים להעלות את השאילתה השמורה.

  7. לוחצים על Upload.

אפשר לגשת לשאילתה השמורה דרך החלונית Files או החלונית Explorer.

פתרון בעיות בשאילתות שמורות

בקטע הזה מוסבר איך לפתור בעיות נפוצות בשאילתות שמורות.

אי אפשר לשמור שאילתות

אם אתם לא מצליחים לשמור שאילתה, יכול להיות ש-Dataform API לא מופעל בפרויקט. ‫Dataform API מופעל אוטומטית ברוב הפרויקטים, אבל הוא לא מופעל בפרויקטים שמשתמשים באילוץ Restrict Resource Service Usage של מדיניות הארגון, כמו פרויקטים מובטחים.

כדי לפתור את הבעיה, צריך לוודא ש-Dataform API מופעל:

  1. במסוף Cloud de Confiance , נכנסים לדף APIs & Services.
  2. מחפשים את Dataform API ומוודאים שהוא מופעל.
  3. אם ה-API לא מופעל, לוחצים על Enable.
  4. נסו שוב באמצעות שאילתות שמורות.

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

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

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

שאילתות שמורות בגרסה הקלאסית

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

ההרשאות הנדרשות לשאילתות שמורות קלאסיות

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

  • שאילתות שמורות פרטיות בגרסה הקלאסית:
    • כדי ליצור שאילתות שמורות פרטיות בגרסה הקלאסית לא נדרשות הרשאות מיוחדות. אתם יכולים לשמור שאילתה פרטית בכל פרויקט, אבל רק אתם יכולים לראות, לעדכן או למחוק אותה.
  • שאילתות שמורות קלאסיות ברמת הפרויקט:
    • כדי ליצור שאילתה שמורה קלאסית ברמת הפרויקט, צריך את ההרשאות bigquery.savedqueries.create. התפקיד המוגדר מראש bigquery.admin כולל את ההרשאות של bigquery.savedqueries.create.
    • כדי לצפות בשאילתה שמורה קלאסית ברמת הפרויקט, צריך את ההרשאות bigquery.savedqueries.get ו-bigquery.savedqueries.list. התפקידים המוגדרים מראש bigquery.admin ו-bigquery.user כוללים את ההרשאות bigquery.savedqueries.get ו-bigquery.savedqueries.list.
    • כדי לעדכן שאילתה שמורה קלאסית ברמת הפרויקט, צריך את ההרשאות bigquery.savedqueries.update. התפקיד המוגדר מראש bigquery.admin כולל את ההרשאות של bigquery.savedqueries.update.
    • כדי למחוק שאילתה שמורה קלאסית ברמת הפרויקט, צריך את ההרשאות bigquery.savedqueries.delete. התפקיד המוגדר מראש bigquery.admin כולל את ההרשאות של bigquery.savedqueries.delete.
  • שאילתות שמורות ציבוריות בגרסה הקלאסית:
    • לא נדרשות הרשאות מיוחדות כדי ליצור שאילתות שמורות קלאסיות שגלויות לכולם. אתם יכולים לשמור שאילתה שמורה קלאסית שגלויה לכולם בכל פרויקט, אבל רק אתם יכולים לעדכן או למחוק אותה. כל מי שיש לו את הקישור יכול לצפות בשאילתה שמורה קלאסית שגלויה לכולם.

למידע נוסף על תפקידי IAM ב-BigQuery, קראו את המאמר תפקידים והרשאות מוגדרים מראש.

יצירת שאילתות שמורות קלאסיות

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    כניסה ל-BigQuery

  2. לוחצים על שאילתת SQL.

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

    SELECT
      name,
      SUM(number) AS total
    FROM
      `bigquery-public-data.usa_names.usa_1910_2013`
    GROUP BY
      name
    ORDER BY
      total DESC
    LIMIT
      10;
  4. לוחצים על שמירת השאילתה (גרסה קלאסית) > שמירת השאילתה (גרסה קלאסית).

  5. בתיבת הדו-שיח Save query, נותנים שם לשאילתה ומגדירים את Visibility לאחת מהאפשרויות הבאות:

    • אישית (ניתנת לעריכה רק על ידך) לשאילתה שמורה קלאסית פרטית.
    • ‫Project (editable by principals with appropriate permissions) לשאילתה קלאסית שמורה ברמת הפרויקט.
    • ‫Public לשאילתה ציבורית שמורה קלאסית.
  6. לוחצים על Save.

שיתוף שאילתות שמורות בגרסה הקלאסית

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

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

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

אם אתם מתכננים לשתף שאילתה שמורה קלאסית, כדאי לכלול בשאילתה הערה שמתארת את המטרה שלה.

כדי לשתף שאילתה שמורה קלאסית, פועלים לפי השלבים הבאים:

  1. בחלונית הימנית, לוחצים על Explorer.

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

  2. בחלונית Explorer, מרחיבים את הפרויקט ולוחצים על (Classic) Queries.

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

  4. לוחצים על הצגת הפעולות לצד השאילתה ואז לוחצים על העתקת הקישור.

  5. משתפים את הקישור עם המשתמשים שרוצים לתת להם גישה לשאילתה.

עדכון שאילתות שמורות קלאסיות

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    כניסה ל-BigQuery

  2. בחלונית השמאלית, לוחצים על Explorer:

    כפתור מודגש לחלונית Explorer.

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

  3. בחלונית Explorer, מרחיבים את הפרויקט ואת התיקייה (Classic) Queries, ואם צריך, גם את התיקייה Project queries.

  4. לוחצים על השם של שאילתה שמורה קלאסית כדי לפתוח אותה.

  5. לשנות את השאילתה.

  6. כדי לשמור את השאילתה ששיניתם, לוחצים על Save Query (Classic) > Save query (Classic).

פתרון בעיות בשאילתות שמורות קלאסיות

בקטע הזה מוסבר איך לפתור בעיות נפוצות בשאילתות שמורות קלאסיות.

אי אפשר לגשת לשאילתות השמורות של משתמש שהושבת

בניגוד לשאילתות שמורות ב-BigQuery Studio, שאדמינים של פרויקטים יכולים לגשת אליהן, אי אפשר לגשת לשאילתות שמורות קלאסיות פרטיות אם המשתמש שיצר אותן עזב את הארגון וחשבון Google שלו הושבת או הושעה. השאילתות נעלמות מהמסוף של Cloud de Confiance לכל המשתמשים, חוץ מהבעלים המקוריים.

כדי לשחזר את השאילתות האלה, אדמין ב-Google Workspace או ב-Cloud Identity צריך לבצע את הפעולות הבאות:

  1. מפעילים מחדש באופן זמני את החשבון של המשתמש שהושבת.
  2. מאפסים את הסיסמה של המשתמש.
  3. נכנסים למסוף Cloud de Confiance בתור המשתמש שהופעל מחדש.
  4. בעורך השאילתות, פותחים כל שאילתה שמורה.
  5. לוחצים על שמירה או על שמירת השאילתה בשם.
  6. משנים את הערך של Visibility מ-Personal ל-Project.
  7. לוחצים על Save. כך השאילתה תהיה גלויה למשתמשים אחרים באותו פרויקט שיש להם את ההרשאות הנדרשות.
  8. אחרי שכל השאילתות הועברו, משעים מחדש את חשבון המשתמש.

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

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