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

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

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

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

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

    כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (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, מרחיבים את הקטע Required permissions:

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

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

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

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

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

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

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

כדי ליצור טבלת Hudi חיצונית:

  1. כדי ליצור טבלת Hudi חיצונית, שולחים משימה לאשכול קיים של Managed Service for Apache Spark. כשיוצרים את המחבר ל-BigQuery של Hudi, מפעילים את הדגל 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 וגרסאות קודמות) שיצרה תצוגות בקובצי המניפסט, הקפידו להשתמש באותו שם טבלה כי הוא מאפשר לכם לשמור את קוד הצינור הקיים במורד הזרם.

    • ‫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

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

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

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

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

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

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

SQL

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

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

Scala

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

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

Java

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

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

Python

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

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

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

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

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

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

    דוגמה:

    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

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

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

    כניסה ל-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 ימים. לדוגמה, מציינים INTERVAL 4 HOUR למרווח זמן של 4 שעות. עם הערך הזה, פעולות בטבלה משתמשות במטא-נתונים שנשמרו במטמון אם הם רועננו ב-4 השעות האחרונות. אם המטא-נתונים במטמון ישנים יותר, הפעולה מאחזרת מטא-נתונים מ-Cloud Storage.

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

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

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

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

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

  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 בגרסה 1.

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

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