Snowflake Native App Framework jetzt für Entwickler:innen in AWS verfügbar
Beim Snowflake Summit 2022 haben wir mit dem Snowflake Native App Framework eine neue Art der App-Entwicklung vorgestellt. Heute freuen wir uns, die Power des Snowflake Native App Frameworks Entwickler:innen aus der ganzen Welt mit dem Public Preview auf AWS zugänglich zu machen.
Entwickler:innen können jetzt in Ihren Konten in AWS Snowflake Native Apps erstellen und testen. Die Funktionen zur Bereitstellung und Monetarisierung werden im Verlauf des Jahres im Public Preview auf AWS verfügbar gemacht. Das Snowflake Native App Framework ist weiterhin in Private Preview auf Google Cloud Platform und Azure verfügbar.
Zu den Unternehmen, die bereits eine Snowflake Native App erstellt haben, gehören unter anderem Bond Brand Loyalty, Capital One Software, The Depository Trust & Clearing Corporation (DTCC), Goldman Sachs, Bloomberg, LiveRamp, Informatica, Matillion, Samooha, NTT Data, My Data Outlet, Mapbox, Cybersyn, Sundeck, Affinity Solutions, Maxa.ai und Elementum.
Mehr als 25 neue Snowflake Native Apps sind bereits im Snowflake Marketplace verfügbar, zusätzlich zu unseren eigenen Snowflake Native Connectors für ServiceNow (Public Preview), Google Analytics (Private Preview), MySQL (Private Preview) und Postgres (Private Preview).
Diese Apps veranschaulichen, wie flexibel und vielfältig das Snowflake Native App Framework eingesetzt werden kann. Sie eignen sich z. B. für: Kostenmanagement, Identity Resolution, Data Clean Rooms, Datenanreicherung, Datenschutz und Tokenisierung, Geodatenanalyse, Natural Language Processing und vieles mehr.
Ihre App näher an die Daten Ihrer Kund:innen bringen
Unternehmen nutzen heute Hunderte von Apps, um ihre geschäftskritischen Aufgaben zu erfüllen. Durch die Verwendung dieser Apps entstehen jedoch häufig neue Datensilos, was zu fragmentierten Daten, einer fehlenden Source of Truth und nur begrenzter Kontrolle über die Daten führt. Und schlimmer noch: Viele Teams können nicht einmal auf die benötigten Apps zugreifen, weil für diese das Verschieben von Daten oder Data Sharing außerhalb ihrer gesicherten Datenplattform erforderlich ist.
Snowflake Native Apps sind eine völlig neue Möglichkeit, Daten sinnvoll einzusetzen. Anwender:innen können Snowflake Native Apps im Snowflake Marketplace finden und kaufen, sie dann installieren und sie innerhalb ihres eigenen Snowflake-Kontos ausführen. Indem wir die Apps zu den Daten bringen, eröffnen wir eine ganz neue Welt an Möglichkeiten, Daten anzureichern, zu aktivieren, zu verbessern, zu visualisieren und zu transformieren – ohne dass die Daten jemals das Konto der Anwender:innen verlassen.
Da Snowflake Native Apps im Konto des:der Endkund:in ausgeführt werden und die Daten nicht erst verschoben oder zugänglich gemacht werden müssen, sind die Herausforderungen hinsichtlich Sicherheit und Beschaffung minimal. Dies beschleunigt auch das Umsatzwachstum für die Anbieter und die Time-to-Value für die Kund:innen. Das geistige Eigentum des Anbieters ist vor den Kund:innen geschützt. Kund:innen können nur auf die für sie sichtbare Oberfläche zugreifen, aber nicht auf proprietäre Datasets oder Logiken von Anbietern.
Unter die Lupe genommen: Das Snowflake Native App Framework
Lassen Sie uns einen Blick darauf werfen, wie Snowflake Native Apps erstellt, bereitgestellt, monetarisiert und verwaltet werden können.
App erstellen
Entwicklung
Die Entwicklung einer Snowflake Native App beginnt in Ihrer eigenen Umgebung. Sie können beispielweise die Snowflake VSCode-Erweiterung und Snowpark verwenden, um Ihre App in Python zu schreiben.
Sie können erstklassige Snowflake-Funktionen nutzen, wie z. B. Snowpark und Streamlit in Snowflake (bald in Public Preview), und Datasets in Ihre App integrieren, um die Logik und die Oberfläche für Ihre App zu gestalten. Und dank der Unterstützung für Snowpark Container Services (derzeit in Private Preview) können Sie die Technologien und Plattformen Ihrer Wahl nutzen, um noch anspruchsvollere Produkte wie LLMs (Large Language Models) als Snowflake Native Apps zu entwickeln.
Konfiguration
Zusätzlich können Sie Pop-up-Benachrichtigungen implementieren, um Ihre Kund:innen nach Berechtigungen auf Kontoebene, für den Zugriff auf Objekte und Genehmigungen für privilegierte Aktionen zu fragen. Die Kund:innen haben die vollständige Kontrolle darüber, worauf die Apps innerhalb ihres Kontos zugreifen kann.
Package
Sobald Sie Ihre App geschrieben haben, können Sie die Codedateien ganz einfach mit einem Snowflake Native App Package verpacken. Dabei handelt es sich um eine in sich geschlossene Einheit von Code und Daten, die Sie mit Ihren Kund:innen teilen können, aber gleichzeitig die volle Kontrolle über Ihr geistiges Eigentum behalten.
Test
Nachdem Ihr Code verpackt ist, können Sie Ihre Snowflake Native App testen und debuggen, indem Sie das Snowflake Native App Package installieren, das die App instanziiert. Da Sie die Funktionalität Ihrer App innerhalb des Snowflake-Kontos testen können, sparen Sie Zeit und brauchen keine separaten Testumgebungen mehr, was eine kontinuierliche Verbesserung und eine Verkürzung der Entwicklungsschleifen ermöglicht.
Nach dem Testen Ihrer App können Sie Codeänderungen durch Erstellen von Versionen des Snowflake Native App Package durchführen. Sie können Ihre bestehenden CI/CD-Pipelines nutzen, um Codeänderungen durch das Erstellen von Versionen automatisch zu übertragen.
App bereitstellen und monetarisieren
Sobald Sie Ihre Snowflake Native App erstellt haben, ist es nun an der Zeit, sie zur Nutzung – und zum Kauf – bereitzustellen.
Sicherheitsüberprüfung
Um die Sicherheit von Snowflake Native Apps zu gewährleisten, überprüft Snowflake automatisch jede Version von öffentlich freigegebenen Apps auf potenzielle Sicherheitsbedrohungen und potenziellen Missbrauch. Snowflake Native Apps können direkt im Konto der Endanwender:innen installiert werden, ohne dass Daten verschoben oder kopiert werden müssen. In Verbindung mit den Sicherheitsüberprüfungen beschleunigt dies den Verkaufszyklus, da die Zeit für die Kundensicherheits- und Compliance-Überprüfung verkürzt wird.
Im Snowflake Marketplace veröffentlichen und monetarisieren
Das Snowflake Native App Framework bietet große Flexibilität bei der Bereitstellung Ihrer App. Möchten Sie Ihre Snowflake Native App mit Ihren Teamkolleg:innen oder einer anderen Abteilung teilen? Sie können sie innerhalb Ihres Unternehmens gemeinsam nutzen. Möchten Sie eine externe Zielgruppe erreichen? Sie können Ihre App als öffentlich einstellen, sodass jeder auf dem Snowflake Marketplace sie finden, kaufen und installieren kann. Eine andere Option ist es, mithilfe einer privaten Auflistung ausgewählte Kund:innen und Konten gezielt anzusprechen.
Als App-Anbieter können Sie das Preismodell festlegen, und Snowflake kümmert sich in Ihrem Namen um die Abrechnung und Rechnungsstellung an die Kund:innen.
Snowflake bietet eine Reihe von Monetarisierungsoptionen, von abonnementbasierten Modellen bis hin zu nutzungsbasierten Modellen, die pro Monat oder pro Abfrage abgerechnet werden. Mithilfe der Funktion „Custom Event Billing“ können Sie darüber hinaus Ihre eigene Preisstrategie entwickeln. Sie können nutzungsabhängig abrechnen und Abrechnungsereignisse je nach Ihren Präferenzen festlegen, z. B. verwendete Zeilen, übertragene Zeilen, einzelne übertragene Benutzer, monatliche Standorte und mehr.
Dies bietet auch den Kund:innen Vorteile: Mit der plattforminternen Abrechnung können die Kunden per Kreditkarte, ACH oder sogar über ihr Snowflake Capacity-Konto bezahlen. Und da diese kundenorientierten Apps „Powered by Snowflake“ sind, profitieren die Anwender:innen von der bewährten Skalierbarkeit, Geschwindigkeit und Zuverlässigkeit von Snowflake.
App verwalten
Telemetrie
Das Snowflake Native App Framework nutzt die Telemetriefunktionen der Snowflake Plattform, wie Protokolle, Ereignisse und Warnmeldungen, mit denen App-Anbieter die App-Performance überwachen und Fehler beheben können. Kund:innen können ihre Protokolle und Ereignisse mit dem App-Anbieter teilen, um die Fehlersuche und -behebung zu unterstützen.
Versionierung
Dank der in das Snowflake Native App Framework integrierten Versionierung können Sie wichtige Funktionsupdates und Fehlerbehebungen schrittweise vornehmen. Das Framework bietet Release-Richtlinien, mit denen Sie eine Version auf bestimmte Kund:innen ausrichten können. Das ermöglicht Ihnen ein stufenweises Rollout Ihrer Apps und sogar die Erstellung von Beta-Programmen. Und da neue Versionen automatisch an die Kund:innen übermittelt werden, erhalten diese immer die neuesten Änderungen ohne zusätzliche Ausfallzeiten oder Unterbrechungen.
So legen Sie los: Die Zukunft von Snowflake Native Apps
Snowflake Native Apps stehen gerade erst am Anfang. In diesem Blogbeitrag erfahren Sie mehr darüber, wie Sie mit Snowpark Container Services Ihre eigenen Technologien und Plattformen in Ihre Snowflake Native Apps einbinden können.
Wir sind gespannt, welche Applikationen und Anwendungsfälle das Snowflake Native Application Framework inspirieren wird. Unter snowflakecloud.wpenginepowered.com/native-apps/ können Sie mit der Entwicklung loslegen und erhalten Kurzanleitungen, Codebeispiele und Dokumentationsmaterial, um Ihre erste App zu erstellen! Besuchen Sie unsere Snowflake Native Apps Community, um sich mit anderen Entwickler:innen auszutauschen und von deren Wissensschatz zu profitieren. Außerdem können Sie damit beginnen, Snowflake Native Apps in AWS auf dem Snowflake Marketplace zu verwenden. Sehen Sie sich hier alle verfügbaren Optionen an.