Produkt & Technologie

Snowflake erweitert Programmierbarkeit und unterstützt so die Entwicklung von KI-/ML- und Streaming-Pipelines

Snowflake erweitert Programmierbarkeit und unterstützt so die Entwicklung von KI-/ML- und Streaming-Pipelines

Wir bei Snowflake helfen Data Scientists, Data Engineers und Entwickler:innen, schneller und effizienter Lösungen in der Data Cloud zu erstellen. Vor diesem Hintergrund haben wir unseren Usern bei unserer jährlichen Konferenz, dem Snowflake Summit 2023, einige neue Funktionen vorgestellt, welche die Programmierbarkeit in Snowflake für ihre bevorzugte Sprache verbessern, ohne Kompromisse bei der Governance einzugehen. 

Eine der bemerkenswertesten Innovationen auf der diesjährigen Konferenz war die Weiterentwicklung und Erweiterung der Snowpark-Bibliotheken und -Laufzeitumgebungen, welche die Bereitstellung und Verarbeitung von nicht SQL-basiertem Code für Entwickler:innen noch einfacher und sicherer machen als zuvor. Die Unterstützung von Python 3.9 und 3.10 sowie für unstrukturierte Daten gehört ebenfalls zu den Neuerungen und wird die Datenverarbeitung mit Snowpark Python-UDFs und Stored Procedures künftig noch weiter vereinfachen. Die Funktion befindet sich aktuell in Public Preview. Präzise Listen für zugelassene und blockierte User für Python-Pakete sind zusätzlich nun in Private Preview und sorgen so für mehr Sicherheit und Governance für den Code in Snowflake. Die sichere Integration von APIs und Endpunkten ist nun mit externem Netzwerkzugriff möglich (jetzt in Private Preview). Mit den enthaltenen Sicherheitsfunktionen ist es nun möglich, Netzwerk-Traffic nur an bestimmten, von Benutzer:innen festgelegten Netzwerkstandorten zuzulassen.

Doch das sind nur einige Beispiele der Innovationen von Snowpark. Snowflake bietet noch viele weitere Möglichkeiten, um den Umfang und die Möglichkeiten der Programmierbarkeit in der Data Cloud zu erweitern. Diese einzigartigen Innovationen bringen folgende Vorteile für Kund:innen:

  • KI-/ML-Workflows werden einfacher, schneller und skalierbar
  • Streaming-Fähigkeiten werden ausgebaut
  • Die Beobachtbarkeit und die DevOps-Erfahrung werden verbessert

KI-/ML-Workflows werden einfacher, schneller und skalierbar

Der KI-/ML-Workflow lässt sich grob in drei Schritte aufteilen: Entwicklung, Betrieb und Nutzung. Der End-to-End-Prozess erfordert die Zusammenarbeit vieler Daten-, Technik- und Geschäftsteams, um den Wert KI-basierter Einblicke voll auszuschöpfen. Da diese Teams jedoch unterschiedliche Technologien verwenden und mit verschiedenen Programmiersprachen arbeiten, werden immer wieder Kopien der Daten in isolierten Umgebungen abgelegt. Und hierdurch fällt es den meisten Unternehmen schwer, den gesamten Workflow zu systematisieren und zu skalieren. 

Um die Entwicklung deutlich umfassender zu unterstützen, haben wir Snowpark Container Services (Private Preview) eingeführt. Hiermit erhalten Entwickler:innen Zugang zu einer sicheren, von Snowflake verwalteten Infrastruktur mit konfigurierbaren Hardwareoptionen, wie z. B. GPUs, mit der sie mühelos containerisierte Modelle bereitstellen, verwalten und skalieren können. Mit dieser neuen Snowpark-Laufzeit müssen sich Benutzer:innen nicht mehr mit komplexen Abläufen herumschlagen, um Rechenressourcen und Cluster für Container zu managen. Und sie müssen ihre kontrollierten Daten auch keinen Sicherheitsrisiken aussetzen, da sie das Snowflake-Konto nicht verlassen. Die zusätzliche Flexibilität sowohl für Programmiersprachen (beispielsweise R) als auch für Hardware (zum Beispiel GPUs) beschleunigt die Entwicklung und ermöglicht die Bereitstellung ausgefeilter Apps, wie z. B. gehostete Notebooks und LLMs, über Snowflake Native Apps. Hier noch einige weitere Snowpark-Innovationen, die KI-/ML-Entwicklung, -Betrieb und -Nutzung optimieren: 

