Du hast Fragen? Wir haben Antworten! - Bald findet unser nächster Tag der offenen Tür statt!

Logo site

Snowflake: Alles über die „Data Cloud“ und wie man sie nutzt

-
5
 Minuten Lesezeit
-
snowflake cloud

Snowflake ist ein vollständig auf der Cloud basierendes Data Warehouse. Erfahre alles, was du über diese in der Data Science immer beliebter werdende Plattform wissen musst, und wie du in einer Snowflake-Schulung lernst, sie zu nutzen.

Im Zeitalter von Big Data werden Data Warehouses immer häufiger eingesetzt. Diese hochparallelen SQL- oder NoSQL-Datenbanken wurden speziell für die Datenanalyse entwickelt.

Sie ermöglichen es, Daten aus vielen verschiedenen Quellen zu importieren und zu analysieren. Die Idee von Snowflake ist es, ein Data Warehouse direkt in der Cloud anzubieten.

Snowflake Cloud - Präsentation

Snowflake ist ein Data Warehouse, das vollständig und nativ für die Cloud entwickelt wurde. Es ist auf Amazon Web Services und Microsoft Azure verfügbar.

Es handelt sich um eine spaltenbasierte relationale Datenbank mit vektorisierter Ausführung. Mit anderen Worten: Sie kann selbst die anspruchsvollsten Datenanalyseaufgaben bewältigen.

Ihre Architektur trennt die Berechnung von der Speicherung, so dass Skalierung jederzeit möglich ist, auch wenn Abfragen ausgeführt werden. Die Nutzer zahlen nur für die genutzte Rechenleistung.

Dank seiner adaptiven Optimierungstechnologie erzielt Snowflake automatisch die bestmögliche Leistung für jede Abfrage. Es besteht keine Notwendigkeit, die Konfigurationsparameter manuell zu verwalten.

Darüber hinaus ermöglicht seine gemeinsame Datenarchitektur mit mehreren Clustern einen unbegrenzten Wettbewerb. Das bedeutet, dass mehrere Rechencluster gleichzeitig mit denselben Daten arbeiten können, ohne die Leistung zu beeinträchtigen. Die Funktion des virtuellen Multi-Cluster-Data-Warehouse ermöglicht es übrigens, die Leistung automatisch an die Wettbewerbsanforderungen anzupassen.

Snowflake Architektkur: Wie funktioniert sie?

Die Snowflake-Architektur ist unterteilt in virtuelle Recheninstanzen für das Computing und einen Speicherdienst für die Speicherung persistenter Date

Auf das zentrale Datenverzeichnis kann von allen Rechenknoten des Data Warehouse aus zugegriffen werden. Außerdem wird die Datenverarbeitung von massiv-parallelen Rechenclustern übernommen. Jeder Knoten im Cluster speichert einen Teil des Datensatzes lokal.

Wenn Daten auf Snowflake geladen werden, werden sie in seinem komprimierten Spaltenformat reorganisiert. Auf die Daten kann mithilfe von SQL-Abfragen zugegriffen werden.

Da es sich um eine 100%ige Cloud-Plattform handelt, ist es nicht möglich, sie auf einer privaten Cloud-Infrastruktur vor Ort oder gehostet laufen zu lassen. Einer der Vorteile ist, dass keine Installation oder Konfiguration erforderlich ist. Die Wartung und die Einstellungen werden von Snowflake übernommen.

Verbindungen zu Snowflake können über seine Webschnittstelle, über das SnowSQL CLI, über ODBC- und JDBC-Treiber von Anwendungen wie Tableau, über native Konnektoren für Programmiersprachen oder über Drittanbieter-Konnektoren von BI- und ETL-Tools hergestellt werden.

Snowflake Funktionen

