Metastore-Tabellen aus Spark erstellen und abfragen
Sie können Apache Spark Iceberg-Tabellen in einem BigQuery-Notebook mit Open-Source-Engines wie Spark abfragen. Diese Tabellen sind reguläre Iceberg-Tabellen mit Metadaten, die im BigQuery-Metastore gespeichert sind. Die gleiche Tabelle kann sowohl in BigQuery als auch in Spark abgefragt werden.
Hinweise
- Eine Eisbergtabelle erstellen, während Sie Spark in einem BigQuery-Notebook verwenden Das Tabellenschema wird im BigQuery-Metastore gespeichert. Sie können die Tabelle beispielsweise mit einem BigQuery-Notebook, Dataproc, Dataproc Serverless oder einer gespeicherten Prozedur erstellen.
Hinweise
- Derzeit werden nur Eisbergtabellen unterstützt.
Denken Sie beim Ausführen Ihrer Abfragen daran, Ihre Namespace- und Datenbanknamen als BigQuery-Datasetnamen zuzuordnen. In der folgenden Tabelle sind die entsprechenden Tastenzuordnungen aufgeführt:
Open Source BigQuery Namespace BigQuery-Dataset Datenbank BigQuery-Dataset Tabelle (partitioniert oder nicht partitioniert) BigQuery-Tabelle
Tabelle aufrufen und abfragen
Nachdem Sie Ihre BigQuery-Ressourcen in Spark erstellt haben, können Sie sie in derGoogle Cloud -Konsole aufrufen und abfragen. Im folgenden Beispiel werden die allgemeinen Schritte zum Abfragen einer Metadatenbanktabelle mithilfe von interaktivem Spark veranschaulicht:
Benutzerdefinierten Iceberg-Katalog verwenden:
USE `CATALOG_NAME`;
Ersetzen Sie Folgendes:
CATALOG_NAME
: Der Name des Spark-Katalogs, den Sie für Ihren SQL-Job verwenden.
Erstellen Sie einen Namespace:
CREATE NAMESPACE IF NOT EXISTS NAMESPACE_NAME;
Ersetzen Sie Folgendes:
NAMESPACE_NAME
: Der Name des Namespace, der auf Ihre Spark-Tabelle verweist.
Verwenden Sie den erstellten Namespace:
USE NAMESPACE_NAME;
So erstellen Sie eine Eisberg-Tabelle:
CREATE TABLE TABLE_NAME (id int, data string) USING ICEBERG;
Ersetzen Sie Folgendes:
TABLE_NAME
: Name der Iceberg-Tabelle.
So fügen Sie eine Tabellenzeile ein:
INSERT INTO TABLE_NAME VALUES (1, "first row");
Führen Sie in der Google Cloud Console einen der folgenden Schritte aus:
SELECT * FROM `TABLE_NAME`;
Nächste Schritte
- Zusätzliche BigQuery-Metastore-Funktionen einrichten