August 2022

Die folgenden neuen Features, Verhaltensänderungen und Aktualisierungen (Verbesserungen, Korrekturen usw.) wurden diesen Monat eingeführt. Wenn Sie Fragen zu diesen Ergänzungen haben, wenden Sie sich an den Snowflake-Support.

Wichtig

Jedes Release enthält möglicherweise Updates, die eine Aktualisierung der Weboberfläche erfordern.

Um sicherzustellen, dass sich diese Updates nicht auf Ihre Nutzung auswirken, wird grundsätzlich empfohlen, die Weboberfläche nach jeder Bereitstellung eines Snowflake-Release zu aktualisieren.

Unter diesem Thema:

Neue Features

Unterstützung von Datentyp GEOMETRY – Vorschau

Mit diesem Release können wir eine Vorschau der Unterstützung des neuen Datentyps GEOMETRY bekannt geben. Der Datentyp GEOMETRY repräsentiert Merkmale eines planaren (euklidischen, kartesischen) Koordinatensystems. Dieses Feature steht allen Snowflake-Konten zur Verfügung.

Dieses Release bietet Funktionen zum Erstellen, Formatieren, Messen und Berechnen von Beziehungen zwischen GEOMETRY-Objekten. Mit diesen Funktionen können Sie GEOMETRY-Objekte aus Daten in Standardformaten wie WKT, WKB und GeoJSON konstruieren.

Weitere Informationen dazu finden Sie unter Datentypen für Geodaten.

Vorschau-Features sind für Evaluierungs- und Testzwecke vorgesehen. Diese Features sollten nicht in der Produktionsumgebung verwendet werden.

Gespeicherte Snowpark-Prozeduren in Java – Allgemeine Verfügbarkeit

Mit diesem Release können wir die allgemeine Verfügbarkeit von gespeicherten Snowpark-Prozeduren für Java auf Amazon Web Services (AWS) und Microsoft Azure bekannt geben. Gespeicherte Prozeduren für Java sind als Vorschau auf der Google Cloud Platform (GCP) verfügbar.

In Ihrer gespeicherten Prozedur können Sie die Snowpark-API für Java verwenden, um Ihre Datenpipelines in Snowflake zu hosten. Sie können zum Beispiel gespeicherte Prozeduren schreiben, wenn Sie Ihren Snowpark-Code ausführen müssen, ohne eine Clientanwendung zu starten (z. B. von einer Aufgabe aus).

Weitere Informationen dazu finden Sie unter Schreiben von gespeicherten Prozeduren in Java.

Gespeicherte Snowpark-Prozeduren in Scala – Allgemeine Verfügbarkeit

Mit diesem Release können wir die allgemeine Verfügbarkeit von gespeicherten Snowpark-Prozeduren für Scala auf Amazon Web Services (AWS) und Microsoft Azure bekannt geben. Gespeicherte Prozeduren für Scala sind als Vorschau auf der Google Cloud Platform (GCP) verfügbar.

In Ihrer gespeicherten Prozedur können Sie die Snowpark-API für Scala verwenden, um Ihre Datenpipelines in Snowflake zu hosten. Sie können zum Beispiel gespeicherte Prozeduren schreiben, wenn Sie Ihren Snowpark-Code ausführen müssen, ohne eine Clientanwendung zu starten (z. B. von einer Aufgabe aus).

Weitere Informationen dazu finden Sie unter Schreiben von gespeicherten Prozeduren in Scala.

Kontoreplikation – Vorschau

Mit diesem Release können wir eine offene Vorschau für die Kontoreplikation bekannt geben. Mit diesem Feature werden zwei neue Snowflake-Objekte eingeführt: Replikationsgruppe und Failover-Gruppe. Mit einer Replikationsgruppe können Kunden festlegen, welche Kontoobjekte in welche Regionen bzw. auf welche Cloudplattformen in anpassbaren Zeitabständen repliziert werden sollen. Eine Failover-Gruppe ermöglicht Replikation und Failover für alle Kontoobjekte einer Gruppe. Die Objekte einer Gruppe werden mit zeitpunktbezogener Konsistenz von einem Quellkonto in ein oder mehrere Zielkonten repliziert.

Zu den Kontoobjekten können Warehouses, Benutzer und Rollen sowie Datenbanken und Freigaben gehören (eine vollständige Liste der Objekte, die in eine Replikations- oder Failover-Gruppe aufgenommen werden können, finden Sie unter Replizierte Objekte). Kontoobjekte können einer oder mehreren Gruppen angehören.

