Versionshinweise zur Snowpark-Bibliothek für Python 2025

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

  • Verhaltensänderungen

  • Neue Features

  • Fehlerkorrekturen für Kunden

Snowflake verwendet semantische Versionierung für Snowpark Library for Python-Aktualisierungen.

Siehe Snowpark-Entwicklerhandbuch für Python für die Dokumentation.

Warnung:

Da Python 3.8 sein End of Life erreicht hat, werden bei der Verwendung von snowpark-python mit Python 3.8 Verfallswarnungen ausgelöst. Weitere Details dazu finden Sie unter Unterstützung der Snowflake-Python-Laufzeitumgebung. Snowpark Python 1.24.0 wird die letzte Client- und Serverversion sein, die Python 3.8 unterstützt, in Übereinstimmung mit der Richtlinie von Anaconda. Aktualisieren Sie Ihre vorhandenen Python 3.8-Objekte auf Python 3.9 oder höher.

Version 1.27.0 (2025-02-05)

Neue Features

Unterstützung für die folgenden Funktionen in functions.py wurde hinzugefügt:

  • array_reverse

  • divnull

  • map_cat

  • map_contains_key

  • map_keys

  • nullifzero

  • snowflake_cortex_sentiment

  • acosh

  • asinh

  • atanh

  • bit_length

  • bitmap_bit_position

  • bitmap_bucket_number

  • bitmap_construct_agg

  • cbrt

  • equal_null

  • from_json

  • ifnull

  • localtimestamp

  • max_by

  • min_by

  • nth_value

  • nvl

  • octet_length

  • position

  • regr_avgx

  • regr_avgy

  • regr_count

  • regr_intercept

  • regr_r2

  • regr_slope

  • regr_sxx

  • regr_sxy

  • regr_syy

  • try_to_binary

  • base64

  • base64_decode_string

  • base64_encode

  • editdistance

  • hex

  • hex_encode

  • instr

  • log1p

  • log2

  • log10

  • percentile_approx

  • unbase64

  • Unterstützung für die Angabe einer Schema-Zeichenfolge (einschließlich impliziter struct-Syntax) beim Aufruf von DataFrame.create_dataframe wurde hinzugefügt.

  • Unterstützung von DataFrameWriter.insert_into/insertInto hinzugefügt. Diese Methode unterstützt auch den lokalen Testmodus.

  • Unterstützung für DataFrame.create_temp_view wurde hinzugefügt, um eine temporäre Ansicht zu erstellen. Dies schlägt fehl, wenn die Ansicht bereits existiert.

  • Unterstützung für mehrere Spalten in den Funktionen map_cat und map_concat wurde hinzugefügt.

  • Es wurde eine Option keep_column_order hinzugefügt, um die ursprüngliche Spaltenreihenfolge in DataFrame.with_column und DataFrame.with_columns beizubehalten.

  • Es wurden Optionen zu den Spaltenumwandlungen hinzugefügt, die das Umbenennen oder Hinzufügen von Feldern in StructType-Spalten ermöglichen.

  • Unterstützung für contains_null parameter wurde zu ArrayType hinzugefügt.

  • Es wurde Unterstützung für die Erstellung einer temporären Ansicht über DataFrame.create_or_replace_temp_view aus einem DataFrame hinzugefügt, der durch Lesen einer Datei aus einem Stagingbereich erstellt wurde.

  • Unterstützung für den Parameter value_contains_null wurde zu MapType hinzugefügt.

  • Interaktiv wurde zur Telemetrie hinzugefügt, die anzeigt, ob die aktuelle Umgebung eine interaktive ist.

  • Erlauben Sie session.file.get in einer Native App, Dateipfade, die mit / beginnen, aus der aktuellen Version zu lesen

  • Unterstützung für mehrere Aggregationsfunktionen nach DataFrame.pivot hinzugefügt.

Experimentelle Features

  • Die Klasse Catalog wurde hinzugefügt, um Snowflake-Objekte zu verwalten. Sie kann über Session.catalog aufgerufen werden.

    • snowflake.core ist eine für dieses Feature erforderliche Abhängigkeit.

  • Erlauben Sie das Benutzereingabeschema beim Lesen der JSON-Datei im Stagingbereich.

  • Unterstützung für die Angabe einer Schema-Zeichenfolge (einschließlich impliziter struct-Syntax) beim Aufruf von DataFrame.create_dataframe wurde hinzugefügt.

