Qu’est-ce qu’Azure SQL Data Warehouse ?

Microsoft a transformé ses services Azure en solutions cloud d’entreprise intégrant des fonctionnalités de pointe telles que la gestion et l’analyse des données.

Microsoft a lancé Azure SQL Data Warehouse lorsqu’il a pris la décision d’utiliser le cloud. Microsoft pousse Azure SQL Data Warehouse avec une grande énergie. Il s’agit d’un service de gestion de base de données flexible qui combine des fonctionnalités d’entrepôt de données élastiques.

Qu’est-ce qu’Azure SQL Data Warehouse ?

Azure SQL Data Warehouse (maintenant appelé Azure Synapse Dedicated SQL Pool, un entrepôt de données basé sur le cloud, vous permet de créer et de fournir un entrepôt de données sur Microsoft Azure. Azure Data Warehouse peut traiter de grandes quantités de données relationnelles et non relationnelles. Il offre Capacités d’entrepôt de données SQL et plate-forme de cloud computing.

Il prend en charge les serveurs SQL de manière native et peut migrer les serveurs SQL existants vers SQL Data Warehouse. Vous pouvez également utiliser les mêmes requêtes et constructions. De plus, les abonnés ont un accès instantané pour faire évoluer, mettre en pause et réduire leurs ressources d’entrepôt de données.

Il est utilisé pour fournir une solution complète d’entrepôt de données basée sur SQL de classe entreprise. Il peut également être utilisé des manières suivantes :

  • Migration des entrepôts de données existants (sur site) vers le cloud
  • Fournissez une solution d’entrepôt de données aux applications et services nécessitant le stockage et la récupération de données au moment de l’exécution, telles que les applications Web.
  • Une solution d’entrepôt de données hybride qui se connecte à l’entrepôt de données hébergé par Azure et à SQL Server sur site.

La meilleure fonctionnalité d’Azure SQL Data Warehouse est sa nature élastique. Il permet l’évolutivité et la possibilité de gérer séparément les ressources de stockage et de calcul. Il crée une plate-forme gagnant/gagnant où les utilisateurs ne paient que pour ce qu’ils utilisent et quand ils l’utilisent.

Le côté informatique d’Azure SQL Data Warehouse est basé sur Data Warehouse Unit (DWU), qui suit les ressources de calcul telles que les E/S de stockage et la mémoire sur tous les nœuds de calcul participants.

Azure SQL Data Warehouse propose une fonctionnalité de sécurité de connexion. Cela vous permet de limiter l’accès à des adresses IP ou à des plages IP spécifiques à l’aide de règles de pare-feu. L’intégration avec l’authentification Azure Active Directory (AAD) vous permettra de vous connecter à Azure SQL Data Warehouse en utilisant des identités d’Azure AD.

Le chiffrement multicouche offre une protection au repos, en mouvement et en cours d’utilisation pour protéger vos données contre toute utilisation abusive. Des outils supplémentaires sont disponibles pour auditer et surveiller les données et identifier les failles de sécurité.

Associé à d’autres outils Microsoft, Azure SQL Data Warehouse offre des performances inégalées, ce qui constitue un avantage majeur par rapport aux autres services comparables du marché.

Pool SQL dédié Azure Synapse

Azure Synapse SQL Pool Dedicated SQL Pool (anciennement Azure SQL Data Warehouse) est une banque de données de traitement massivement parallèle similaire aux technologies de bases de données scale-out basées sur des colonnes comme Snowflake et Amazon Redshift. Il ressemble à un serveur SQL traditionnel pour l’utilisateur final, mais il ne stocke ni ne traite les données sur un seul nœud.

Cela peut améliorer considérablement les performances des entrepôts de données dont la taille dépasse quelques téraoctets, mais il peut exister de meilleures solutions pour les implémentations plus petites.

L’architecture sous-jacente est très différente des serveurs SQL traditionnels. Cela signifie que la syntaxe et les méthodes de développement sont également différentes.

Les distributions sont mappées aux nœuds de calcul dans un pool SQL dédié. Le pool remappe vos distributions sur les nœuds de calcul à mesure que vous achetez plus de ressources informatiques.

Vous pouvez importer des données volumineuses à l’aide de requêtes SQL PolyBase simples, puis utiliser le moteur de requête distribué pour des analyses hautes performances.

Le pool SQL dédié, anciennement SQL DW, fournira à votre entreprise une source unique de vérité qui vous permettra d’intégrer et d’analyser les données plus rapidement et fournira des informations plus solides.

Quelle est la différence entre les pools SQL dédiés Azure Synapse et les pools SQL dédiés dans un espace de travail Azure Synapse Analytics ?

PowerShell est l’un des domaines les plus déroutants de la documentation entre « le pool SQL dédié (anciennement SQLDW) et les pools SQL dédiés » Synapse Analytics « .

L’implémentation d’origine de SQL DW utilise un serveur logique similaire à Azure SQL DB. Un module PowerShell nommé Az.Sql est partagé.

Ce module crée un nouveau pool SQL (anciennement SQLDW) à l’aide de l’applet de commande New.AzSqlDatabase. Il a un paramètre « Edition » qui vous permet de spécifier que vous voulez un DataWarehouse.

Synapse Analytics est venu avec un nouveau module PowerShell d’Az.Synapse lors de sa première sortie. Pour créer un pool SQL dédié dans un espace de travail Synapse Analytics, vous devez utiliser New-AzSynapseSqlPool.

Ce module PowerShell ne vous oblige pas à inclure le paramètre « Edition », car il n’est utilisé que pour les artefacts Synapse.

Un pool SQL dédié fournit un calcul et un stockage basés sur T-SQL. Les données peuvent être chargées, modélisées et traitées dans Synapse pour fournir un aperçu plus rapide.

Azure Synapse propose des pools Serverless SQL et Apache Spark en plus des pools SQL dédiés. Vous pouvez choisir le bon en fonction de vos besoins.
Un pool SQL sans serveur vous permet d’interroger les données stockées dans votre lac de données.

Que fait le pool SQL dédié Azure Synapse ?

Le pool SQL dédié Azure Synapse utilise une architecture évolutive pour répartir le calcul des données sur plusieurs nœuds. Vous pouvez faire évoluer le calcul indépendamment du stockage, car le calcul est distinct du stockage.

Les pools SQL sans serveur sont sans serveur et évoluent automatiquement pour répondre aux besoins en ressources de requête. Il s’adapte aux topologies changeantes en ajoutant, en supprimant ou en basculant des nœuds. Cela garantit que votre requête dispose de ressources suffisantes et peut être effectuée avec succès.

Synapse SQL est basé sur une architecture basée sur des nœuds. Synapse SQL utilise une architecture basée sur des nœuds. Les applications peuvent se connecter au nœud de contrôle et émettre des commandes T-SQL. C’est le point unique pour Synapse SQL.

Les nœuds de contrôle Azure Synapse SQL utilisent un moteur de requête distribué qui optimise les requêtes pour le traitement parallèle, puis transmet les opérations aux nœuds de calcul afin qu’ils puissent effectuer leur travail en parallèle.

Le nœud de contrôle du pool SQL sans serveur utilise le moteur de traitement des requêtes distribuées (DQP) pour optimiser et orchestrer l’exécution distribuée.

Cela se fait en divisant la requête de l’utilisateur en requêtes plus petites qui peuvent être exécutées sur des nœuds de calcul. Chaque tâche est une unité d’exécution distribuée. Il récupère les données d’autres tâches, regroupe les fichiers et les lit à partir du stockage.

Les nœuds de calcul stockent toutes les données utilisateur et exécutent des requêtes parallèles. Data Movement Service (DMS), un service interne au niveau du système, déplace les données entre les nœuds pour permettre des requêtes parallèles et renvoie des résultats précis.

Synapse SQL utilise Azure Storage pour la sécurité des données utilisateur. Stockage Azure stocke et gère vos données. Il y a des frais distincts pour l’utilisation du stockage.

Fonctionnalités des pools SQL dédiés Azure Synapse

Voici les principales fonctionnalités du pool SQL Azure Synapse :

  • Vous pouvez vous renseigner sur les données dans différents formats tels que Parquet, JSON et CSV dans le lac de données.
  • Les utilisateurs peuvent afficher les données les plus récentes à l’aide d’une abstraction relationnelle.
  • T-SQL vous permet de transformer les données du lac de manière simple et évolutive
  • Les scientifiques des données peuvent examiner rapidement la structure et le contenu des données du lac à l’aide d’OPENROWSET ou de fonctionnalités d’inférence de schéma automatique.
  • Les ingénieurs de données peuvent utiliser le pool pour explorer le lac et transformer, créer ou simplifier leurs pipelines de transformation de données.
  • Les analystes de données peuvent accéder aux données et générer des tables externes via le langage T-SQL et d’autres outils familiers. Ces outils peuvent également être connectés à un pool SQL sans serveur.
  • Générez instantanément des rapports BI par des professionnels de l’informatique décisionnelle sur des tables Spark ou un lac de données.

Pool SQL dédié Vs. Pool SQL sans serveur

Pool SQL sans serveur

Les espaces de travail Azure Synapse disposent d’un pool SQL sans serveur qui agit comme un service de requête sur des lacs de données. Il ne nécessite pas de configuration supplémentaire pour accéder aux données. Il est entièrement sans serveur et ne nécessite aucune infrastructure pour la configuration ou la maintenance.

La mise à l’échelle peut être effectuée automatiquement pour répondre aux besoins en ressources. L’utilisateur ne paie que pour les données traitées et non pour les ressources réservées. Le pool SQL sans serveur crée également des statistiques pour optimiser les exécutions de requêtes.

Par exemple, lorsque nous exécutons une requête deux fois ou exécutons deux requêtes avec des plans d’exécution similaires, ces statistiques peuvent être réutilisées.
Ces fonctionnalités nous permettent d’analyser rapidement de grandes quantités de données sans les copier ou les charger dans un magasin particulier.

Pool SQL dédié

Le pool SQL dédié Synapse est le successeur d’Azure SQL Data Warehouse et offre toutes les fonctionnalités d’entreposage de données d’entreprise. Cependant, il n’existe pas de pool SQL sans serveur. Au lieu de cela, les utilisateurs doivent créer et supprimer le pool SQL dédié Synapse. Nous pouvons également choisir les ressources qu’il utilisera.

Ces ressources sont mesurées à l’aide des pools SQL dédiés de Synapse. Ils sont appelés Data Warehousing Units (DWU). Un DWU fait référence à une combinaison de ressources CPU, mémoire et IO.

Le nombre de DWU détermine les performances et le coût du pool. Au lieu d’être facturés par requête, nous serons facturés pour chaque fois que le pool est actif, quel que soit le travail effectué.

Pour éviter des coûts supplémentaires, les pools dédiés peuvent être arrêtés et redémarrés. Nous avons créé un pool SQL dédié de 100 DWU pour notre test.

Une fois le pool créé, les données peuvent y être chargées à l’aide de la commande COPY, de PolyBase avec des requêtes T–SQL ou d’un pipeline. Ces données seront stockées dans un stockage en colonnes dans des tables relationnelles.

Pool SQL dédié Pool SQL sans serveur Cela vous permet d’interroger le lac de données et de l’ingérer. Les utilisateurs peuvent interroger les fichiers du lac de données. Une infrastructure est requise. Il n’est pas nécessaire d’établir une infrastructure ou de maintenir des clusters. serveurs dédiés.Aucune infrastructure n’est requise pour la transformation ou l’exploration des données.Les tables relationnelles sont utilisées pour stocker les données.Data Lake stocke les données.Vous pouvez gérer les coûts en mettant en pause le pool SQL et en réduisant l’entrepôt.Le coût est automatiquement géré et facturé en fonction de une base de paiement par demande.Les ressources réservées sont soumises à un coût.Les coûts de traitement des données par requête sont facturés.Payer par DWU provisionné.Payer par To traité.

Conclusion

Il s’agissait donc d’Azure SQL Data Warehouse (maintenant appelé Azure Synapse Dedicated SQL Pool). Bien qu’un pool SQL dédié puisse ressembler à un serveur SQL traditionnel sous de nombreux angles, l’architecture sous-jacente (traitement massivement parallèle) est entièrement différente. Cela signifie que certains concepts et techniques ne sont applicables qu’à un pool SQL dédié.

Vous pouvez également explorer les Différences entre Data Lake et Data Warehouse.