Im Falle eines Failover ermöglicht die Kontoreplikation die Ausfallsicherung Ihres gesamten Kontos in eine andere Region oder auf eine andere Cloudplattform. Jede Replikations- und Failover-Gruppe verfügt über einen eigenen Replikationsplan, mit dem die Häufigkeit der Replikation für verschiedene Objektgruppen in unterschiedlichen Intervallen festgelegt werden kann. Im Falle von Failover-Gruppen ist auch die Ausfallsicherung einzelner Gruppen möglich. Sie können wählen, ob ein Failover für alle Failover-Gruppen oder nur für ausgewählte Failover-Gruppen erfolgen soll.

SQL-Aktualisierungen

Funktion INFER_SCHEMA: Neue Parameter

Mit diesem Release stellt Snowflake zwei neue Argumente für die Funktion INFER_SCHEMA bereit:

FILES = ( 'file_name' [ , 'file_name' ... ] )

Gibt eine Liste von einem oder mehreren Dateinamen (durch Kommas getrennt) aus einer Menge von Stagingdateien an, die semistrukturierten Daten enthalten.

IGNORE_CASE = TRUE | FALSE

Gibt an, ob bei den in den Stagingdateien erkannten Spaltennamen die Groß-/Kleinschreibung berücksichtigt werden muss. Standardmäßig ist der Wert FALSE, was bedeutet, dass Snowflake beim Abrufen von Spaltennamen die Groß-/Kleinschreibung von Buchstaben beibehält. Wenn Sie den Wert TRUE angeben, werden die Spaltennamen ohne Berücksichtigung der Groß-/Kleinschreibung behandelt und alle Spaltennamen werden in Großbuchstaben abgerufen.

In einem zukünftigen Release wird die Ausgabe der Funktion INFER_SCHEMA eine neue Spalte ORDER_ID enthalten, die die Reihenfolge der Spalten in den Stagingdateien angibt. Weitere Informationen dazu finden Sie unter Behavior Change Log.

CREATE EXTERNAL TABLE: Spaltendefinitionen aus Stagingdateien ableiten – Vorschau

Ab diesem Release unterstützt Snowflake das Erstellen neuer externer Tabellen mit den Spaltendefinitionen, die aus einer Menge von Stagingdateien mit semistrukturierten Daten abgeleitet sind. Fügen Sie die Schlüsselwörter USING TEMPLATE in Ihre CREATE EXTERNAL TABLE-Anweisungen ein. Zuvor war diese Möglichkeit auf Tabellen beschränkt.

Beispiel:

CREATE OR REPLACE EXTERNAL TABLE myet
    USING TEMPLATE (
      SELECT ARRAY_AGG(OBJECT_CONSTRUCT(*))
        FROM TABLE(
          INFER_SCHEMA(
            LOCATION=>'@filestage',
            FILE_FORMAT=>'ffparquet'
          )
        )
    )
    location=@filestage
    file_format=ffparquet
    auto_refresh=false;
Copy

Neue SQL-Funktionen

Die folgenden Funktionen wurden in den neuesten Releases eingeführt:

Funktionskategorie

Neue Funktion

Beschreibung

Geofunktionen (Transformation)

ST_DIFFERENCE

Gibt bei zwei GEOGRAPHY-Eingabeobjekten ein GEOGRAPHY-Objekt zurück, das die Punkte im ersten Objekt darstellt, die im zweiten Objekt nicht enthalten sind (d. h. die Differenz zwischen den beiden Objekten).

Geofunktionen (Transformation)

ST_INTERSECTION

Gibt bei zwei GEOGRAPHY-Eingabeobjekten ein GEOGRAPHY-Objekt zurück, das die Menge der Punkte darstellt, die beiden Eingabeobjekten gemeinsam sind (d. h. die Schnittmenge der beiden Objekte).

Geofunktionen (Transformation)

ST_SYMDIFFERENCE

Gibt bei zwei GEOGRAPHY-Eingabeobjekten ein GEOGRAPHY-Objekt zurück, das die Menge der Punkte aus beiden Eingabeobjekten darstellt, die nicht Teil der Schnittmenge der Objekte sind (d. h. die symmetrische Differenz der beiden Objekte).

Geofunktionen (Transformation)

ST_UNION

Gibt bei zwei GEOGRAPHY-Eingabeobjekten ein GEOGRAPHY-Objekt zurück, das die kombinierte Menge aller Punkte aus beiden Objekten darstellt (d. h. die Vereinigung der beiden Objekte).

Geofunktionen (Accessor)

ST_ENDPOINT

Gibt den letzten Punkt in einem LineString-Objekt zurück.

Geofunktionen (Accessor)

ST_POINTN

Gibt den Punkt bei einem angegebenen Index eines LineString-Objekts zurück.