Snowpark MLModelingAPI, um die Funktionsentwicklung zu beschleunigen und das KI-/ML-Training zu vereinfachen

Die Snowpark ML-APIs – darunter auch die ML Modeling API (Public Preview) und für ML Operations API (Private Preview) – ermöglichen eine einfachere End-to-End-ML-Entwicklung und -Bereitstellung in Snowflake. Auf Entwicklungsseite skaliert die Snowpark ML Modeling API das Feature Engineering horizontal und vereinfacht das Modelltraining in Snowflake.

Die Snowpark ML Modeling API ermöglicht die Implementierung einer Sklearn-ähnlichen, nativen Verarbeitung der Daten in Snowflake – ohne dass hierfür Stored Procedures erstellt oder Umgebungen parallelisiert werden müssen.

Außerdem können Data Scientists vertraute APIs nutzen, um Modelle direkt mit den Daten in Snowpark zu trainieren. Hierzu können sie Sklearn und XGBoost nativ auf Daten anwenden, ohne diese über Stored Procedures zu importieren, was die Benutzerfreundlichkeit steigert.

Snowpark Model Registry, um alle KI-/ML-Modelle eines Unternehmens zu speichern und zu kontrollieren

Nach der Entwicklung eines Modells können Data Scientists ihr Modell mit der Snowpark ML Operations API – welche die Snowpark Model Registry (Private Preview) enthält – nahtlos in Snowflake bereitstellen. So entsteht ein einheitliches Repository für die ML-Modelle des Unternehmens, mit dem Teams den ML-Betrieb (Machine Learning Operations, MLOps) optimieren und skalieren können. 

Mit der Registry können Modelle zentral veröffentlicht und erkannt werden, um die Zusammenarbeit zu optimieren – durch einen Prozess, in dem Data Scientists erfolgreiche Experimente an ML Engineers weitergeben, die sie in Modelle umwandeln und dann in der Snowflake-Infrastruktur in der Produktion einsetzen. 

Streamlit in Snowflake, um Daten und Modelle als interaktive Apps zum Leben zu erwecken

Streamlit in Snowflake (Public Preview in Kürze) erweckt Daten und ML-Modelle mit interaktiven, in Python erstellten Apps zum Leben. Es kombiniert die komponentenreiche und benutzerfreundliche Open-Source-Bibliothek Streamlit für die App-Entwicklung mit der Skalierbarkeit, Zuverlässigkeit, Sicherheit und Governance der Snowflake-Plattform. 

Mit Streamlit können Data Scientists und Python-Entwickler:innen Daten und Modelle schnell in interaktive Anwendungen verwandeln, die sofort vom Unternehmen eingesetzt werden können.

Vereinfachte Streaming-Pipelines in Snowflake

Wir erweitern unsere Streaming-Funktionen mit Dynamic Tables (Public Preview). Dynamic Tables kann kontinuierliche Daten-Pipelines für die Umwandlung von Batch- und Streaming-Daten erheblich vereinfachen. So funktionieren Streaming-Daten-Pipelines genauso einfach wie eine CTAS-Anweisung (Create Table as Select). In Kombination mit Snowpipe Streaming (Allgemeine Verfügbarkeit in Kürze) entfernt Snowflake die Grenzen zwischen Batch- und Streaming-Systemen und macht Streaming-Pipelines einfacher als je zuvor. 

