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

Die Snowflake-Python-API ist eine vereinheitlichte Bibliothek, die Python nahtlos mit Snowflake-Workloads verbindet. Es ist vorgesehen, umfassende APIs für die Interaktion mit zentralen Snowflake-Ressourcen über Data Engineering, Snowpark und Anwendungs-Workloads hinweg bieten, ohne SQL-Befehle zu verwenden.

Sie können die Snowflake-Python-API verwenden, um Snowflake-Ressourcen zu verwalten, indem Sie sie erstellen, löschen oder ändern und vieles 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.

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

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

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

Snowflake-Python-API-Bibliothek installieren

Installieren des Snowflake-Python-API-Pakets.

Verbindung zu Snowflake über Snowflake-Python-API herstellen

Herstellen einer zu Snowflake aus Python-Code.

Verwalten von Snowflake-Aufgaben und Task-Graphen mit Python

Verwenden der API zum Erstellen, Ausführen und Verwalten von Aufgaben und Task-Graphen.

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.

Referenzen

Snowflake-Python-API-Referenz

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 die Informationen verarbeiten, die von Snowflake abgerufen wurden, geschieht dies im Allgemeinen über ein lokales In-Memory-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.