שאילתות בפורמטים של טבלאות פתוחות באמצעות קובצי מניפסט

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

חלק מהפורמטים של טבלאות בקוד פתוח, כמו Hudi ו-Delta Lake, מייצאים את המצב הנוכחי שלהם כקובץ מניפסט אחד או יותר. קובץ מניפסט מכיל רשימה של קובצי נתונים שיוצרים טבלאות. התמיכה במניפסט ב-BigQuery מאפשרת לשלוח שאילתות ולטעון נתונים שמאוחסנים בפורמטים של טבלאות פתוחות.

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

  • מפעילים את ממשקי ה-API של BigQuery Connection,‏ BigQuery Reservation ו-BigLake.

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    הפעלת ממשקי ה-API

  • כדי ליצור טבלאות BigLake, אפשר להריץ את פקודות Spark באחת מהשיטות הבאות:

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

    1. יצירת קישור למשאבים ב-Cloud
    2. הגדרת גישה לחיבור הזה

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

כדי להריץ שאילתות על טבלאות BigLake שמבוססות על נתוני Hudi ו-Delta Lake, צריך לוודא שיש לכם את התפקידים הבאים:

  • משתמש עם הרשאת גישה לחיבור BigQuery‏ (roles/bigquery.connectionUser)
  • צפייה בנתוני BigQuery ‏ (roles/bigquery.dataViewer)
  • משתמש BigQuery‏ (roles/bigquery.user)

אפשר גם להריץ שאילתות על טבלאות חיצוניות של Hudi. עם זאת, מומלץ לשדרג את הטבלה החיצונית ל-BigLake. כדי להריץ שאילתות על טבלאות חיצוניות של Hudi, צריך לוודא שיש לכם את התפקידים הבאים:

  • צפייה בנתוני BigQuery ‏ (roles/bigquery.dataViewer)
  • משתמש BigQuery‏ (roles/bigquery.user)
  • צפייה באובייקטים באחסון (roles/storage.objectViewer)

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

כדי לראות את ההרשאות הנדרשות לשליחת שאילתות לטבלאות BigLake, מרחיבים את הקטע ההרשאות הנדרשות:

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

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

שאילתות של עומסי עבודה ב-Hudi

כדי להריץ שאילתות על נתוני Hudi, פועלים לפי השלבים הבאים:

  1. יצירת טבלה חיצונית על סמך נתוני Hudi.
  2. משדרגים את הטבלה החיצונית ל-BigLake.

יצירת טבלאות חיצוניות של Hudi

כשמסנכרנים טבלאות באמצעות כלי הסנכרון של Hudi ו-BigQuery, צריך להפעיל את הדגל use-bq-manifest-file כדי לעבור לשיטה של קובץ מניפסט. הדגל הזה גם מייצא קובץ מניפסט בפורמט שנתמך על ידי BigQuery, ומשתמש בו כדי ליצור טבלה חיצונית עם השם שצוין בפרמטר --table.