Verbesserungen

  • README.md ` wurde aktualisiert und enthält nun Anweisungen zur Überprüfung von Paketsignaturen mit cosign.

Fehlerkorrekturen

  • Es wurde ein Fehler im lokalen Testmodus behoben, der dazu führte, dass eine Spalte den Wert None enthielt, obwohl sie eigentlich 0 enthalten sollte.

  • Ein Fehler in StructField.from_json ` wurde behoben, der verhinderte, dass TimestampTypes ` mit tzinfo ` korrekt geparst wurde.

  • Ein Fehler in function date_format wurde behoben, der einen Fehler verursachte, wenn die Eingabespalte vom Typ Datum oder Zeitstempel war.

  • In DataFrame wurde ein Fehler behoben, durch den ein Nullwert in eine nicht-nullbare Spalte eingefügt werden konnte.

  • Ein Fehler in replace und lit wurde behoben, der bei der Übergabe von Column-Ausdrucksobjekten einen Fehler bei der Typhinweis-Assertion verursachte.

  • Es wurde ein Fehler in pandas_udf ` und pandas_udtf ` behoben, bei dem der Sitzungsparameter fälschlicherweise ignoriert wurde.

  • Es wurde ein Fehler behoben, der bei Systemfunktionen, die über session.call aufgerufen wurden, einen Fehler aufgrund falscher Typkonvertierung auslöste.

Snowpark Pandas API-Aktualisierungen

Neue Features

  • Unterstützung für Series.str.ljust und Series.str.rjust hinzugefügt.

  • Unterstützung von Series.str.center hinzugefügt.

  • Unterstützung von Series.str.pad hinzugefügt.

  • Unterstützung für die Anwendung der Snowpark Python-Funktion snowflake_cortex_sentiment wurde hinzugefügt.

  • Unterstützung von DataFrame.map hinzugefügt.

  • Unterstützung von DataFrame. from_dict und DataFrame.from_records hinzugefügt.

  • Unterstützung für gemischte Groß- und Kleinschreibung von Feldnamen in Spalten vom Typ struct wurde hinzugefügt.

  • Unterstützung von SeriesGroupBy.unique hinzugefügt.

  • Unterstützung von Series.dt.strftime mit den folgenden Direktiven wurde hinzugefügt:

    • %d: Tag des Monats als mit Nullen aufgefüllte Dezimalzahl.

    • %m: Monat als mit Nullen aufgefüllte Dezimalzahl.

    • %Y: Jahr mit Jahrhundert als Dezimalzahl.

    • %H: Stunde (24-Stunden-Uhr) als mit Nullen aufgefüllte Dezimalzahl.

    • %M: Minute als mit Nullen aufgefüllte Dezimalzahl.

    • %S: Sekunde als mit Nullen aufgefüllte Dezimalzahl.

    • %f: Mikrosekunde als Dezimalzahl, mit Nullen aufgefüllt auf 6 Ziffern.

    • %j: Tag des Jahres als mit Nullen aufgefüllte Dezimalzahl.

    • %X: Die für das Gebietsschema geeignete Zeitdarstellung.

    • %%: Ein wörtliches ‚%‘-Zeichen.

  • Unterstützung von Series.between hinzugefügt.

  • Unterstützung für include_groups=False in DataFrameGroupBy. apply hinzugefügt.

  • Unterstützung von expand=True in Series.str.split hinzugefügt.

  • Unterstützung für DataFrame.pop und Series.pop hinzugefügt.

  • Unterstützung für first und last in DataFrameGroupBy.agg und SeriesGroupBy.agg hinzugefügt.

  • Unterstützung von Index.drop_duplicates hinzugefügt.

  • Unterstützung für Aggregationen "count", "median", np.median, "skew", "std", np.std "var" und np.var in pd.pivot_table(), DataFrame.pivot_table() und pd.crosstab() hinzugefügt.

Verbesserungen

  • Leistung der Methoden DataFrame.map, Series.apply und Series.map, verbessert, indem die Numpy-Funktionen nach Möglichkeit den Snowpark-Funktionen zugeordnet werden.

  • Dokumentation für DataFrame.map hinzugefügt.

  • Leistung von DataFrame.apply verbessert, indem die Numpy-Funktionen nach Möglichkeit den Snowpark-Funktionen zugeordnet werden.

  • Dokumentation über den Umfang der Interoperabilität von Snowpark pandas mit scikit-learn hinzugefügt.

  • Ableitung des Rückgabetyps von Funktionen in Series.map, Series.apply und DataFrame.map, wenn kein Typhinweis angegeben ist.

  • call_count wurde zur Telemetrie hinzugefügt, wodurch Methodenaufrufe einschließlich Aufrufen des Interchange-Protokolls gezählt werden.