Tabelle abfragen

Beim Abfragen einer Tabelle werden Daten aus den zugrunde liegenden Cloud Storage-Dateien mit den Metadaten gelesen, die vom Lakehouse-Laufzeitkatalog verwaltet werden.

Sie können Auswahlabfragen aus Open-Source-Engines wie Spark und Trino oder direkt aus BigQuery mit vierteiliger Tabellennamenkonvention ausführen.

Hinweis

In der Tabellenübersicht finden Sie Informationen zu den verschiedenen Arten von Tabellen und den Auswirkungen ihrer Verwendung.

  1. Prüfen Sie, ob die Abrechnung für Ihr Google Cloud Projekt aktiviert ist.

  2. Aktivieren Sie die BigLake API.

    Erforderliche Rollen zum Aktivieren von APIs

    Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin), die die Berechtigung serviceusage.services.enable enthält. Informationen zum Zuweisen von Rollen.

    API aktivieren

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt und Ihren Speicher-Bucket zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Abfragen einer Tabelle benötigen:

  • Tabellendaten im Modus für die Anmeldedatenerstellung lesen: BigLake-Betrachter (roles/biglake.viewer) – das Projekt
  • Tabellendaten im Modus ohne Anmeldedatenerstellung lesen:
    • BigLake-Betrachter (roles/biglake.viewer) – das Projekt
    • Storage Object Viewer (roles/storage.objectViewer) – der Cloud Storage-Bucket

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Tabelle abfragen

Alle Daten aus der Tabelle auswählen:

Spark

spark.sql("SELECT * FROM TABLE_NAME;").show()

Trino

SELECT * FROM TABLE_NAME;

BigQuery

Wenn Sie Lakehouse Iceberg REST-Katalogtabellen aus BigQuery abfragen möchten, verwenden Sie in Ihrer Abfrage den vierteiligen Tabellennamen im folgenden Format: PROJECT_NAME.CATALOG_ID.NAMESPACE_OR_SCHEMA_NAME.TABLE_NAME.

SELECT * FROM `PROJECT_NAME.BIGLAKE_CATALOG_ID.NAMESPACE_OR_SCHEMA_NAME.TABLE_NAME`;

Ersetzen Sie die folgenden Werte:

  • PROJECT_NAME: das Google Cloud Projekt, zu dem der Katalog im Lakehouse-Laufzeitkatalog gehört. Das ausgewählte Google Cloud Projekt in der Google Cloud Console wird für die Abfrage in Rechnung gestellt.

  • CATALOG_ID: die ID des Lakehouse-Laufzeitkatalogs, die beim Erstellen des Katalogs angegeben wurde. Diese ID wird in BigQuery-Abfragen als Katalogname verwendet.

    Diese ID ist auch der Name Ihres Cloud Storage-Bucket.

    Wenn Sie beispielsweise Ihren Bucket zum Speichern Ihres Katalogs erstellt und ihn iceberg-bucket genannt haben, sind sowohl der Katalogname als auch der Bucketname iceberg-bucket. Dies wird später verwendet, wenn Sie Ihren Katalog in BigQuery mit der P.C.N.T-Syntax abfragen. Beispiel: my-project.biglake_catalog_id.quickstart_namespace.quickstart_table.

  • NAMESPACE_OR_SCHEMA_NAME: der Tabellen-Namespace, wenn Sie Spark verwenden, oder der Name des Tabellenschemas, wenn Sie Trino verwenden.

  • TABLE_NAME: der Name Ihrer Tabelle.

Nächste Schritte