Dans cet article je vous présente les principaux services permettant de traiter les données d’un datalake dans Azure.
Rappel
Vous trouverez dans mes articles précédents les explications concernant :
- Les architectures de type datalakehouse : Datawarehouse ou datalakehouse, quelle source pour vos reportings ?.
- Les datalakes :Datalake : la base d’un projet data moderne.
Les services de données spécialisés
Azure Data Factory
Azure Data Factory est un outil de type ETL/ELT (Extract Transform Load / Extract Load Transform), il permet de réaliser des déplacements de données d’un point à un autre en réalisant des transformations sur les données. Parmi les usages classiques, on retrouve :
- Alimentation de la zone Bronze d’un datalake avec des données en provenance de service cloud et de vos réseaux d’entreprise (via un programme installé sur vos serveurs)
- Transformation et structuration des données :
- Création de fichiers structurés de type Parquet
- Re modélisation des données applicative vers un modèle en étoile
- Transformation de données semi-structurées de type JSON en données structuré de type Parquet
- Suivi de l’exécution des traitements de transformation
Vous retrouverez les informations sur le produit ici.
Azure Synapse Analytics
Azure Synapse Analytics est avant tout une suite d’outils comprenant :
- un outil de type ETL/ELT, qui est simplement une version d’Azure Data Factory
- des moteurs de traitements de données :
- SQL
- Pools provisionnés : Vous louez des capacités de traitements SQL dédiés.
- Serverless : Vous payez vos traitements SQL à la requête.
- Apache Spark : le moteur de traitement de données Apache Spark qui permet de créer des traitements de données fortement scalable. Vous pouvez écrire des traitements dans différents langages (Python/R/Scala/Java) et les exécuter sur la plate-forme Spark.
- Data Explorer : un moteur de traitement spécialisé dans les traitements des logs et des séries temporelles.
- SQL
- un outil de monitoring
- un espace de création regroupant tous les services ci-dessus.
Azure Synapse Analytics est le service phare de la suite Azure pour les traitements de données.
Vous retrouverez les informations sur le produit ici.
Azure Databricks
Azure Databricks est l’implémentation de Databricks dans Azure.
Databricks est un outil basé sur Apache Spark tout en incluant des services complémentaires. Au même titre qu’Azure Synapse Analytics, il permet de créer des traitements d’ingestion et de préparation de données.
Contrairement à Azure Synapse Analytics, Databricks est prévu pour être multicloud, vous retrouverez ce service dans AWS (Amazon) ou GCP (Google).
Vous retrouverez les informations sur le produit ici.
Azure Data Explorer
Azure Data Explorer est un moteur de traitement spécialisé dans les traitements des logs et des séries temporelles.
Microsoft a créé un langage de requête dédié nommé KQL (Kusto Query Language) permettant de plonger dans les puits de logs comme le commandant Cousteau dans la mer.
Vous retrouverez les informations sur le produit ici.
Les services cognitifs
Azure Cognitive Services
Azure Cognitive Services est un ensemble de service de type IA préentrainé que vous pouvez consommer directement sous forme d’API.
Parmi les principaux services proposés, on retrouve :
- La reconnaissance de texte
- La reconnaissance faciale
- La reconnaissance d’entité sur des images ou vidéos
Vous pouvez intégrer ces services dans vos traitements de données pour enrichir ces dernières.
Vous retrouverez les informations sur le produit ici.
Azure Machine Learning
Azure Machine Learning est un outil de création d’expérience de Machine Learning, il prend en charge de bout en bout ce type de projet de la création du modèle à son exploitation en production.
Les modèles ainsi créés pourront enrichir vos traitements de données.
Vous retrouverez les informations sur le produit ici.
Les services de calcul utilisable pour traiter les données
Azure Functions
Azure Functions permet d’exécuter du code à la demande dans Azure, sans louer de ressources en permanence. Vous êtes facturé à l’usage.
Vous pouvez créer des traitements s’exécutant à la demande, sur des évènements Azure ou de manière planifiée.
Les principaux langages disponibles sont :
- C#
- JavaScript
- Java
- PowerShell
- Python
- TypeScript
Par défaut les Azure Functions sont limitées à 5 minutes d’exécutions, 10 maximum. Si vous avez besoin de plus regarder les fonctions durables.
Vous retrouverez les informations sur le produit ici.
Azure Logic Apps
Azure Logic Apps est un outil de création de traitement low code. Il est très proche en termes d’interface et d’utilisation de Power Automate, mais contrairement à ce dernier vous payez les traitements à l’exécution, quels que soient les connecteurs utilisés.
Vous pouvez créer des traitements s’exécutant à la demande, sur des évènements Azure ou de manière planifiée.
Vous retrouverez les informations sur le produit ici.
Autres services Azure à intégrer
Azure Key Vault
Azure Key Vault est un coffre-fort pour vos mots de passe, est-il besoin de rappeler qu’un mot de passe n’a rien à faire en clair dans un code ?
Azure Key Vault vous permettra de sécuriser vos mots de passe et autres secrets et le mettra à disposition des applications ayant le droit de les utiliser. Vos différentes briques de services Azure ou autre pourront ainsi utiliser des secrets en toute discrétion.
Vous retrouverez les informations sur le produit ici.
Microsoft Purview
Microsoft Purview est en ensemble d’outils permettant de mettre en place une gouvernance de données globale. Il vous permet aussi de mettre en place un catalogue de données d’entreprise.
Vous retrouverez les informations sur le produit ici.
Architecture type
Tous les outils présentés ci-dessus peuvent travailler ensemble dans des architectures data moderne, ma préférée étant celle autour de Synapse pour un usage BI:
Vous trouverez les références de cette architecture ici et une version plus globale ici.
Merci de votre attention.