8 raisons de construire votre lac de données cloud sur Snowflake

8 raisons de construire votre lac de données cloud sur Snowflake


Vous souhaitez activer l’analyse, la science des données ou des applications avec des données afin de pouvoir répondre aux questions, prédire les résultats, découvrir des relations ou développer votre entreprise. Mais pour faire tout cela, les données doivent être stockées de manière à soutenir ces résultats. Cela peut être une décision simple lors de la prise en charge d’un petit cas d’utilisation bien connu, mais cela devient rapidement compliqué à mesure que vous mettez à l’échelle le volume de données, la variété, les charges de travail et les cas d’utilisation.

La simplification de l’expérience utilisateur a toujours été l’un des principes de conception les plus importants que nous suivons chez Snowflake, et cela s’applique tout à fait au stockage. Lorsque vous stockez des données dans Snowflake, votre expérience est considérablement simplifiée car de nombreuses fonctionnalités de gestion du stockage sont gérées automatiquement. Cela est important car vous pouvez être sûr que vos données sont sécurisées, fiables et optimisées pour un accès rapide et efficace à presque toutes les échelles. Plongeons-nous dans les capacités qui rendent cette expérience possible.

1. Prise en charge de toutes vos données

De nombreux clients ont trouvé que Snowflake était une excellente solution pour leurs besoins d’entreposage de données, en stockant et en analysant leurs données structurées et semi-structurées. Snowflake prend en charge nativement le chargement des formats de fichiers JSON, XML, Apache Avro, Apache ORC et Apache Parquet. Snowflake prend également en charge le format de table ouverte Apache Iceberg (maintenant en avant-première privée). Cependant, les clients ont généralement des documents, des images, des vidéos, des fichiers texte, etc. qu’ils souhaitent utiliser en tandem avec des données structurées et semi-structurées. Avec Snowflake ajouté prise en charge des données non structuréesvous pouvez stocker, sécuriser, gouverner, analyser et partager tous les types de données : structurées, semi-structurées et non structurées.

ZrUK85WUrkm04EU5CbmjMVg8JWlz4B4E4 A3kDgGcDHkbZlJd bQl5S
La plateforme Snowflake

2. Cryptage automatique

La sécurisation des données est d’une importance cruciale, mais peut être difficile à gérer avec de nombreux autres systèmes de stockage. Dans Snowflake, les données sont crypté automatiquement au repos et en transit. Nous utilisons le meilleur cryptage de sa catégorie où chaque partition de chaque table est cryptée à l’aide de clés distinctes dans un modèle hiérarchiqueréduisant considérablement l’étendue des données protégées par une clé unique.

Les clés gérées par Snowflake font également l’objet d’une rotation automatique tous les 30 jours. Faire confiance à Snowflake pour sécuriser vos données est une responsabilité que nous prenons très au sérieux, c’est pourquoi nous gérons la sécurité de plusieurs façons tout en éliminant la complexité pour vous.

Recréation périodique d’une clé principale de table pour une seule table.

3. Partitionnement automatique

L’interrogation d’une petite quantité de données est généralement rapide, mais lorsque l’échelle des données atteint des centaines de téraoctets ou de pétaoctets, un partitionnement efficace des données devient très important. Lorsque les données sont bien partitionnées, l’exécution des requêtes peut élaguer les partitions qui n’ont pas besoin d’être analysées et renvoyer rapidement les résultats. D’autres systèmes de stockage exigent souvent que vous décidiez des clés de partitionnement à utiliser et de la structure de dossiers à suivre. Ces décisions deviennent encore plus difficiles lorsqu’il existe plusieurs clés de partitionnement et des partitions imbriquées. De plus, une fois les données partitionnées, changer les clés de partition à l’avenir est un non-démarrage.

Lorsque les données sont stockées dans Snowflake, elles sont automatiquement partitionnées à l’aide du système unique de Snowflake. micro-partition architecture pour optimiser les performances. Vous n’avez pas à prendre de décision concernant les clés de partition ou l’ordre des clés. Les opérations DML tirent parti des métadonnées de micro-partition sous-jacentes pour simplifier la maintenance des tables.