Geofunktionen (Accessor)

ST_STARTPOINT

Gibt den ersten Punkt in einem LineString-Objekt zurück.

Aktualisierungen bei Datenpipelines

Aufgaben: Unterstützung der Angabe mehrerer Vorgängeraufgaben in einer einzigen SQL-Anweisung

Ein Directed Acyclic Graph (DAG) ist ein gerichteter azyklischer Task-Graph, der aus einer einzigen Stammaufgabe und einer Menge von untergeordneten Aufgaben besteht, die nach ihren Abhängigkeiten organisiert sind. Alle Aufgaben in einem DAG mit Ausnahme der Stammaufgabe und deren direkt untergeordneten Aufgaben können mehrere Vorgängeraufgaben haben. Eine Aufgabe wird erst dann ausgeführt, wenn die Ausführung aller zugehörigen Vorgängeraufgaben erfolgreich abgeschlossen wurde.

Mit diesem Release können Sie beim Erstellen einer neue Aufgabe (mit CREATE TASK … AFTER) oder später (mit ALTER TASK … ADD AFTER) mehrere Vorgängeraufgaben angeben. Die bestehende SQL-Befehlssyntax unterstützt jetzt eine durch Kommas getrennte Liste von Aufgaben.

Im folgenden Beispiel wird die serverlose Aufgabe a4 erstellt, wobei die Aufgaben a1, a2 und a3 als Vorgängeraufgaben angegeben werden. Die Aufgabe führt eine triviale Abfrage aus:

CREATE TASK a4
  AFTER a1, a2, a3
  AS SELECT 1;
Copy

Im folgenden Beispiel wird die bestehende Aufgabe b4 geändert, wobei die Aufgaben b1, b2 und b3 als Vorgängeraufgaben angegeben werden:

ALTER TASK b4 ADD AFTER b1, b2, b3;
Copy

Bisher konnten die Benutzer beim Erstellen oder Ändern von Aufgaben nur eine einzige Vorgängeraufgabe angeben.

Aktualisierungen bei Organisationen

Rolle ORGADMIN – Allgemeine Verfügbarkeit

Mit diesem Release können wir die allgemeine Verfügbarkeit der Rolle ORGADMIN in Snowflake bekannt geben. Organisationsadministratoren mit der Rolle ORGADMIN können Folgendes tun:

  • Anzeigen aller Snowflake-Konten und -Regionen einer Organisation

  • Erstellen neuer Snowflake-Konten zu einer Organisation

  • Umbenennen von Snowflake-Konten einer Organisation

  • Zugriff auf das ORGANIZATION_USAGE-Schema, das Nutzungs- und Abrechnungsdaten für alle Snowflake-Konten einer Organisation bereitstellt

Für Organisationen mit mehreren Konten ist die Rolle ORGADMIN im ersten erstellten Konto verfügbar, es sei denn, Sie haben angefordert, dass die Rolle einem anderen Konto hinzugefügt wird. Sie können überprüfen, ob ORGADMIN verfügbar ist, indem Sie diese Rolle in der Rollenliste der Weboberfläche suchen.

Der Kontoadministrator (d. h. ein Benutzer mit der Rolle ACCOUNTADMIN) kann sich selbst oder einem beliebigen anderen Benutzer die Rolle ORGADMIN zuweisen, indem er den folgenden Befehl ausführt:

GRANT ROLE ORGADMIN TO USER user1;
Copy

Weitere Informationen dazu finden Sie unter Einführung in Organisationen.

ORGANIZATION_USAGE-Ansichten zur Kostenüberwachung – Allgemeine Verfügbarkeit

Mit diesem Release können wir die allgemeine Verfügbarkeit der folgenden Ansichten im ORGANIZATION_USAGE-Schema der freigegebenen SNOWFLAKE-Datenbank bekannt geben. Sie können diese Ansichten verwenden, um die Kosten auf Objektebene für alle Konten Ihrer Organisation aufzuschlüsseln:

  • Speicher:

    • DATABASE_STORAGE_USAGE_HISTORY

    • STAGE_STORAGE_USAGE_HISTORY

  • Datentransfer:

    • DATA_TRANSFER_HISTORY

  • Serverlose Funktionen:

    • AUTOMATIC_CLUSTERING_HISTORY

    • MATERIALIZED_VIEW_REFRESH_HISTORY

    • PIPE_USAGE_HISTORY

    • REPLICATION_USAGE_HISTORY

    • SEARCH_OPTIMIZATION_HISTORY

Unterstützung der Umbenennung von Konten