Die Data Warehouse Cloud von Snowflake ist mit den meisten der in SQL:1999 definierten DDLs und DMLs und den analytischen Erweiterungen von SQL:2003 kompatibel. In Bezug auf die Konnektivität gibt es Konnektoren und Treiber für Python, Spark, Node.js, Go, .Net, JDBC, ODBC und die Open-Source-Erweiterung dplyr-snowflakedb.

Virtuelle Warehouses können über die GUI oder über Befehlszeilen gesteuert werden. Sie können erstellt, in der Größe verändert, angehalten oder gelöscht werden. Die Größenänderung kann während der Ausführung einer Abfrage ohne Downtime durchgeführt werden. Dies erweist sich als sehr praktisch, um eine Anfrage zu beschleunigen.

Die Plattform ist mit einer Vielzahl von Daten- und Dateiformaten kompatibel. Es ist möglich, komprimierte Dateien oder Formate wie JSON, Avro, ORC, Parquet und XML hochzuladen. S3-Datenquellen und lokale Dateien werden ebenfalls unterstützt. Die Daten können auf sichere Weise mit anderen Snowflake-Konten geteilt werden.

Die Sicherheitsfunktionen variieren je nach Edition. Die Standard Edition bietet automatische Verschlüsselung aller Daten, Multi-Faktor-Authentifizierung und Single Sign-On.

Bei der Enterprise Edition kommt das regelmäßige „Re-Keying“ verschlüsselter Daten hinzu. Die Enterprise Edition for Sensitive Data fügt HIPAA- und PCI DSS-Kompatibilität hinzu. Du kannst auch auswählen, wo die Daten gespeichert werden, um die Einhaltung der DSGVO zu erleichtern.

Snowflake Vorteile

In der Vergangenheit wurden die Daten von den Unternehmen lokal gespeichert. Data Engineers und Analysten betrieben Open-Source-Software wie Apache Hadoop für die Datenspeicherung und -analyse.

Es gibt jedoch nur wenige Data Engineers, die ein solches System entwickeln und pflegen können. Mit seinem Data Warehouse als SaaS (Software as a Cloud Service) schafft Snowflake Abhilfe für diesen Mangel.

Die Nutzer müssen sich weder um physische oder virtuelle Hardware kümmern, noch müssen sie Software installieren. Die Updates und die Wartung werden von den Snowflake-Teams übernommen.

Diese Lösung ist außerdem schneller, benutzerfreundlicher und flexibler als herkömmliche Data Warehouses. Außerdem basiert diese Plattform nicht auf einer bereits existierenden Softwareplattform wie Hadoop.

Sie basiert auf einer brandneuen SQL-Datenbank-Engine, die von Snowflake mit einer für die Cloud entwickelten Architektur erstellt wurde. So kann jeder Softwareingenieur mit SQL-Kenntnissen Snowflake verstehen und nutzen.

Konkurrenz & Alternativen zu Snowflake

Zu den Hauptkonkurrenten von Snowflake gehören Amazon Redshift, Google BigQuery und Microsoft Azure SQL Data Warehouse. Dabei handelt es sich um die Data Warehouse-Angebote der drei größten Cloud-Anbieter.

Zu ihren weiteren Rivalen gehören auch Teradata, Oracle Exadata, MarkLogic und SAP BW/4HANA. Diese Lösungen können in der Cloud, aber auch vor Ort installiert werden.

 

Benutzung von Snowflake

Snowflake bietet viele Vorteile, aber seine Nutzung kann sich als kompliziert erweisen. Aus diesem Grund bietet die Firma mehrere Tutorials und Videos an, die Dir helfen, die Plattform zu beherrschen. Einige sind allgemein gehalten und richten sich an Anfänger, andere bieten die Möglichkeit, spezifische Funktionen genauer zu entdecken.

Du kannst dich auch für eine Snowflake-Schulung entscheiden. DataScientest bietet dir die Möglichkeit, das Cloud Data Warehouse durch unseren Machine Learning Engineer-Kurs und unseren Data Engineer-Kurs zu beherrschen.

 