כדי ליצור טבלת Hudi חיצונית, פועלים לפי השלבים הבאים:

  1. כדי ליצור טבלה חיצונית של Hudi, צריך לשלוח משימה לאשכול קיים של Managed Service for Apache Spark. כשיוצרים את המחבר Hudi-BigQuery, צריך להפעיל את הדגל use-bq-manifest-file כדי לעבור לגישה של קובץ המניפסט. הדגל הזה מייצא קובץ מניפסט בפורמט שנתמך על ידי BigQuery, ומשתמש בו כדי ליצור טבלה חיצונית עם השם שצוין בפרמטר --table.

    spark-submit \
       --master yarn \
       --packages com.google.cloud:google-cloud-bigquery:2.10.4 \
       --class org.apache.hudi.gcp.bigquery.BigQuerySyncTool  \
       JAR \
       --project-id PROJECT_ID \
       --dataset-name DATASET \
       --dataset-location LOCATION \
       --table TABLE \
       --source-uri URI  \
       --source-uri-prefix URI_PREFIX \
       --base-path BASE_PATH  \
       --partitioned-by PARTITION_BY \
       --use-bq-manifest-file
    

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

    • JAR: אם אתם משתמשים במחבר Hudi-BigQuery, מציינים hudi-gcp-bundle-0.14.0.jar. אם אתם משתמשים ברכיב Hudi ב-Managed Service for Apache Spark 2.1, צריך לציין /usr/lib/hudi/tools/bq-sync-tool/hudi-gcp-bundle-0.12.3.1.jar

    • PROJECT_ID: מזהה הפרויקט שבו רוצים ליצור את טבלת Hudi BigLake

    • DATASET: מערך הנתונים שבו רוצים ליצור את טבלת Hudi BigLake.

    • LOCATION: המיקום שבו רוצים ליצור את טבלת Hudi BigLake

    • TABLE: השם של הטבלה שרוצים ליצור

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

    • URI: ה-URI של Cloud Storage שיצרתם כדי לאחסן את קובץ המניפסט של Hudi

      ה-URI הזה מצביע על המחיצה ברמה הראשונה. חשוב לכלול את מפתח המחיצה. לדוגמה, gs://mybucket/hudi/mydataset/EventDate=*

    • URI_PREFIX: הקידומת של נתיב ה-URI של Cloud Storage, בדרך כלל זה הנתיב לטבלאות Hudi

    • BASE_PATH: נתיב הבסיס לטבלאות Hudi

      לדוגמה, gs://mybucket/hudi/mydataset/

    • PARTITION_BY: ערך המחיצה

      לדוגמה, EventDate

    למידע נוסף על הגדרת המחבר, ראו מחבר Hudi-BigQuery.

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

שאילתות של עומסי עבודה של דלתא

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

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

  1. יצירת קובץ מניפסט.
  2. יוצרים טבלת BigLake על סמך קובץ המניפסט.
  3. כדי לשפר את הביצועים, אפשר להגדיר אמצעי בקרה מתאימים ברמת פירוט גבוהה או להפעיל שמירת מטא-נתונים במטמון. למידע נוסף, אפשר לעיין במאמר בנושא שדרוג טבלאות BigLake.

יצירת קובץ מניפסט

‫BigQuery תומך בקובץ המניפסט בפורמט SymLinkTextInputFormat, שהוא רשימה של כתובות URI שמופרדות בשורות חדשות. מידע נוסף על יצירת קובץ מניפסט זמין במאמר הגדרת שילוב של Presto עם Delta Lake ושאילתות בטבלאות Delta.

כדי ליצור קובץ מניפסט, שולחים משימה לאשכול קיים של Managed Service for Apache Spark:

SQL

מריצים את הפקודה הבאה בטבלת Delta במיקום path-to-delta-table באמצעות Spark:

GENERATE symlink_format_manifest FOR TABLE delta.`<path-to-delta-table>`

Scala

מריצים את הפקודה הבאה בטבלת Delta במיקום path-to-delta-table באמצעות Spark:

val deltaTable = DeltaTable.forPath(<path-to-delta-table>)
deltaTable.generate("symlink_format_manifest")

Java

מריצים את הפקודה הבאה בטבלת Delta במיקום path-to-delta-table באמצעות Spark:

DeltaTable deltaTable = DeltaTable.forPath(<path-to-delta-table>);
deltaTable.generate("symlink_format_manifest");

Python

מריצים את הפקודה הבאה בטבלת Delta במיקום path-to-delta-table באמצעות Spark:

deltaTable = DeltaTable.forPath(<path-to-delta-table>)
deltaTable.generate("symlink_format_manifest")

יצירת טבלאות Delta BigLake

