Snowflake Python APIs-Versionshinweise 2024

Dieser Artikel enthält die Versionshinweise für Snowflake Python APIs, einschließlich der folgenden, sofern zutreffend:

  • Verhaltensänderungen

  • Neue Features

  • Fehlerkorrekturen für Kunden

Siehe Snowflake Python APIs: Verwalten von Snowflake-Objekten mit Python für die Dokumentation.

Version 1.0.0 (22.10.2024)

Neue Features und Aktualisierungen

  • Verbesserte Fehlermeldungen durch Verkürzung der Stapelablaufverfolgungen. Um diese Verhaltensweise zu steuern, verwenden Sie die Option _SNOWFLAKE_PRINT_VERBOSE_STACK_TRACE der Umgebungsvariablen.

  • Enthält nun standardmäßig schreibgeschützte Eigenschaften in Wörterbüchern, die von to_dict() aus Modellen zurückgegeben werden. Um diese Option zu aktivieren, verwenden Sie to_dict (hide_readonly_properties=True).

  • Die Eigenschaft if_exists, mit der Sie festlegen können, ob eine Aktion ohne Fehler ausgeführt werden kann, wenn die angegebene Ressource nicht existiert, wurde zu den folgenden Methoden und Ressourcen hinzugefügt:

    • drop() für Database, NetworkPolicy, View, User, ComputePool, ImageRepository, Pipe, Role, Service, Stage, Table, Task, DynamicTable, Role, Alert, Procedure, Warehouse, Schema und Function.

    • refresh() für Database und DynamicTable.

    • suspend() und resume() für Service, DynamicTable und Warehouse.

    • suspendRecluster() und resumeRecluster() für DynamicTable und Table.

  • Database unterstützt nun die Methode undrop().

  • Service unterstützt nun den Parameter from_name in iter().

  • Table unterstützt nun die Parameter target_database und target_schema in swap_with().

  • Procedure unterstützt nun den Parameter copy_grants in create().

Fehlerkorrekturen

  • Das Klonen von Quellobjekten aus verschiedenen Datenbanken und Schemas ist nun beim Erstellen dynamischer Tabellen korrekt möglich.

  • Korrektur eines SSL-Verbindungsproblems für Konten und Organisationen mit Unterstrichen in Hostnamen.

Version 0.13.1 (11.10.2024)

Neue Features und Aktualisierungen

  • Unterstützung für die Datenbankrollenressource wurde hinzugefügt.

  • Es wurden neue Methoden für die Rolle, die Datenbankrolle und die Benutzerressourcen hinzugefügt, um die Zugriffsrechte zu verwalten.

  • Verbesserte Protokolle mit bereinigten Geheimnissen.

Fehlerkorrekturen

  • Keine.

Version 0.13.0 (04.10.2024)

Neue Features und Aktualisierungen

  • Die API-Dokumentation wurde erheblich verbessert.

  • snowflake-snowpark-python wurde als Abhängigkeit von snowflake.core entfernt. Für einige Funktionen, wie z. B. Aufgabendiagramm (DAG)-Konzepte, ist dieses Paket jedoch weiterhin erforderlich; die Prüfung und Anforderung für diese Funktionen erfolgt zur Laufzeit.

  • Unterstützung für alle Python-Versionen 3.8 oder höher hinzugefügt.

  • Unterstützung für targetDatabase und targetSchema zum Klonen von Tabellen hinzugefügt.

  • Unterstützung für targetDatabase zum Klonen von Schemas hinzugefügt.

  • Offengelegte Typendefinitionen.

  • Unterstützung von execute_job in ServiceCollection hinzugefügt.

  • Unterstützung von get_containers, get_instances und get_roles in ServiceResource hinzugefügt.

  • Unterstützung für create_or_update in Service und ComputePool hinzugefügt.

  • Unterstützung für die folgenden neuen Ressourcen hinzugefügt:

    • Konto

    • Alert

    • Katalogintegration

    • Ereignistabelle

    • Externes Volume

    • Verwaltetes Konto

    • Netzwerkrichtlinie

    • Notebook

    • Benachrichtigungsintegration

    • Pipe

    • Prozedur

    • Stream

    • Benutzerdefinierte Funktionen

    • Ansicht