Was unterscheidet Snowflake von der Konkurrenz ?

Es gab Zeiten, in denen der Kaufpreis für einen Kabelfernsehdienst bedeutete, dass Infrastruktur und Inhalte in einem einzigen Angebot enthalten waren. Heute sind diese Elemente getrennt und die Nutzer haben mehr Kontrolle darüber, was sie nutzen und wie sie dafür bezahlen.

Die Architektur von Snowflake ermöglicht eine ähnliche Flexibilität bei Big Data. Dieses Cloud-Computing-Tool trennt Speicher- und Rechenfunktionen, was bedeutet, dass Unternehmen, die einen hohen Speicherbedarf haben, aber weniger CPU-Zyklen benötigen, oder umgekehrt, nicht für ein integriertes Paket zahlen müssen, bei dem sie für beides bezahlen müssen.

Dieses Unterscheidungsmerkmal ist einer der Faktoren, die es den Mitbegründern (Marcin Zukowski, Benoît Dageville und Thierry Cruanes) ermöglicht haben, mehreren Organisationen Millionen von Dollar einzusparen und gleichzeitig ihr Start-up seit der Finanzierungsrunde im Februar 2020 auf heute zweistellige Milliardenbeträge zu bewerten.

Die Nutzer können ihre Kapazität je nach Bedarf erhöhen oder verringern und zahlen nur für die so benötigte Arbeitslast bei Snowflake.

Die Nutzung wird in gespeicherten Terabytes pro Monat abgerechnet. Und die Berechnung wird pro Sekunde abgerechnet. Im Grunde besteht die Snowflake-Architektur aus drei Schichten, von denen jede unabhängig skalierbar ist:

  1. Speicher
  2. Berechnung
  3. und Dienste.

Datenspeicherschicht

Die Speicherschicht der Datenbank enthält alle in Snowflake geladenen Daten, einschließlich strukturierter und halbstrukturierter Daten. Snowflake bietet eine automatische Verwaltung der Speicheraufgaben, die von der Organisation der Daten über die Strukturierung bis hin zur Komprimierung reichen. Außerdem ist der Betrieb dieser Datenspeicherungsschicht völlig unabhängig von dem der Rechenschicht.

Berechnungsschicht

Die Rechenschicht besteht aus virtuellen Warehouses, die die für die Abfragen notwendigen Datenverarbeitungsaufgaben ausführen. Jedes virtuelle Warehouse (oder Cluster) kann auf alle Daten in der Speicherschicht zugreifen und dann unabhängig arbeiten, so dass die Warehouses die Rechenressourcen nicht teilen oder um sie konkurrieren. Dies ermöglicht eine automatische Skalierung ohne Unterbrechung, was bedeutet, dass sich die Rechenressourcen während der Ausführung von Abfragen ändern oder nicht ändern und daher keine Neuverteilung oder Neuabstimmung der Daten in der Datenspeicherschicht erforderlich ist.

Cloudschicht

Die Schicht der Cloud-Dienste verwendet ANSI SQL und koordiniert das gesamte System. Sie macht eine manuelle Verwaltung und Anpassung des Data Warehouse überflüssig. Zu den Diensten dieser Schicht gehören Authentifizierung, Infrastruktur- und Metadatenverwaltung, Analyse und Optimierung von Abfragen sowie Zugriffskontrolle.

Du weißt jetzt einiges über Snowflake. Schau dir unser komplettes Dossier über Docker an, ein weiteres Schlüsselwerkzeug für Big Data.

DataScientest News

Melde Dich jetzt für unseren Newsletter an, um unsere Guides, Tutorials und die neuesten Entwicklungen im Bereich Data Science direkt per E-Mail zu erhalten.

Möchtest Du informiert bleiben?

Schreib uns Deine E-Mail-Adresse, damit wir Dir die neuesten Artikel zum Zeitpunkt der Veröffentlichung zusenden können!