Utiliser un pool SQL serverless Azure Synapse pour interroger des fichiers dans un lac de données
Gonzague Ducos
Technologies utilisée dans solutions de données est langage SQL, langage standard permettant d’interroger et de manipuler les données.
Comprendre les fonctionnalités des pools SQL serverless Azure Synapse et les cas d’usage
Pools SQL serverless dans Azure Synapse Analytics
Azure Synapse SQL : système de requête distribuée Azure Synapse Analytics2
2 types d’environnements d’exécution :
Pool SQL serverless : traitement des requêtes SQL à la demande, principalement utilisé pour les données d’un lac de données.
Pool SQL dédié : instances de base de données relationnelle à l’échelle de l’entreprise utilisées pour héberger des entrepôts de données où les données sont stockées dans des tables relationnelles.
Avantages
Transact-SQL pour interroger des données sur place sans avoir besoin de les copier ou de les charger dans un magasin spécialisé.
Connectivité intégrée issue d’un large éventail d’outils décisionnels et d’outils de requête ad hoc, y compris les pilotes les plus populaires.
Un traitement des requêtes distribuées conçu pour les données à grande échelle et les fonctions de calcul, ce qui améliore les performances de requête.
Une tolérance de panne pour l’exécution intégrée des requêtes, ce qui fournit des taux de réussite et de fiabilité élevés, même pour les requêtes longues qui impliquent des jeux de données volumineux.
Aucune infrastructure à configurer ni aucun cluster à gérer : un point de terminaison intégré fourni dans chaque espace de travail Azure Synapse.
Aucuns frais pour les ressources réservées. Seules les données traitées par les requêtes que vous exécutez vous sont facturées.
Quand utiliser les pools SQL serverless
Il vous suffit de pointer la requête vers les données qui se trouvent déjà dans le lac et de l’exécuter.
Modèle de ressource serverless Synapse SQL idéal pour charges de travail non planifiées à l’aide du point de terminaison SQL serverless AlwaysOn dans votre espace de travail Azure Synapse Analytics.
Utile pour connaître le coût exact de chaque requête exécutée afin de monitorer et attribuer les coûts.
Pool SQL serverless = système d’analytique. Pas pour :
Charges de travail OLTP telles que les bases de données utilisées par les applications pour stocker des données transactionnelles.
Charges de travail qui nécessitent des temps de réponse de l’ordre de quelques millisecondes
Charges de travail qui cherchent à identifier une seule ligne dans un jeu de données
Cas d’usages courants pour les pools SQL serverless
Exploration des données : parcourir le lac de données pour obtenir de premiers insights sur les données.
Facilement dans Azure Synapse Studio.
Parcourir les fichiers de votre stockage Data Lake associé et utiliser le pool SQL serverless intégré pour générer automatiquement un script SQL permettant de sélectionner les 100 premières lignes d’un fichier ou d’un dossier, comme vous le feriez avec une table dans SQL Server.
Appliquer des projections, un filtrage, un regroupement et la plupart des opérations sur les données comme si ces dernières se trouvaient dans une table SQL Server standard.
Transformation des données : Azure Synapse Analytics fournit des fonctionnalités de transformation de données intéressantes avec Synapse Spark, certains ingénieurs peuvent trouver que la transformation des données est plus facilement réalisable avec SQL, que ce soit de manière interactive ou dans le cadre d’un pipeline de données automatisé.
Entrepôt de données logiques : définir des objets externes comme des tables et des vues dans une base de données SQL serverless. Les données restent stockées dans les fichiers Data Lake, mais sont abstraites par un schéma relationnel qui peut être utilisé par les applications clientes et les outils analytiques pour interroger les données comme ils le feraient dans une base de données relationnelle hébergée dans SQL Server.
Interroger des fichiers avec un pool SQL serverless
Interroger des CSV, JSON et Parquet. Même syntaxe pour tous les types de fichiers.
OPENROWSET génère un ensemble de lignes tabulaires à partir des données d’un ou plusieurs fichiers.
Autre avantage : passer des informations d’authentification pour autoriser l’accès au stockage sous-jacent, sans autoriser les utilisateurs à accéder directement aux données du compte de stockage. Exemple ici avec une signature d’accès partagé (SAS) :