שמירת קיבולת של BI Engine

כדי לרכוש קיבולת של BI Engine, צריך ליצור הזמנה. ‫BI Engine זמין רק לפרויקטים עם מהדורה נתמכת. ההזמנות נמדדות ב-GiB של זיכרון. ההזמנה משויכת לפרויקט ולאזור שאתם מציינים כשאתם יוצרים את ההזמנה. ‫BI Engine משתמש בקיבולת הזו כדי לשמור נתונים במטמון. מידע על הגודל המקסימלי של הזמנה ב-BI Engine זמין במאמר מכסות ומגבלות.

כשמשתמשים ב-BI Engine, החיובים מבוססים על הקיבולת של BI Engine שרכשתם עבור הפרויקט. החיוב על הזמנות של BI Engine הוא לפי ‎GiB/hour, והמחיר משתנה בהתאם לאזור. אפשר לעיין בתמחור של BI Engine.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות ליצירה ולמחיקה של הזמנות, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM אדמין של משאבי BigQuery (roles/bigquery.resourceAdmin) בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

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

יצירת בקשה לשמירת מקום

כדי לשריין קיבולת של BI Engine לפי דרישה, פועלים לפי השלבים הבאים:

המסוף

  1. בדף BigQuery, בקטע Administration (ניהול), עוברים לדף BI Engine.

    מעבר אל BI Engine

  2. לוחצים על Create reservation (יצירת בקשה לשמירת מקום).

  3. בדף Create reservation, בשלב 1:

    • מאמתים את שם הפרויקט.
    • בוחרים את המיקום. המיקום צריך להיות זהה למיקום של מערכי הנתונים שאתם שולחים לגביהם שאילתות.
    • מזיזים את פס ההזזה לכמות נפח הזיכרון שרוצים להקצות. בדוגמה הבאה, הקיבולת נקבעת כ-2GiB. הקיבולת המקסימלית הנוכחית היא 250GiB. אפשר לבקש להגדיל את הקיבולת המקסימלית של ההזמנות בפרויקטים. הגדלות של הזמנות זמינות ברוב האזורים, והעיבוד שלהן יכול להימשך בין 3 ימים לשבוע.

      מיקום הקיבולת של BI Engine

  4. לוחצים על הבא.

  5. טבלאות מועדפות (אופציונלי). טבלאות מועדפות מאפשרות להגביל את ההאצה של BI Engine לקבוצה מסוימת של טבלאות. בכל שאר הטבלאות נעשה שימוש במשבצות רגילות של BigQuery.

    בשדה Table Id, מציינים את הטבלה שרוצים להאיץ באמצעות התבנית: PROJECT.DATASET.TABLE.

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

    • PROJECT: מזהה הפרויקט ב- Google Cloud
    • DATASET: מערך הנתונים
    • TABLE: הטבלה שרוצים להאיץ
  6. לוחצים על הבא.

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

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

SQL

כדי ליצור או לשנות הזמנה של BI Engine, משתמשים בהצהרת ה-DDL‏ ALTER BI_CAPACITY SET OPTIONS.

  1. במסוף Google Cloud , עוברים לדף BigQuery.

    כניסה ל-BigQuery

  2. מזינים את ההצהרה הבאה בעורך השאילתות:

    ALTER BI_CAPACITY `PROJECT_ID.LOCATION_ID.default`
    SET OPTIONS (
      size_gb = VALUE,
      preferred_tables =
        ['TABLE_PROJECT_ID.DATASET.TABLE1',
        'TABLE_PROJECT_ID.DATASET.TABLE2']);

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

    • PROJECT_ID: מזהה הפרויקט האופציונלי שירוויח מההאצה של BI Engine. אם לא מציינים פרויקט, המערכת משתמשת בפרויקט שמוגדר כברירת מחדל.
    • LOCATION_ID: המיקום שבו צריך לשמור את הנתונים במטמון, עם התחילית region-. דוגמאות: region-us, region-us-central1.
    • VALUE: הגודל של הקיבולת שהוזמנה ל-BI Engine בגיביבייט, מ-1 עד 250 GiB.INT64 אתם יכולים לבקש להגדיל את קיבולת ההזמנה המקסימלית של הפרויקטים שלכם. אפשר להגדיל את ההזמנה ברוב האזורים, והעיבוד של הבקשה יכול להימשך בין 3 ימים לשבוע. ההגדרה VALUE מחליפה את הערך הקיים, אם יש כזה. הגדרה של NULL מוחקת את הערך של האפשרות הזו.
    • TABLE_PROJECT_ID.DATASET.TABLE: רשימה אופציונלית של טבלאות מועדפות שצריך להחיל עליהן את ההאצה. פורמט: TABLE_PROJECT_ID.DATASET.TABLE or DATASET.TABLE. אם לא מציינים פרויקט, המערכת משתמשת בפרויקט ברירת המחדל.

  3. לוחצים על הפעלה.

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

