Global Snowflake Azure Blob | Blog sur l’entreposage de données Snowflake

Global Snowflake Azure Blob | Blog sur l’entreposage de données Snowflake


Snowflake est disponible dans un certain nombre de régions AWS alors que nous continuons à étendre notre présence géographique pour répondre à la demande des clients, réduire la latence et satisfaire à la conformité de l’industrie et aux réglementations spécifiques à chaque pays.

Alors que l’adoption mondiale de Snowflake se poursuit, nous nous attendons également à ce que les clients transfèrent des volumes de données de plus en plus importants entre les régions. Il existe plusieurs scénarios potentiels qui, pris ensemble, sont à l’origine de cette tendance, notamment :

  • Partage de données entre les régions. Un ensemble de données géré par un compte Snowflake dans une région spécifique peut être facilement partagé et consommé par d’autres dans différentes régions.
  • Synchronisation des données Snowflake entre différentes régions géographiques à des fins de reprise après sinistre.
  • Importation et exportation de données brutes depuis le stockage d’autres fournisseurs de cloud. Une demande courante des clients Snowflake exécutant Snowflake sur AWS était de prendre en charge l’importation et l’exportation vers Blob Storage dans Microsoft Azure.

Par conséquent, nous sommes heureux d’annoncer des fonctionnalités d’intégration supplémentaires avec Blob Storage dans Microsoft Azure. Cela fait partie de l’engagement de Snowflake à devenir un fournisseur de cloud mondial, prenant en charge les clients, quel que soit le ou les fournisseurs de cloud qu’ils choisissent. L’intégration avec Azure Blob Storage complète les fonctionnalités existantes de Snowflake pour le chargement et le déchargement des données. Désormais, les commandes Snowflake SQL permettant de définir une étape externe prennent en charge les spécifications d’URL et d’informations d’identification pour Azure Blob Storage. Cela permet aux clients d’importer et d’exporter des données vers des conteneurs Azure Blob Storage.

Cela cible les architectures avec des ensembles de données dans Azure. Les clients utilisant Microsoft Azure peuvent désormais échanger facilement des données avec Snowflake pour bénéficier des principales capacités d’analyse de Snowflake. L’image suivante illustre l’approche globale :

snowflake on aws

Le point d’intégration clé entre Azure et Snowflake est un conteneur dans Azure Blob Storage. Snowflake s’attend à ce que toutes les données à charger de l’application Azure dans Snowflake soient placées dans un conteneur. Ce conteneur est ensuite enregistré en tant qu’étape externe dans Snowflake à l’aide de la commande SQL Snowflake suivante :

CREATE STAGE azstage

URL = azure://<account>.blob.core.windows.net/<container>/<path>

CREDENTIALS=(AZURE_SAS_TOKEN=…)

Le paramètre URL de la commande CREATE STAGE prend désormais en charge les URL des points de terminaison du service Azure Blob Storage. Le point de terminaison d’un compte donné se trouve dans le volet de présentation du compte de stockage dans le portail Azure, comme illustré dans la figure suivante :

Slide2 1

Lors de la définition d’une étape externe dans Azure Blob Storage, l’URL du point de terminaison de service doit être suivie du nom du conteneur et peut inclure des spécifications de chemin supplémentaires. Notez que l’URL dans la définition de l’étape remplace « https : » de l’URL du point de terminaison par « azure ». Le chiffrement côté client est pris en charge pour les fichiers chiffrés à l’aide d’un SDK de stockage Azure ou d’une bibliothèque de chiffrement compatible. Les clients peuvent fournir leur clé de chiffrement à la commande CREATE STAGE. Vous trouverez des détails sur la création d’étapes Azure dans la documentation Snowflake ici.

Après avoir défini l’étape externe, les clients peuvent utiliser la syntaxe COPY familière de Snowflake pour faire référence à l’étape. Par exemple, l’instruction suivante charge un lot de fichiers de données du conteneur Azure Blob Storage dans une table cible T1 dans Snowflake :

COPY INTO T1 

FROM @azstage/newbatch

De même, l’instruction COPY suivante exporte le contenu d’une table T2 existante dans Snowflake vers un ensemble de fichiers dans l’étape externe Azure :

COPY INTO @azstage/t2data 

FROM T2

La prise en charge de l’étape externe Snowflake pour Azure Blob Storage complète l’expansion de Snowflake dans les centres de données Amazon du monde entier. Il offre désormais la possibilité d’accéder facilement aux données dans le stockage Azure à l’aide de la fonctionnalité Snowflake intégrée.

Bien que les fournisseurs de cloud ne facturent pas l’entrée de données, ils facturent la sortie de données. Pour les clients Snowflake utilisant les nouvelles étapes externes Azure, l’importation de données d’Azure Blob Storage dans Snowflake entraînera des frais de sortie de données pour la quantité de données transférées hors de leurs comptes Blob Storage. Les frais s’accumulent sur l’abonnement Azure auquel appartiennent les comptes de stockage Blob. Le taux auquel ces frais se produisent dépend de l’emplacement géographique du compte de stockage Blob et du volume de données transférées au cours d’une période de facturation. Vous pouvez trouver plus de détails ici.

À partir du 1er février 2018, nous répercuterons le coût de la sortie des données d’AWS et de Microsoft via des étapes externes. Ce coût apparaîtra sur votre facture. La sortie via JDBC et d’autres pilotes continuera d’être gratuite. Étant donné que la sortie de données est rare chez les clients Snowflake, notre analyse initiale montre que de nombreux clients ne seront pas affectés par ce changement.

La Facturation et utilisation La page du portail Web Snowflake suit les volumes de transfert de données de la même manière que l’utilisation de l’entrepôt et les volumes de stockage. Plus d’informations sur les prix de transfert de données Snowflake peuvent être trouvées ici.

Pour donner un exemple, l’exportation d’une table de 1 To entre les fournisseurs de cloud, de Snowflake s’exécutant dans USA Ouest sur AWS vers un conteneur Azure Blob Storage situé dans la région Azure East US, coûte 90 $. L’exportation de la table au sein d’AWS et dans un compartiment AWS S3 situé dans la région USA Est coûte 20 USD (moins cher puisque le transfert s’effectue dans les régions AWS des États-Unis). Les données transférées vers une étape externe dans la même région et le même fournisseur de cloud continuent d’être gratuites, par exemple, l’exportation de la table de l’exemple précédent dans un compartiment AWS S3 dans USA Ouest est gratuite.

Vérifiez Documentation sur les flocons de neige pour obtenir des informations détaillées sur l’échange de données entre Snowflake et Azure Blob Storage, ainsi que sur la nouvelle prise en charge de l’étape externe pour Azure Blob Storage.

Liens connexes

Laisser un commentaire

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