Fehlerkorrekturen

  • Korrektur eines Fehlers im Zusammenhang mit der Protokollierung von URLs, bei dem nicht alle Teile der URL in die Protokollierung aufgenommen wurden.

Version 0.12.1 (29.08.2024)

Neue Features und Aktualisierungen

  • Keine.

Fehlerkorrekturen

  • Korrektur mehrerer Probleme im Zusammenhang mit der Handhabung großer Ergebnisse.

Version 0.12.0 (20.08.2024)

Neue Features und Aktualisierungen

  • Der Client wiederholt nun Anfragen bei wiederholbaren Fehlercodes.

  • Die folgenden StageResource-Methoden sind nun veraltet und wurden umbenannt. Die alten Methodennamen sind nun Aliasnamen.

    • Von upload_file zu put.

    • Von download_file zu get.

Version 0.11.0 (25.07.2024)

Neue Features und Aktualisierungen

Bemerkung

Die folgenden neuen Funktionen erfordern die Snowflake-Version 8.27.

  • Die Bibliothek wurde um eine Client-Protokollierung erweitert, um die Debug-Möglichkeiten zu verbessern.

  • Unterstützung für undrop wurde zu den Objekttypen DynamicTable, Schema und Table hinzugefügt.

  • Verbesserte Unterstützung für den Objekttyp Grant mit den folgenden Beschränkungen:

    • Der SQL-Befehl SHOW GRANTS ON wird nicht unterstützt.

    • Für die Grants.to-Methode (SHOW GRANTS TO) wird nur Grantees.role als Berechtigungsempfängerwert unterstützt.

  • Um eine bessere Übereinstimmung mit den entsprechenden SQL-Befehlen zu erreichen, sind die folgenden Methoden nun veraltet und wurden wie folgt umbenannt. Die alten Methodennamen sind nun Aliase, die die neuen Methodennamen aufrufen, sodass die alten Methodennamen weiterhin wie erwartet funktionieren.

    • Von create_or_update zu create_or_alter.

    • Von delete zu drop.

    • Von undelete zu undrop.

Fehlerkorrekturen

  • Korrektur eines Fehlers bei der Generierung von Code für gespeicherte Prozeduren.

Version 0.10.0 (24.06.2024)

Neue Features und Aktualisierungen

Bemerkung

Die folgenden neuen Funktionen sind abhängig vom Release von Snowflake Version 8.23.

  • API-Unterstützung für die folgenden Ressourcen hinzugefügt:

    • DynamicTable

    • Function (unterstützt derzeit nur Service-Funktionen)

    • Grant

  • Unterstützung von Finalizern in Aufgaben und Aufgabendiagrammen (DAGs) hinzugefügt.

Version 0.9.0 (10.06.2024)

Neue Features und Aktualisierungen

  • API-Unterstützung im experimentellen Modus für die folgenden Ressourcen hinzugefügt:

    • User

    • Role

    • Management Stage

  • Die Unterstützung von create_or_update für die Ressourcen Warehouse, Schema und Database wurde erneut hinzugefügt.

    Bemerkung

    Die Funktion create_or_update für diese Ressourcen erfordert das kommende Release von Snowflake Version 8.23, das zum 10. Juni 2024 noch nicht veröffentlicht ist.

  • Methode get_endpoints wurde für Service-Ressourcen hinzugefügt, die eine Liste der Endpunkte eines gegebenen Service-Objekts zurückgibt.

Fehlerkorrekturen

  • with_managed_access wird nun korrekt als Eigenschaft von SchemaResource zurückgegeben.

Version 0.8.1 (2024-05-31)

Neue Features und Aktualisierungen

  • Die Boolean-Option with_managed_access wurde in create_or_update für SchemaResource hinzugefügt. Diese Option entspricht dem optionalen Parameter WITH MANAGED ACCESS in CREATE SCHEMA.

    • Verwendungsbeispiel:

      schema.create_or_update(schema_def, with_managed_access = True)
      
      Copy
  • Methode get_endpoints wurde für Service-Ressourcen hinzugefügt, die eine Liste der Endpunkte eines gegebenen Service-Objekts zurückgibt.