AH6vbzHOeQdaEnx0gH tBkUU8XB874v0UJTLnSHIh xOxWDT84Nf0w ewPXwrtvP5q6FkHHTibjAV1A7w8o5eip1cPgCONGggpdPWv5slCqROMG2D1arImbW pX4ehwF50wevjadLnvZ4AMCHRHnF A
Représentation conceptuelle à petite échelle du regroupement de données utilisé par Snowflake dans des micro-partitions.

4. Regroupement automatique

En règle générale, les données stockées dans des tables sont triées selon certaines dimensions, telles que la date. S’il n’est pas trié ou s’il est trié sur les mauvais champs, les performances des requêtes sur ces tables seront probablement plus lentes, ce qui vous laissera une décision potentiellement coûteuse pour savoir où et comment trier.

Regroupement automatique– un service optionnel qui consomme des crédits Snowflake – gère de manière transparente et continue tous les regroupements de tables selon les besoins. Snowflake collecte les métadonnées de clustering pour chaque micro-partition lorsque les données sont chargées dans une table et utilise ces informations pour éviter une analyse inutile des micro-partitions pour les requêtes. Moins d’analyses signifie des performances plus rapides, ce qui se traduit par une réduction des coûts de calcul. Lorsque vous effectuez un DML sur des tables, Snowflake surveille et évalue si vous bénéficieriez d’un reclustering, tandis que vous conservez la possibilité de suspendre et de reprendre à tout moment.

UH17rxO5gcetEwJii7uqhN ZZP82137QQPnei03NQ87QH4K2Hq8gNK3vpRh3VqdK 71CcxwDgjDSl77XcKnPQ5 SB4o7mSfrEfv7CSspskBJFbKUiM5y6MPyWT6qbwwXpL 3d0L7n7yFMC2P5uLyBH4
Exemple de workflow standard sur une table en cluster.

5. Compression automatique

Les lacs de données utilisant le stockage d’objets dans le cloud sont une solution courante pour accueillir de gros volumes de données à faible coût, et la compression peut vous aider à économiser encore plus sur les coûts de stockage. Il existe plusieurs algorithmes de compression disponibles, mais choisissez judicieusement. Certains algorithmes peuvent fournir une meilleure compression mais sont lents à se décompresser, ce qui dégrade les performances des requêtes. Certains algorithmes fournissent des résultats optimaux pour la compression de colonnes entières ou décimales, mais ne sont pas aussi bons pour les colonnes textuelles (et vice versa).

Lorsque vous stockez des données dans Snowflake, vous n’avez pas à prendre ces décisions complexes. Les données sont automatiquement compressées à l’aide d’algorithmes de compression de pointe. Snowflake utilise divers algorithmes optimisés en fonction des types de données de colonne, ce qui peut fournir des gains de compression. Contrairement aux autres services de stockage d’objets, les coûts de stockage Snowflake sont calculés après compression. Par conséquent, les gains de compression se traduisent par des économies directes sur les coûts de stockage. Et comme la compression réduit la représentation du stockage, les requêtes analysent moins de données, produisent des résultats plus rapidement et utilisent moins de ressources de calcul, ce qui se traduit également par une meilleure rentabilité pour les clients. Toute amélioration de l’algorithme de compression dans Snowflake est automatiquement appliquée à tous les clients, ce qui réduit encore leurs coûts sans nécessiter aucune action de leur part.

6. Contrôles d’accès granulaires

La gouvernance est une exigence extrêmement importante à prendre en compte lors de la conception d’un lac de données. Lorsque vous implémentez un lac de données sur des services de stockage dans le cloud, vous devez sécuriser l’accès aux données à l’aide d’autorisations au niveau de l’objet. Les services de fournisseur de stockage cloud offrent des rôles et des privilèges IAM, qui permettent de lire, d’écrire et de supprimer des blobs ou des fichiers stockés dans des compartiments. À mesure que l’échelle de vos ensembles de données augmente, la gestion de ces privilèges peut rapidement devenir très complexe et fastidieuse. De plus, si vous répliquez ou migrez votre lac de données vers un autre cloud, vous devez traduire ces privilèges sur la plate-forme IAM d’un autre cloud, une tâche non négligeable même pour les administrateurs de cloud les plus expérimentés.