BQ

משתמשים בפקודה bq update ומספקים את הצהרת שפת הגדרת הנתונים (DDL) כפרמטר השאילתה:

bq --project_id=PROJECT_ID update \
    --bi_reservation_size=SIZE \
    --location=LOCATION \
    --reservation

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

  • PROJECT_ID: מזהה הפרויקט
  • SIZE: קיבולת הזיכרון של ההזמנה בגיביבייט, מ-1 עד 250 גיביבייט. אתם יכולים לבקש להגדיל את קיבולת ההזמנה המקסימלית של הפרויקטים שלכם. הגדלות של הזמנות זמינות ברוב האזורים, והעיבוד שלהן יכול להימשך בין 3 ימים לשבוע.
  • LOCATION: המיקום של מערך הנתונים שאתם שולחים אליו שאילתה

הערכה ומדידה של הקיבולת

כדי להעריך את דרישות הקיבולת להזמנת BI Engine, פועלים לפי השלבים הבאים:

  1. כדי לקבוע את הגודל הלוגי של הטבלה, מעיינים בתצוגה TOTAL_LOGICAL_BYTES ומשתמשים בגודל הזה להזמנה הראשונית של BI Engine. לדוגמה:

    SELECT
      SUM(TOTAL_LOGICAL_BYTES) / 1024.0 / 1024.0 / 1024.0 AS logical_size_gb
    FROM
      `region-us.INFORMATION_SCHEMA.TABLE_STORAGE`
    WHERE
      TABLE_NAME IN UNNEST(["Table1", "Table2"]);

    לדוגמה, אם אתם מריצים שאילתות על קבוצת טבלאות שמכילות נתונים בנפח כולל של 200GiB, מומלץ להתחיל עם הזמנה של 200GiB ב-BI Engine. שאילתות סלקטיביות יותר שמשתמשות רק בחלק משדות או ממחיצות זמינים יכולות להתחיל עם גודל שריון קטן יותר.

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

  3. משווים את ההקצאה של זיכרון ה-RAM ב-BI Engine למספר הבייטים בשימוש, reservation/used_bytes במדדים של Cloud Monitoring bigquerybiengine.

  4. כדאי להתאים את הקיבולת של השמורה בהתאם לתוצאות. במקרים רבים, הזמנה קטנה יותר יכולה להאיץ את רוב השאילתות, ולחסוך כסף ומשאבים. מידע נוסף על Monitoring for BI Engine זמין במאמר בנושא BI Engine monitoring.

הגורמים הבאים משפיעים על גודל ההזמנה ב-BI Engine:

  • ‫BI Engine שומר במטמון רק את העמודות והשורות שמתבצעת אליהן גישה לעיתים קרובות, ושנדרשות לעיבוד השאילתה.
  • כשניצול ההזמנה מגיע ל-100%,‏ BI Engine מנסה להעביר נתונים שלא נעשה בהם שימוש לאחרונה כדי לפנות מקום לביצוע שאילתות חדשות.
  • אם כמה שאילתות שדורשות הרבה משאבי מחשוב משתמשות באותו מערך נתונים, BI Engine טוען עותקים נוספים של הנתונים כדי לחלק מחדש את העומס ולשפר את זמני התגובה.

שינוי הזמנה

כדי לשנות הזמנה קיימת:

המסוף

כדי לציין קבוצה של טבלאות להאצה בהזמנה קיימת, פועלים לפי השלבים הבאים:

  1. במסוף Google Cloud , עוברים לדף BigQuery.

    כניסה ל-BigQuery

  2. בתפריט הניווט של BigQuery, לוחצים על BI Engine.

    אם הפרויקט מוגדר לשימוש בטבלאות מועדפות, קבוצת טבלאות מוצגת בעמודה Preferred Tables.

    תמונה

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

  4. מזיזים את פס ההזזה GiB of Capacity (קיבולת ב-GiB) לכמות נפח הזיכרון שרוצים לשריין. לוחצים על Next.

  5. טבלאות מועדפות: כדי לציין קבוצה של טבלאות להאצה בהזמנה קיימת, בשדה מזהה הטבלה מציינים את הטבלה שרוצים להאיץ באמצעות התבנית: PROJECT.DATASET.TABLE.

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

    • PROJECT: מזהה הפרויקט ב- Google Cloud
    • DATASET: מערך הנתונים
    • TABLE: הטבלה שרוצים להאיץ

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

    לוחצים על הבא.

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

SQL