Version 0.8.0 (2024-04-30)

Verhaltensänderungen

  • Parameter deep wurde aus fetch() bei TableResource-Objekten entfernt. fetch() gibt immer detaillierte Spalten- und Einschränkungsinformationen eines TableResource-Objekts zurück.

  • create_or_update() funktioniert derzeit nicht mehr für die Ressourcen Schema, Warehouse, Database und ComputePool. create() funktioniert jedoch für diese Ressourcen.

  • Beim Erstellen von Tabellen mit as_select werden keine Informationen mehr aus den in der as_select-Abfrage verwendeten Quelltabellen übernommen.

  • Die Eigenschaften data_retention_time_in_days und max_data_extension_time_in_days einer Tabelle werden von den Schema- oder Datenbankeinstellungen geerbt, wenn sie nicht explizit in einer create_or_update-Anweisung festgelegt werden, mit der eine bestehende Tabelle geändert wird.

Neue Features und Aktualisierungen

  • Unterstützung von Cortex Search-API-Endpunkt hinzugefügt.

  • Unterstützung für große Resultsets hinzugefügt.

  • Unterstützung für Abfragen mit langer Ausführungszeit hinzugefügt.

  • Hilfsfunktion ServiceSpec hinzugefügt, um den Spezifikationstyp aus einer in Service-Ressourcen angegebenen Zeichenfolge abzuleiten.

  • Aktualisiert, um die Snowflake-API-REST-Plattform für alle Ressourcen zu verwenden.

  • pip install snowflake[ml] installiert snowflake-ml-python v1.4.0.

Fehlerkorrekturen

  • Verschiedene Fehlerkorrekturen.

Version 0.7.0 (2024-03-20)

Version 0.7.0 enthält Aktualisierungen für die Pakete snowflake und snowflake.core.

Neue Features und Aktualisierungen

Aktualisierungen des snowflake-Pakets:

  • Sie können nun pip install snowflake[ml] ausführen, um die Snowpark ML-Bibliothek als zusätzliche Paketabhängigkeit zu installieren.

Aktualisierungen des snowflake.core-Pakets:

  • Vorgängeraufgaben geben jetzt ihren vollqualifizierten Namen zurück.

  • Die Methoden __str__() und __repr_html__() wurden zu DAGRun hinzugefügt, um Kompatibilität mit Notebook herzustellen.

  • In der API-Referenzdokumentation wurde „DAGs“ durch „Task-Graph“ ersetzt, um eine bessere Übereinstimmung mit der Snowflake-Dokumentation zu erreichen.

Fehlerkorrekturen

Fehlerkorrekturen am snowflake.core-Paket:

  • Fehler am Code-Generator behoben und auf OpenAPI-Spezifikation basierende Modelle aktualisiert.

  • Kompatibilitätsprobleme mit Pydantic behoben.

  • Fehler in der Eigenschaft Task.error_integration behoben.

  • Fehler in der Eigenschaft Task.config behoben, wenn die REST-Eigenschaft fehlte.

Version 0.6.0 (2024-02-06)

Neue Features und Aktualisierungen

  • Die Operatoren >> und << von DAGTask akzeptieren nun direkt eine Funktion.

  • DAGTask verwendet jetzt standardmäßig das Warehouse des DAG.

  • DAGTask akzeptiert neuen Parameter session_parameters.

  • TaskContext aktualisiert:

    • Methode get_predecessor_return_value funktioniert jetzt sowohl für lange als auch für kurze Namen einer DAGTask.

    • Methoden get_current_task_short_name und get_task_graph_config_property wurden hinzugefügt.

  • Unterstützung von pydantic 2.x hinzugefügt.

  • Unterstützung von Python 3.11 hinzugefügt.

Fehlerkorrekturen

  • Fehler behoben, bei dem DAGOperation.run() eine Ausnahme auslöste, wenn DAG keinen Zeitplan hat.

  • Fehler behoben, bei dem das Löschen eines DAG nicht alle seine Unteraufgaben löschte.

  • Fehler behoben, der einen Fehler auslöste, wenn config für einen DAG festgelegt wurde.