Ab diesem Release kann ein Organisationsadministrator mit dem Befehl ALTER ACCOUNT ein Konto umbenennen und muss dafür nicht mehr den Snowflake-Support kontaktieren. Im folgenden Beispiel wird das Konto original_acctname in new_acctname umbenannt:

ALTER ACCOUNT original_acctname RENAME TO new_acctname;
Copy

Standardmäßig erlaubt Snowflake weiterhin den Zugriff auf das Konto über die bisherige URL mit dem vorherigen Kontonamen, unterstützt aber auch eine neue URL, die den neuen Kontonamen enthält. Sie haben die Möglichkeit, die alte URL zu löschen, damit der Zugang nur noch über die neue URL erfolgt. Weitere Details dazu finden Sie unter Verwalten von Konten in Ihrer Organisation.

Aktualisierungen für Data Governance

Zugriffsverlauf: Zugriff auf freigegebene Objekte in Verbraucherkonten anzeigen

Ab diesem Release bietet Snowflake die Möglichkeit, den Zugriff auf Objekte anzuzeigen, die von Benutzern von Verbraucherkonten mit Snowflake Secure Data Sharing freigegeben wurden. Mit dieser Aktualisierung erfasst Snowflake in der Spalte base_objects_accessed der ACCESS_HISTORY-Ansicht von Account Usage das Objekt, auf das in der Freigabe zugegriffen wird.

Wenn der Anbieter beispielsweise eine Tabelle und eine aus der Tabelle erstellte Ansicht für das Verbraucherkonto freigibt und eine Abfrage auf der freigegebenen Ansicht ausführt, erfasst Snowflake den Zugriff auf die freigegebene Ansicht in der Spalte base_objects_accessed. Anhand dieses Datensatzes, der die Werte columnName und objectName enthält, kann der Verbraucher erkennen, auf welches Objekt in seinem Konto zugegriffen wurde. Der Anbieter ist nun geschützt, da die zugrunde liegende Tabelle (über die Werte objectId und columnId) dem Verbraucher nicht offengelegt wird.

Maskierungsrichtlinien und Zeilenzugriffsrichtlinien: Unterstützung von IS_ROLE_IN_SESSION bei Suche in Zuordnungstabellen

Mit diesem Release erweitert Snowflake die Vielseitigkeit von Maskierungs- und Zeilenzugriffsrichtlinien, indem die IS_ROLE_IN_SESSION-Kontextfunktion nun Suchvorgänge auf Zuordnungstabellen ausführen kann. Richtlinienadministratoren können diese Funktion jetzt in Richtlinienbedingungen verwenden, um Suchvorgänge auf Zuordnungstabellen auszuführen und festzustellen, ob die aktiven Primär- oder Sekundärrollen des Benutzers einer Sitzung die Berechtigungen erben, die der im Argument der Kontextfunktion angegebenen Rolle erteilt wurden. Mit dieser Erweiterung ermutigt Snowflake die Verbraucher, in Richtlinienbedingungen, die eine Überprüfung der aktivierten Rollen in der Rollenhierarchie der aktuellen Rolle erfordern, die IS_ROLE_IN_SESSION-Kontextfunktion zu verwenden.

Weitere Informationen dazu finden Sie unter Grundlegendes zur Sicherheit auf Spaltenebene und Erläuterungen zu Zeilenzugriffsrichtlinien.

Maskierungsrichtlinien: Ansicht mit Richtlinienbedingungen bezüglich NULL, Länge, Skalierung und Genauigkeit der Rückgabewerte abfragen

Ab diesem Release bietet Snowflake eine neue, vorläufige Ansicht für die freigegebene SNOWFLAKE-Datenbank mit dem Namen:

SNOWFLAKE.BCR_ROLLOUT.BCR_2022_07_DDM_ROLLOUT

Diese Ansicht bietet Unterstützung, wenn Bedingungen einer Maskierungsrichtlinie nicht mit der Länge, Skalierung oder Genauigkeit einer Spalte übereinstimmen oder wenn die Richtlinienbedingungen einen NULL-Wert für eine NOT NULL-Spalte ergeben. Die Ansicht gibt Datensätze ab dem 15. Juli 2022 zurück.

Mithilfe dieser Ansicht können Sie bestimmen, wie sich das Verhaltensänderungs-Bundle 2022_07 auf Abfragen von Spalten auswirkt, die durch eine Maskierungsrichtlinie geschützt sind. Außerdem verschafft es genügend Zeit, um mit der Aktualisierung der Bedingungen für Maskierungsrichtlinien zu beginnen.

Weitere Details dazu finden Sie unter Abmildern der Aktualisierung der Rückgabewerte von Maskierungsrichtlinien.