Allgemeine Informationen zum Snowflake Native App Framework

Unter diesem Thema werden allgemeine Informationen zum Snowflake Native App Framework bereitgestellt.

Einführung in das Snowflake Native App Framework

Mit dem Snowflake Native App Framework können Sie Datenanwendungen erstellen, die die Hauptfunktionalität von Snowflake nutzen. Das Snowflake Native App Framework bietet Folgendes:

  • Erweitern der Möglichkeiten bestimmter Snowflake-Features, indem Daten und zugehörige Geschäftslogik für andere Snowflake-Konten freigeben werden. Die Geschäftslogik einer Anwendung kann eine Streamlit-App, gespeicherte Prozeduren und Funktionen umfassen, die mithilfe der Snowpark-API, JavaScript und SQL geschrieben wurden.

  • Freigeben einer Anwendung für Verbraucher über Freigabeangebote. Ein Freigabeangebot kann entweder kostenlos oder kostenpflichtig sein. Sie können Ihre Apps auf Snowflake Marketplace vertreiben und monetarisieren oder über private Freigabeangebote bestimmten Verbraucher bereitstellen.

  • Hinzufügen von umfangreichen Visualisierungen in Ihre Anwendung mithilfe von Streamlit.

Das Snowflake Native App Framework unterstützt auch eine verbesserte Benutzeroberfläche für Entwickler, die Folgendes bietet:

  • Eine optimierte Testumgebung, in der Sie Ihre Anwendungen von einem einzigen Konto aus testen können.

  • Ein robuster Entwickler-Workflow. Während Ihre Daten und die zugehörigen Datenbankobjekte in Snowflake verbleiben, können Sie unterstützende Codedateien und Ressourcen in der Versionskontrolle mit Ihren bevorzugten Entwicklertools verwalten.

  • Die Möglichkeit, Versionen und Patches für Ihre Anwendung zu veröffentlichen, sodass Sie als Anbieter die Logik Ihrer Anwendungen ändern und weiterentwickeln und schrittweise für die Verbraucher freigeben können.

  • Unterstützung der Protokollierung von strukturierten und unstrukturierten Ereignissen, sodass Sie Fehler beheben und Ihre Anwendungen überwachen können.

Bekannte Einschränkungen

Das Snowflake Native App Framework weist u. a. folgende Einschränkungen auf:

  • Snowflake-Konten auf Google Cloud Platform werden noch nicht unterstützt.

  • Cloud-übergreifende automatische Ausführung wird derzeit nur in AWS- und Azure-Regionen unterstützt.

  • Snowflake-Konten in Regionen für Regierungsbehörden werden nicht unterstützt.

  • Virtual Private Snowflake (VPS) wird nur innerhalb einer einzigen Organisation unterstützt.

  • Iceberg-Tabellen werden nicht unterstützt.

  • Temporäre Tabellen oder temporäre Stagingbereiche werden nicht unterstützt.

  • Einige Streamlit-Features werden nicht unterstützt. Weitere Informationen dazu finden Sie unter Nicht unterstützte Streamlit-Features.

  • Das Snowflake Native App Framework unterstützt kein Failover für die Geschäftskontinuität. Das Hinzufügen von Anwendungspaketen zu Replikationsgruppen und Failover-Gruppen wird nicht unterstützt.

Komponenten des Snowflake Native App Framework

Die folgende Abbildung zeigt eine Übersicht zum Snowflake Native App Framework.

../../_images/native-apps-overview.png

Das Snowflake Native App Framework basiert auf dem Konzept von Anbietern und Verbrauchern und wird von anderen Snowflake-Features verwendet, darunter Snowflake Collaboration und Secure Data Sharing

Anbieter

Ein Snowflake-Benutzer, der Dateninhalte und Anwendungslogik für andere Snowflake-Benutzer freigeben möchte.

Verbraucher

Ein Snowflake-Benutzer, der Zugriff auf die von einem Anbieter freigegebenen Dateninhalte und Anwendungslogik möchte.

Anwendungspaket entwickeln und testen

Um Dateninhalte und Anwendungslogik für einen Verbraucher freizugeben, erstellen Anbieter ein Anwendungspaket.

Anwendungspaket

Ein Anwendungspaket kapselt Dateninhalte, Anwendungslogik, Metadaten und das Setup-Skript, die für eine Anwendung erforderlich sind. Ein Anwendungspaket enthält außerdem Informationen zu den für die Anwendung definierten Versionen und Patch-Level (Revisionsnummern). Weitere Informationen dazu finden Sie unter Anwendungspaket erstellen.

Ein Anwendungspaket kann Referenzen auf Dateninhalte und externe Codedateien enthalten, die ein Anbieter in die Anwendung integrieren möchte. Ein Anwendungspaket erfordert eine Manifest-Datei und ein Setup-Skript.

Manifest-Datei

Definiert die von der Anwendung benötigten Konfigurations- und Setup-Eigenschaften, einschließlich Speicherort des Setup-Skripts, Versionen usw. Weitere Informationen dazu finden Sie unter Manifest-Datei für ein Anwendungspaket erstellen.

Setup-Skript

Enthält SQL-Anweisungen, die ausgeführt werden, wenn der Verbraucher eine Anwendung installiert oder aktualisiert oder wenn ein Anbieter eine Anwendung zum Testen installiert oder aktualisiert. Der Speicherort des Setup-Skripts wird in der Datei manifest.yml angegeben. Weitere Informationen dazu finden Sie unter Setup-Skript erstellen.

Anwendungspaket veröffentlichen

Nach Entwicklung und Test eines Anwendungspakets kann ein Anbieter eine Anwendung für Verbraucher freigeben, indem ein Freigabeangebot veröffentlicht wird, das das Anwendungspaket als Datenprodukt eines Freigabeangebots enthält. Das Freigabeangebot kann ein Snowflake Marketplace-Angebot oder ein privates Angebot sein.

Snowflake Marketplace-Freigabeangebot

Ermöglicht Anbietern die Vermarktung von Anwendungen über die Snowflake-Datencloud. Durch das Veröffentlichen eines Freigabeangebots auf Snowflake Marketplace können Anbieter Freigabeangebote für viele Verbraucher gleichzeitig freigeben, anstatt mit jedem einzelnen Verbraucher Austauschbeziehungen zu unterhalten.

Privates Freigabeangebot

Erlaubt Anbietern, die Vorteile von Freigabeangeboten zu nutzen, um Anwendungen direkt für ein anderes Snowflake-Konto in einer beliebigen vom Snowflake Native App Framework unterstützten Snowflake-Region freizugeben.

Weitere Informationen dazu finden Sie unter Allgemeine Informationen zu Freigabeangeboten für weitere Informationen.

Anwendung installieren und verwalten

Nachdem ein Anbieter ein Freigabeangebot mit einem Anwendungspaket veröffentlicht hat, können Verbraucher das Angebot entdecken und die Anwendung installieren.

Snowflake Native App

Eine Snowflake Native App ist das Datenbankobjekt, das im Verbraucherkonto installiert ist. Wenn ein Verbraucher die Snowflake Native App installiert, erstellt Snowflake die Anwendung und führt das Setup-Skript aus, um die erforderlichen Objekte innerhalb der Anwendung zu erstellen. Weitere Informationen dazu finden Sie unter Anwendungsobjekt erstellen.

Nach der Installation der Anwendung können die Verbraucher zusätzliche Aufgaben ausführen, darunter:

Weitere Informationen dazu, wie Verbraucher eine Anwendung installieren und verwalten, finden Sie unter Verwenden von Anwendungen als Verbraucher.