כדי ליצור טבלת Delta BigLake, משתמשים בהצהרה CREATE EXTERNAL TABLE עם השדה file_set_spec_type שמוגדר לערך NEW_LINE_DELIMITED_MANIFEST:

  1. עוברים לדף BigQuery.

    כניסה ל-BigQuery

  2. בעורך השאילתות, מריצים את ההצהרה CREATE EXTERNAL TABLE:

    CREATE EXTERNAL TABLE PROJECT_ID.DATASET_NAME.TABLE_NAME
    WITH PARTITION COLUMNS(
    `PARTITION_COLUMN PARTITION_COLUMN_TYPE`,)
    WITH CONNECTION `PROJECT_IDREGION.CONNECTION_NAME`
    OPTIONS (
       format = "DATA_FORMAT",
       uris = ["URI"],
       file_set_spec_type = 'NEW_LINE_DELIMITED_MANIFEST',
       hive_partition_uri_prefix = "PATH_TO_DELTA_TABLE"
       max_staleness = STALENESS_INTERVAL,
       metadata_cache_mode = 'CACHE_MODE');
    

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

    • DATASET_NAME: השם של מערך הנתונים שיצרתם
    • TABLE_NAME: השם שרוצים לתת לטבלה
    • REGION: המיקום שבו נמצא החיבור (לדוגמה, us-east1)
    • CONNECTION_NAME: השם של החיבור שיצרתם
    • DATA_FORMAT: כל אחד מהפורמטים הנתמכים (למשל PARQUET)
    • URI: הנתיב לקובץ המניפסט (לדוגמה, gs://mybucket/path)
    • PATH_TO_DELTA_TABLE: קידומת משותפת לכל מזהי ה-URI של המקור לפני שמתחיל קידוד מפתח החלוקה
    • STALENESS_INTERVAL: מציין אם פעולות בטבלת BigLake משתמשות במטא-נתונים שנשמרו במטמון, ומה מידת העדכניות של המטא-נתונים שנשמרו במטמון שנדרשת כדי שהפעולה תשתמש בהם. מידע נוסף על שיקולים לגבי שמירת מטא-נתונים במטמון זמין במאמר שמירת מטא-נתונים במטמון לשיפור הביצועים.

      כדי להשבית את השמירה במטמון של המטא-נתונים, מציינים את הערך 0. (זוהי ברירת המחדל)

      כדי להפעיל את השמירה במטמון של מטא-נתונים, צריך לציין ערך של מילול לציון מרווח בין 30 דקות ל-7 ימים. לדוגמה, כדי להגדיר את מרווח הזמן של הנתונים הלא עדכניים ל-4 שעות, מציינים INTERVAL 4 HOUR. אם הערך הזה מוגדר, פעולות שמתבצעות בטבלה משתמשות במטא נתונים ששמורים במטמון אם הם רעננו ב-4 השעות האחרונות. אם המטא-נתונים שבזיכרון המטמון ישנים יותר, הפעולה מאחזרת מטא-נתונים מ-Delta Lake במקום זאת.

    • CACHE_MODE: מציין אם המטמון של המטא-נתונים מתרענן באופן אוטומטי או ידני. מידע נוסף על שיקולים לגבי שמירת מטא-נתונים במטמון זמין במאמר שמירת מטא-נתונים במטמון לשיפור הביצועים.

      אם מגדירים את הערך AUTOMATIC, מטמון המטא-נתונים מתעדכן במרווח זמן שמוגדר על ידי המערכת, בדרך כלל בין 30 ל-60 דקות.

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

      אם הערך של STALENESS_INTERVAL גדול מ-0, צריך להגדיר את CACHE_MODE.

    דוגמה:

    CREATE EXTERNAL TABLE mydataset.mytable
    WITH CONNECTION `us-east1.myconnection`
    OPTIONS (
        format="PARQUET",
        uris=["gs://mybucket/path/partitionpath=*"],
        file_set_spec_type = 'NEW_LINE_DELIMITED_MANIFEST'
        hive_partition_uri_prefix = "gs://mybucket/path/"
        max_staleness = INTERVAL 1 DAY,
        metadata_cache_mode = 'AUTOMATIC'
    );

שדרוג טבלאות BigLake

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

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

SQL

כדי לעדכן טבלה, משתמשים בCREATE OR REPLACE EXTERNAL TABLE הצהרת DDL:

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

    כניסה ל-BigQuery

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

    CREATE OR REPLACE EXTERNAL TABLE
      `PROJECT_ID.DATASET.EXTERNAL_TABLE_NAME`
      WITH CONNECTION {`REGION.CONNECTION_ID` | DEFAULT}
      OPTIONS(
        format ="TABLE_FORMAT",
        uris = ['BUCKET_PATH'],
        max_staleness = STALENESS_INTERVAL,
        metadata_cache_mode = 'CACHE_MODE'
        );

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

    • PROJECT_ID: השם של הפרויקט שמכיל את הטבלה
    • DATASET: השם של מערך הנתונים שמכיל את הטבלה
    • EXTERNAL_TABLE_NAME: שם הטבלה
    • REGION: האזור שבו נמצא החיבור
    • CONNECTION_ID: השם של החיבור שרוצים להשתמש בו

      כדי להשתמש ב חיבור שמוגדר כברירת מחדל, מציינים DEFAULT במקום מחרוזת החיבור שמכילה REGION.CONNECTION_ID.

    • TABLE_FORMAT: הפורמט שבו משתמשים בטבלה

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

    • BUCKET_PATH: הנתיב לקטגוריית Cloud Storage שמכילה את הנתונים של הטבלה החיצונית, בפורמט ['gs://bucket_name/[folder_name/]file_name'].

      אפשר לבחור כמה קבצים מהמאגר על ידי ציון כוכבית אחת (*) בנתיב כתו כללי. לדוגמה, ['gs://mybucket/file_name*']. מידע נוסף זמין במאמר תמיכה בתווים כלליים בכתובות URI של Cloud Storage.

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

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

      • ['gs://bucket/path1/myfile.csv']
      • ['gs://bucket/path1/*.csv']
      • ['gs://bucket/path1/*', 'gs://bucket/path2/file00*']

      כשמציינים uris ערכים שמטרגטים כמה קבצים, לכל הקבצים האלה צריכה להיות סכימה תואמת.

      מידע נוסף על שימוש בכתובות URI של Cloud Storage ב-BigQuery זמין במאמר בנושא נתיב משאב של Cloud Storage.

    • STALENESS_INTERVAL: מציין אם פעולות שמתבצעות בטבלה משתמשות במטא-נתונים ששמורים במטמון, ומה רמת העדכניות של המטא-נתונים ששמורים במטמון שנדרשת כדי שהפעולה תוכל להשתמש בהם.

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

      כדי להשבית את השמירה במטמון של המטא-נתונים, מציינים את הערך 0. (זוהי ברירת המחדל)

      כדי להפעיל את השמירה במטמון של מטא-נתונים, צריך לציין ערך של מילול לציון מרווח בין 30 דקות ל-7 ימים. לדוגמה, כדי להגדיר את מרווח הזמן של הנתונים הלא עדכניים ל-4 שעות, מציינים INTERVAL 4 HOUR. אם הערך הזה מוגדר, פעולות שמתבצעות בטבלה משתמשות במטא נתונים ששמורים במטמון אם הם רעננו ב-4 השעות האחרונות. אם המטא-נתונים שבמטמון ישנים יותר, הפעולה מאחזרת מטא-נתונים מ-Cloud Storage במקום זאת.

    • CACHE_MODE: מציין אם המטמון של המטא-נתונים מתרענן באופן אוטומטי או ידני

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

      אם מגדירים את הערך AUTOMATIC, מטמון המטא-נתונים מתעדכן במרווח זמן שמוגדר על ידי המערכת, בדרך כלל בין 30 ל-60 דקות.

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

      אם הערך של STALENESS_INTERVAL גדול מ-0, צריך להגדיר את CACHE_MODE.

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

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

BQ

כדי לעדכן טבלה, משתמשים בפקודות bq mkdef ו-bq update:

  1. ליצור הגדרה של טבלה חיצונית שמתארת את ההיבטים של הטבלה שרוצים לשנות:

    bq mkdef --connection_id=PROJECT_ID.REGION.CONNECTION_ID \
    --source_format=TABLE_FORMAT \
    --metadata_cache_mode=CACHE_MODE \
    "BUCKET_PATH" > /tmp/DEFINITION_FILE

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

    • PROJECT_ID: השם של הפרויקט שמכיל את החיבור
    • REGION: האזור שמכיל את החיבור
    • CONNECTION_ID: השם של החיבור שרוצים להשתמש בו
    • TABLE_FORMAT: הפורמט שבו נעשה שימוש בטבלה. אי אפשר לשנות את ההגדרה הזו כשמעדכנים את הטבלה.
    • CACHE_MODE: מציין אם מטמון המטא-נתונים מתרענן באופן אוטומטי או ידני. מידע נוסף על שיקולים בנוגע לשמירת מטא-נתונים במטמון זמין במאמר שמירת מטא-נתונים במטמון לשיפור הביצועים.

      מגדירים את הערך AUTOMATIC כדי שהמטמון של המטא-נתונים יתרענן במרווח זמן שמוגדר על ידי המערכת, בדרך כלל בין 30 ל-60 דקות.

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

      חובה להגדיר את CACHE_MODE אם הערך של STALENESS_INTERVAL גדול מ-0.

    • BUCKET_PATH: הנתיב לדלי ב-Cloud Storage שמכיל את הנתונים של הטבלה החיצונית, בפורמט gs://bucket_name/[folder_name/]file_name.

      כדי להגביל את הקבצים שנבחרו מהמאגר, מציינים כוכבית אחת (*) בנתיב. לדוגמה, gs://mybucket/file_name*. מידע נוסף זמין במאמר בנושא תמיכה בתווים כלליים בכתובות URI של Cloud Storage.

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

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

      • gs://bucket/path1/myfile.csv
      • gs://bucket/path1/*.csv
      • gs://bucket/path1/*,gs://bucket/path2/file00*

      כשמציינים ערכים של uris שמטרגטים כמה קבצים, לכל הקבצים האלה צריכה להיות סכימה תואמת.

      מידע נוסף על שימוש בכתובות URI של Cloud Storage ב-BigQuery זמין במאמר בנושא נתיב משאב ב-Cloud Storage.

    • DEFINITION_FILE: השם של קובץ הגדרת הטבלה שאתם יוצרים.

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

    bq update --max_staleness=STALENESS_INTERVAL \
    --external_table_definition=/tmp/DEFINITION_FILE \
    PROJECT_ID:DATASET.EXTERNAL_TABLE_NAME

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

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

      כדי להשבית את השמירה במטמון של המטא-נתונים, מציינים את הערך 0. (זוהי ברירת המחדל)

      כדי להפעיל שמירת מטא-נתונים במטמון, צריך לציין ערך של מרווח זמן בין 30 דקות ל-7 ימים, באמצעות הפורמט Y-M D H:M:S שמתואר במסמכי התיעוד של סוג הנתונים INTERVAL. לדוגמה, מציינים 0-0 0 4:0:0 למרווח זמן של 4 שעות. עם הערך הזה, פעולות שמתבצעות בטבלה משתמשות במטא נתונים שנשמרו במטמון אם הם רעננו ב-4 השעות האחרונות. אם המטא-נתונים שבמטמון ישנים יותר, הפעולה מאחזרת מטא-נתונים מ-Cloud Storage במקום זאת.

    • DEFINITION_FILE: השם של קובץ הגדרת הטבלה שיצרתם או עדכנתם.

    • PROJECT_ID: השם של הפרויקט שמכיל את הטבלה

    • DATASET: השם של מערך הנתונים שמכיל את הטבלה

    • EXTERNAL_TABLE_NAME: שם הטבלה

שליחת שאילתות לטבלאות BigLake ולטבלאות חיצוניות

אחרי שיוצרים טבלת BigLake, אפשר להריץ עליה שאילתות באמצעות תחביר GoogleSQL, בדיוק כמו בטבלה ב-BigQuery. לדוגמה, SELECT field1, field2 FROM mydataset.my_cloud_storage_table;.

מגבלות

  • ‫BigQuery תומך רק בשליחת שאילתות לטבלאות Delta Lake reader v1.

  • השילוב בין Hudi ל-BigQuery פועל רק עם טבלאות מחולקות למחיצות (Partitions) בסגנון Hive‏ copy-on-write.

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