עדכון קטלוג

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

לדוגמה, אפשר לשדרג קטלוג עם דלי אחד (gs://) לקטלוג עם כמה דליים (bl://) (מומלץ). שדרוג הקטלוג מספק יתרונות משמעותיים, כמו האפשרות שהקטלוג יתפרס על פני כמה מאגרי אחסון.

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

  1. כדי להבין איך פועל קטלוג זמן הריצה של Lakehouse ואת המגבלות של השירות, אפשר לקרוא את המאמר מידע על קטלוג זמן הריצה של Lakehouse.
  2. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.

    In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

    Verify that billing is enabled for your Google Cloud project.

    Enable the BigLake API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

    In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

    Verify that billing is enabled for your Google Cloud project.

    Enable the BigLake API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

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

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

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

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

עדכון קטלוג

אפשר לעדכן קטלוג באמצעות Google Cloud המסוף או באמצעות ה-API בארכיטקטורת REST.gcloud

המסוף

  1. במסוף Google Cloud , פותחים את הדף Lakehouse.

    מעבר אל Lakehouse

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

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

  4. לוחצים על שמירה.

gcloud

אפשרות 1: עדכון מאפייני הקטלוג

כדי לעדכן מאפיינים של קטלוג (כמו תיאור או מיקומים מוגבלים), מריצים את הפקודה gcloud beta biglake iceberg catalogs update:

gcloud beta biglake iceberg catalogs update CATALOG_ID \
    --project="PROJECT_ID" \
    [--description="DESCRIPTION"] \
    [--credential-mode="CREDENTIAL_MODE"] \
    [--restricted-locations="RESTRICTED_LOCATIONS"]

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

  • CATALOG_ID: המזהה של קטלוג זמן הריצה של Lakehouse.
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • DESCRIPTION: (אופציונלי) תיאור לקטלוג.
  • CREDENTIAL_MODE: (אופציונלי) שיטת האימות. משתמשים ב-end-user בשביל פרטי כניסה של משתמשי קצה או ב-vended-credentials בשביל מצב מכירת פרטי כניסה.
  • RESTRICTED_LOCATIONS: (אופציונלי) רשימה מופרדת בפסיקים של נתיבים או של דלי אחסון נוספים שמותרים. זהירות: אם מציינים כמה נתיבים או מאגרי מידע חופפים, עלולים להיווצר קונפליקטים במטא-נתונים, דריסות של נתונים בטעות או בעיות אבטחה כמו דליפת הרשאות.

אפשרות 2: שדרוג קטלוג עם מאגר אחד (gs://) לקטלוג עם כמה מאגרים (bl://) (מומלץ)

כדי לשדרג קטלוג קיים של קטגוריה אחת (gs://) לקטלוג של כמה קטגוריות (bl://) (מומלץ), מריצים את הפקודה gcloud beta biglake iceberg catalogs update ומגדירים את הפרמטר --catalog-type לערך biglake:

gcloud beta biglake iceberg catalogs update CATALOG_ID \
    --project="PROJECT_ID" \
    --catalog-type="biglake"

REST

אפשרות 1: עדכון מאפייני הקטלוג

כדי לשנות את המאפיינים של קטלוג (למשל התיאור שלו) באמצעות API בארכיטקטורת REST, שולחים בקשת PATCH לנקודת הקצה UpdateIcebergCatalog עם updateMask המתאים:

PATCH /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs/CATALOG_ID?updateMask=icebergCatalog.description

גוף הבקשה צריך להכיל מטען ייעודי (payload) בפורמט JSON עם השדות שרוצים לעדכן:IcebergCatalog

{
  "description": "Updated catalog description"
}

אפשרות 2: שדרוג קטלוג עם מאגר אחד (gs://) לקטלוג עם כמה מאגרים (bl://) (מומלץ)

כדי לשדרג את הסוג באמצעות API בארכיטקטורת REST, שולחים בקשת PATCH לנקודת הקצה UpdateIcebergCatalog עם catalogType ב-updateMask:

PATCH /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs/CATALOG_ID?updateMask=icebergCatalog.catalogType

גוף הבקשה חייב להכיל מטען ייעודי (payload) בפורמט JSON עם סוג הקטלוג החדש:IcebergCatalog

{
  "catalogType": "BIGLAKE"
}

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • CATALOG_ID: המזהה של קטלוג זמן הריצה של Lakehouse.