Eine dynamische Tabelle ist eine neue Tabelle, die als Abfrage definiert wird und das Ergebnis dieser Abfrage kontinuierlich als Tabelle verwaltet. Dynamische Tabellen können mehrere Quellobjekte verbinden und aggregieren und die Ergebnisse schrittweise aktualisieren, wenn sich die Quellen ändern. Mit dynamischen Tabellen können Kund:innen eine Abfrage eingeben und festlegen, wie oft die Daten aktualisiert werden sollen, woraufhin Snowflake die Ergebnisse automatisch abruft. So wird die Vorberechnung der Daten automatisiert und muss nicht mehr als manueller Schritt von einem Data Engineer durchgeführt werden.

Verbesserte Beobachtbarkeit und End-to-End-Entwicklererfahrung

Um die Entwicklung von End-to-End-Anwendungen, -Pipelines und -ML-Modellen einfacher, schneller und unkomplizierter zu gestalten, stellen wir Entwickler:innen vertraute Funktionen und Erfahrungen bereit, mit denen sie effizienter arbeiten können. Hierzu haben wir auf dem Snowflake Summit verschiedene Funktionen für DevOps und Beobachtbarkeit vorgestellt. Hiermit können Entwickler:innen gemeinsam Anwendungen erstellen, sie einfach testen, Fehler schneller beheben, die nötige Stabilität erhalten und die Produktivität insgesamt steigern. 

Dazu gehören Funktionen wie die Git-Integration (Private Preview), mit der sich der Anwendungscode ganz leicht in Git und den Git-Workflow integrieren lässt. Benutzer:innen können Assets, die sich in einem Git-Repository befinden, direkt in Snowflake anzeigen, ausführen und bearbeiten – allein oder in Zusammenarbeit mit anderen. 

Auf dem Summit haben wir außerdem die Private Preview von Snowflake CLI angekündigt. Snowflake CLI ist eine Open-Source-Befehlszeilenschnittstelle (Command Line Interface, CLI), die speziell für App-orientierte Workloads in Snowflake entwickelt wurde. Mit einfachen Befehlen können Entwickler:innen Anwendungen, die in Snowflake-Workloads wie Streamlit, Native Apps, Snowpark-Containern oder Snowpark ausgeführt werden, erstellen, verwalten, aktualisieren und anzeigen.

Durch Protokollierung und Tracing über Ereignistabellen (Public Preview) können Sie Protokolle inner- und außerhalb von Snowflake untersuchen, um Fehler in der Snowflake-Engine zu erkennen und das Code-Debugging in Snowflake zu vereinfachen. 

All diese Funktionen lassen sich nahtlos zusammenfügen, um einen umfassenden DevOps- und Softwareentwicklungs-Lebenszyklus für die Apps und Daten in Snowflake zu schaffen und so produktivere Entwicklerworkflows zu ermöglichen.

Der nächste Schritt:

Snowflake bringt generative KI zu den Daten: Wir unterstützen Kund:innen dabei, LLMs sicher auf Unternehmensdaten anzuwenden, stellen KI-Tools als integrierte Funktionen und UIs bereit und noch vieles mehr. Sehen Sie sich unsere ML-Demo auf dem Summit an, um zu erfahren, wie das Ganze funktioniert. 

Mehr erfahren:
  • Dieser Quickstart Guide zeigt Ihnen, wie Sie mit Snowpark für Python in Data Engineering und maschinelles Lernen einsteigen können.
  • Testen Sie Snowpark in Snowflake Python Worksheets (Public Preview) mit diesem Quickstart Guide
  • Folgen Sie uns auf LinkedIn und Twitter, um stets die neuesten Nachrichten und Ankündigungen von Snowflake zu erhalten. 
Share Article

Subscribe to our blog newsletter

Get the best, coolest and latest delivered to your inbox each week

Starten Sie Ihre 30-tägigekostenlose Testversion

Testen Sie Snowflake 30 Tage kostenlos und erleben Sie die Data Cloud – ohne die Komplexität, Kosten und Beschränkungen anderer Lösungen.