Ausführen von pandas auf über 1 TB Unternehmensdaten direkt in Snowflake

Als eine der am weitesten verbreiteten Bibliotheken im Python-Ökosystem unterstützt pandas Entwickler:innen dabei, Daten in den Bereichen Data Science, Data Engineering und maschinelles Lernen zu analysieren, zu laden und zu transformieren. Die Flexibilität und Benutzerfreundlichkeit der pandas API haben zu einem rasanten Popularitätswachstum geführt. Laut der StackOverflow 2024 Developer Survey wird pandas von jedem fünften Entwickler verwendet.
pandas wurde jedoch ursprünglich als In-Memory-Datenstruktur entwickelt, was die Möglichkeit einschränkt, mit großen Datasets zu arbeiten. Das bedeutet oft, dass Entwickler:innen nur mit den Datenmengen arbeiten können, die auf ihre Rechner passen. Diese Herausforderungen im Hinblick auf den Umfang führen zu einer langsamen Entwicklung und stellen Hindernisse für Datenteams dar, die große Datenmengen bearbeiten müssen. Infolgedessen mussten Datenteams pandas-Code in andere Frameworks umschreiben, um mit größeren Datenmengen arbeiten zu können – bis jetzt.
Wir freuen uns, die allgemeine Verfügbarkeit von pandas auf Snowflake bekannt geben zu können, die das Beste aus der Snowflake AI Data Cloud für Python-Entwickler:innen bringt, indem sie skalierbare, verteilte pandas-Operationen in Snowflake ermöglicht.

Unsere Benchmark-Studien haben gezeigt, dass pandas auf Snowflake auf mehr als ein Terabyte an Daten skaliert werden kann – für Datasets, bei denen der Speicher der Standard-pandas-Bibliothek sogar mit weniger als 100 GB ausgeht. Im Durchschnitt über repräsentative Workloads hinweg zeigen wir, dass pandas auf Snowflake im 1-GB-Bereich etwa 6-mal schneller und etwa 30-mal schneller im 10-GB-Bereich sind als normales pandas im Arbeitsspeicher.
Minimale Anpassung oder Umschreibung erforderlich
Mit der Einführung von pandas auf Snowflake können Benutzer:innen mit ihrer vertrauten pandas API und Semantik arbeiten. Mit dieser Funktion können Entwickler:innen pandas direkt mit ihren Daten in Snowflake ausführen, während Abfragen in SQL übersetzt werden, um sie nativ in Snowflake auszuführen.
pandas auf Snowflake ist Teil der Snowpark Python-Bibliothek, die eine skalierbare Datenverarbeitung von Python-Code innerhalb der Snowflake-Plattform ermöglicht. Durch einfaches Ändern weniger Zeilen Importanweisung erhalten Entwickler:innen dieselbe pandas-Erfahrung, die sie mit den Skalierbarkeits- und Sicherheitsvorteilen von Snowflake kennen und lieben. Dadurch sind Migrationen zu Snowflake einfach und Datenteams sparen Zeit und Kosten für das Umschreiben ihrer pandas-Pipelines in andere Big-Data-Frameworks oder die Bereitstellung teurer High-Memory-Rechner.
Sicherer Zugriff auf Snowflake beseitigt sensible Datenrisiken auf lokalen Rechnern
Das In-Memory-Design von pandas hat Unternehmen vor Probleme gestellt – insbesondere die Sicherheits- und Governance-Probleme, die sich daraus ergeben, dass Unternehmensdaten zur Verarbeitung mit pandas auf Laptops übertragen werden. Als Teil der Snowpark Python-Bibliothek werden die Rechenressourcen direkt in der sicheren, kontrollierten Umgebung von Snowflake an Snowflake übertragen.
Aufbauend auf dem Open-Source-Projekt Modin
Wir bei Snowflake sind bestrebt, Entwickler:innen dort zu bedienen, wo sie sich befinden, indem wir Open-Source-Tools und -Standards mit den leistungsstarken Funktionen der Snowflake AI Data Cloud integrieren. pandas baut auf dem Open-Source-Projekt Modin auf. Modin ist eine verteilte pandas-Bibliothek, die im Oktober 2023 durch eine Übernahme zur Familie der Open-Source-Projekte bei Snowflake gestoßen ist. Modin wird von Hunderttausenden Data Scientists und Entwickler:innen genutzt, um ihre pandas-Workflows nahtlos zu skalieren. Snowflake beteiligt sich aktiv an dem Open-Source-Projekt und seiner aktiven Community.

pandas auf Snowflake ist ein integraler Bestandteil des Python-Entwicklerökosystems von Snowflake, zu dem auch Snowpark Python, Snowflake Python API, Streamlit in Snowflake und Snowflake Notebooks gehören. Diese neuesten Produktinnovationen bringen die Leistungsfähigkeit der Snowflake AI Data Cloud zu Python-Entwickler:innen und befähigen Datenteams zur effizienten Skalierung von Unternehmensdaten-Pipelines und -Applikationen.
Weitere Informationen finden Sie in der Snowflake-Dokumentation oder in beginnen Sie mit diesem Quickstart in Snowflake Notebooks.