Snowflake-Python-API: Verwalten von Snowflake-Objekten mit Python

Die Snowflake-Python-API ist die einheitliche Python-API für alle Snowflake-Workloads. Sie soll APIs für alle Snowflake-Ressourcen von Data Engineering-, Snowpark - und Clientanwendungs-Workloads bereitstellen.

Sie können die Snowflake-Python-API verwenden, um mit Snowflake-Ressourcen zu interagieren, diese zu erstellen, zu löschen, zu ändern und mehr. Sie können Python verwenden, um Aufgaben auszuführen, die Sie sonst mit Snowflake -SQL-Befehlen ausgeführt werden müssten.

Mit der Snowflake-Python-API können Sie derzeit die folgenden Snowflake-Objekte verwalten:

Ein Einführungstutorial zur Verwendung der Snowflake-Python-API finden Sie unter Quickstart: Erste Schritte mit der Snowflake-Python-API.

Beispiel

Der Code im folgenden Beispiel führt eine Aufgabe namens my_task aus. Der Code verwendet Verbindungsparameter, die in einer Konfigurationsdatei definiert sind, um eine Verbindung zu Snowflake zu erstellen. Unter Verwendung des resultierenden Session-Objekts erstellt der Code ein Root-Objekt, das die Typen und Methoden der API verwendet. Unter Verwendung der API erstellt der Code ein Task-Objekt, das my_task repräsentiert. Mit einem TaskResource-Objekt namens task_res führt der Code die Aufgabe aus.

Weitere Informationen zu aufgabenbezogenen Aktionen, die Sie mit der API ausführen können, finden Sie unter Verwalten von Snowflake-Aufgaben und DAGs mit Python.

from snowflake.core import Root
from snowflake.core.task import Task
from snowflake.snowpark import Session

session = Session.builder.config("connection_name", "myconnection").create()
root = Root(session)

tasks = root.databases["mydb"].schemas["myschema"].tasks
task_res = tasks['my_task']

task_res.execute()
Copy

Einschränkungen

Die Snowflake-Python-API ist derzeit nicht im Snowflake-Anaconda-Kanal verfügbar.

Unterstützte Versionen

Folgende Versionen von Python werden unterstützt:

  • 3.8

  • 3.9

  • 3.10

  • 3.11

Entwicklerhandbücher

Benutzerhandbuch

Beschreibung

Installieren der Snowflake-Python-API-Bibliothek

Installieren des Snowflake-Python-API-Pakets.

Verbinden mit Snowflake über die Snowflake-Python-API

Herstellen einer zu Snowflake aus Python-Code.

Verwalten von Snowflake-Aufgaben und DAGs mit Python

Verwenden der API zum Erstellen, Ausführen und Verwalten von Aufgaben und von DAGs von Aufgaben.

Verwalten von Snowflake-Datenbanken, -Schemas und -Tabellen mit Python

Verwenden der API, um Datenbanken, Schemas und Tabellen zu erstellen und zu verwalten.

Verwalten von virtuellen Snowflake-Warehouses mit Python

Verwenden der API, um virtuelle Warehouses zu erstellen und zu verwalten.

Verwalten von Snowpark Container Services mit Python

Verwenden der API, um Komponenten von Snowpark Container Services zu verwalten, einschließlich Computepools, Image-Repositorys und Dienste.

Kosten für den Zugriff auf Snowflake

Um die Kosten zu senken – sowohl für den Verbrauch von Credits als auch für Netzwerkaktivitäten – ist die Snowflake-Python-API so konzipiert, dass sie nur dann mit Snowflake kommuniziert, wenn Sie Methoden aufrufen, die für die Synchronisierung mit Snowflake vorgesehen sind.

Bei den Objekten in API handelt es sich entweder um lokale Referenzen (oder Handles) oder um Snapshots des in Snowflake gespeicherten Zustands. Wenn Sie mit Snowflake arbeiten oder Informationen von Snowflake abrufen, erfolgt dies im Allgemeinen über ein lokales, speicherinternes Referenzobjekt.

Diese Referenzen werden erst dann mit Snowflake synchronisiert, wenn Sie eine Methode aufrufen. Wenn Sie eine Methode aufrufen, entstehen Ihnen in der Regel Kosten sowohl durch den Verbrauch von Credits als auch durch Netzwerkaktivitäten. Wenn Sie dagegen speicherinterne Referenzen verwenden, z. B. beim Zugriff auf Attribute, erfolgt die Ausführung lokal und verursacht keine solchen Kosten.