Code-Beispiele: Apache Spark™¶
In diesem Abschnitt finden Sie Codebeispiele für die Verwendung von Apache Spark™, um die folgenden Aufgaben in Snowflake Open Catalog zu erledigen:
Konfigurieren Sie eine Dienstverbindung
Einen Katalog verwenden
Kataloge auflisten
Namespaces auflisten
Einen Namespace erstellen
Einen Namespace verwenden
Einen Namespace löschen
Tabelle erstellen
Eine Tabelle abfragen
Eigenschaften der Tabelle anzeigen
Tabellen auflisten
Eine Tabelle löschen
Erforderliche Berechtigungen¶
Um die Befehle in den Codebeispielen ausführen zu können, müssen dem Dienstprinzipal, den Sie für die Verbindung von Spark mit Open Catalog verwenden, die folgenden Berechtigungen erteilt werden:
Befehl |
Erforderliche Berechtigung |
---|---|
Namespaces anzeigen |
NAMESPACE_LIST |
Namespace erstellen |
NAMESPACE_CREATE |
Namespace verwenden |
NAMESPACE_READ_PROPERTIES |
Tabellen anzeigen |
TABLE_LIST |
Tabelle erstellen oder ersetzen |
|
Namespace löschen |
NAMESPACE_DROP |
Tabelle löschen |
TABLE_DROP |
In Tabelle einfügen |
TABLE_WRITE_DATA |
Aus Tabelle auswählen |
TABLE_READ_DATA |
Konfigurieren Sie eine Dienstverbindung¶
Siehe Beispiele für die Konfiguration einer Dienstverbindung in Spark.
Katalog verwenden¶
Verwenden Sie den Katalog catalog1
:
spark.sql("use catalog1").show()
Kataloge auflisten¶
Auflistung der Kataloge, mit denen Sie verbunden sind:
spark.sql("show catalogs").show()
Namespaces auflisten¶
Auflistung der Namespaces für den Katalog, mit dem Sie verbunden sind:
spark.sql("show namespaces").show()
Einen Namespace erstellen¶
Erstellen Sie den Namespace namespace1
:
spark.sql("CREATE NAMESPACE namespace1")
Einen Namespace verwenden¶
Verwenden Sie den Namespace namespace1
:
spark.sql("use namespace1").show()
Einen Namespace löschen¶
Löschen Sie den Namespace namespace1
aus dem Katalog:
spark.sql("DROP NAMESPACE namespace1")
Tabelle erstellen¶
Erstellen Sie eine Tabelle Kunden
unter dem übergeordneten Objekt Namespace1
:
spark.sql ("use namespace1");
spark.sql("CREATE OR REPLACE TABLE customers (id int, custnum int) using iceberg")
Eine Tabelle abfragen¶
Abfrage der Tabelle Kunden
:
spark.sql ("use namespace1");
spark.sql("SELECT * FROM customers").show()
Eigenschaften der Tabelle anzeigen¶
Zeigen Sie die Eigenschaften der Tabelle Kunden
an:
spark.sql("SHOW TBLPROPERTIES customers").show(50, False)
Tabellen auflisten¶
Auflistung der Tabellen für den Katalog, mit dem Sie verbunden sind:
spark.sql("show tables").show()
Eine Tabelle löschen¶
Legen Sie die Tabelle Kunden
unter dem übergeordneten Objekt Namespace1
ab:
spark.sql ("use namespace1");
spark.sql("DROP TABLE customers")