Snowflake simplifie la gestion des privilèges sur vos données en fournissant contrôle d’accès basé sur les rôles sur les objets table, qui se traduisent automatiquement en privilèges sur les micro-partitions sous-jacentes. Les propriétaires de table peuvent accorder des privilèges aux utilisateurs finaux à l’aide de commandes qui fonctionnent avec exactement la même syntaxe, quel que soit le fournisseur de cloud sous-jacent sur lequel Snowflake est déployé. Même si vos tables sont répliquées sur plusieurs clouds, les subventions sont automatiquement répliquées et synchronisées avec le service Snowflake.

9mofumw m4NbrxpIJh0qKxP2iLX8iXsnrE4lZQzSArO4BoIifVwig NpDp
Exemple de hiérarchie de rôles, d’objets et de privilèges.

7. Gestion automatique des versions, voyage dans le temps et sécurité intégrée

Lorsque vous effectuez des charges de travail et des opérations sur des données stockées, vous souhaiterez probablement un plan d’urgence en cas de suppression accidentelle de tables ou de bases de données entières. Pour les données stockées dans Snowflake, vous n’avez pas à vous soucier de la suppression ou de la mise à jour accidentelle des données en raison de la Voyage dans le temps et sécurité intégrée capacités. Vous pouvez voyager dans le temps pour voir l’état des données et des objets dans le passé et, si nécessaire, les objets UNDROP.

Scott workspace
Voyage dans le temps en flocon de neige

8. Réplication inter-cloud

Bien que le voyage dans le temps soit très utile, il ne suffit pas de constituer une contingence complète pour une continuité complète des activités, qu’un événement soit planifié ou non. En choisissant de stocker dans le cloud, vous êtes souvent limité à la disponibilité de ce cloud et de cette région en particulier. Cependant, le stockage des données dans Snowflake vous aide à mieux vous préparer à la continuité des activités et à la reprise après sinistre avec réplication, basculement et redirection client capacités dans toutes les régions et sur toutes les plates-formes cloud.

Cela signifie qu’en cas de panne dans une région ou une plate-forme cloud, vous pouvez promouvoir des objets de compte de réplica secondaires dans une autre région ou plate-forme cloud pour qu’ils servent d’objets principaux en lecture-écriture. Avec Snowflake, vous pouvez également déplacer votre compte vers une autre région ou plate-forme cloud sans interruption, ce qui est particulièrement utile lors de fusions, d’acquisitions ou de changements de stratégie cloud, par exemple.

d qDwQvB9IvKEWhoUMGSr5 rOb491D1PhFCdVyYO5tVlEgELsM7tE Fz4SyI4B 1tsjS90NMQYWKRgxGQi1R icjb72m9tLmehpFkvQVqUgFydbvUbhIheRhQjVwg8ce4zW7lvDVgZlHvrwInCX0fZY
Snowflake cross-cloud, réplication interrégionale à partir d’août 2022

Choisir le bon stockage pour le travail

Nous avons expliqué les raisons de créer un lac de données et de stocker des données dans Snowflake, et nous voulons donner à nos clients la flexibilité de créer des architectures qui répondent le mieux à leurs besoins et à leurs cas d’utilisation. Dans cet esprit, nous fournissons des options non mutuellement exclusives en créant différents produits de stockage pour prendre en charge différents modèles et cas d’utilisation. Et comme l’illustre cet article de blog, les cas d’utilisation optimisant les performances, la sécurité et la facilité d’utilisation doivent fortement envisager de stocker des données dans Snowflake.

DRAFT Data Lake v2 updated slides Deckhand
Types de table de flocon de neige et cas d’utilisation.

Prochaines étapes

Le stockage est un élément fondamental de l’architecture des données qui peut être compliqué. Snowflake s’efforce de simplifier cette situation grâce à l’automatisation. Si vous souhaitez en savoir plus, consultez ces ressources :

  • Si vous envisagez une migration de lac de données, cet ebook décrit sept paramètres dont vous et votre entreprise devriez tenir compte lors de la planification de votre initiative.

Pour découvrir les meilleures pratiques d’ingestion par lots et en continu avec Snowflake, lisez ce billet de blog.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.