אפשר להשתמש בהצהרת ה-DDL‏ ALTER BI_CAPACITY SET OPTIONS כדי ליצור או לשנות הזמנה של BI Engine.

  1. במסוף Google Cloud , עוברים לדף BigQuery.

    כניסה ל-BigQuery

  2. מזינים את ההצהרה הבאה בעורך השאילתות:

    ALTER BI_CAPACITY `PROJECT_ID.LOCATION_ID.default`
    SET OPTIONS (
      size_gb = VALUE,
      preferred_tables =
        [`TABLE_PROJECT_ID.DATASET.TABLE1`,
        `TABLE_PROJECT_ID.DATASET.TABLE2`]);

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

    • PROJECT_ID: מזהה אופציונלי של הפרויקט שירוויח מההאצה של BI Engine. אם לא מציינים פרויקט, המערכת משתמשת בפרויקט שמוגדר כברירת מחדל.
    • LOCATION_ID: המיקום שבו צריך לשמור את הנתונים במטמון, עם התחילית region-. דוגמאות: region-us, region-us-central1.
    • VALUE: INT64 גודל ההזמנה של קיבולת BI Engine בגיביבייט, 1 עד 250 GiB. אתם יכולים לבקש להגדיל את קיבולת ההזמנה המקסימלית של הפרויקטים שלכם. אפשר להגדיל את ההזמנה ברוב האזורים, והעיבוד של הבקשה יכול להימשך בין 3 ימים לשבוע. ההגדרה VALUE מחליפה את הערך הקיים, אם יש כזה. הגדרה של NULL מוחקת את הערך של האפשרות הזו.
    • TABLE_PROJECT_ID.DATASET.TABLE: רשימה אופציונלית של טבלאות מועדפות שצריך להחיל עליהן את ההאצה. פורמט: TABLE_PROJECT_ID.DATASET.TABLE or DATASET.TABLE. אם לא מציינים פרויקט, המערכת משתמשת בפרויקט ברירת המחדל.

  3. לוחצים על הפעלה.

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

מחיקת הזמנה

כדי למחוק הזמנת קיבולת:

המסוף

  1. בדף BigQuery, בקטע Administration (ניהול), עוברים לדף BI Engine.

    מעבר אל BI Engine

  2. בקטע Reservations (הזמנות), מוצאים את ההזמנה.

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

  4. בתיבת הדו-שיח למחוק את ההזמנה?, מזינים מחיקה ולוחצים על מחיקה.

SQL

הגדרת האפשרויות של הקיבולת של BI Engine.

  1. במסוף Google Cloud , עוברים לדף BigQuery.

    כניסה ל-BigQuery

  2. מזינים את ההצהרה הבאה בעורך השאילתות:

    ALTER BI_CAPACITY `PROJECT_ID.LOCATION_ID.default`
    SET OPTIONS (
      size_gb = 0);

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

    • PROJECT_ID: מזהה אופציונלי של הפרויקט שירוויח מההאצה של BI Engine. אם לא מציינים פרויקט, המערכת משתמשת בפרויקט שמוגדר כברירת מחדל.
    • LOCATION_ID: המיקום שבו צריך לשמור את הנתונים במטמון, עם התחילית region-. דוגמאות: region-us, region-us-central1.

    כשמוחקים את כל ההזמנות של קיבולת בפרויקט, BI Engine מושבת בפרויקט הזה.

  3. לוחצים על הפעלה.

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

BQ

משתמשים בפקודה bq update ומספקים את הצהרת ה-DDL כפרמטר של השאילתה.

bq --project_id="PROJECT_ID" \
update --reservation
    --bi_reservation_size=0 \
    --location=LOCATION

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

  • PROJECT_ID: מזהה הפרויקט
  • LOCATION: המיקום של מערך הנתונים שאתם שולחים אליו שאילתה

אימות פרטי BI Engine

כדי לקבל מידע על הקיבולת של BI Engine, אפשר להריץ שאילתה על הטבלאות INFORMATION_SCHEMA.

אימות סטטוס ההזמנה

כדי לבדוק את סטטוס ההזמנה, כולל קבוצה של טבלאות מועדפות, צריך להציג את INFORMATION_SCHEMA.BI_CAPACITIES באמצעות שאילתת SQL. לדוגמה:

SELECT
  *
FROM
  `<PROJECT_ID>.region-<REGION>.INFORMATION_SCHEMA.BI_CAPACITIES`;

במסוף, התוצאה של שאילתת ה-SQL הזו נראית כך: Google Cloud

תמונה

צפייה בשינויים בהזמנה

כדי לראות את היסטוריית השינויים של הזמנה מסוימת, משתמשים INFORMATION_SCHEMA.BI_CAPACITY_CHANGES בתצוגה באמצעות שאילתת SQL. לדוגמה:

SELECT
  *
FROM
  `<PROJECT_ID>.region-<REGION>.INFORMATION_SCHEMA.BI_CAPACITY_CHANGES`
ORDER BY
  change_timestamp DESC
LIMIT 3;

ב Google Cloud מסוף, התוצאה של שאילתת ה-SQL הזו נראית כך:

שורות התוצאות עם change_timestamp project_id project_number

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