De Analysis services à Power BI, quelle architecture hybride pour les applications d’aide à la décision (BI), d’analyse des données et de création de rapports ?

De AAS à PBI

Au fil du temps et de la diversité des technologies, le paysage des données a changé. Ce que vous pouvez faire, ou supposer pouvoir faire, avec les données a évolué. Les méthodes de collecte, stockage, traitement et visualisation des données ne cessent de se multiplier. Les données sont de plus en plus volumineuses et proviennent de plus en plus de multiples sources.

Les données traitées sont souvent écrites dans un magasin de données analytiques, optimisé pour l’analytique et la visualisation. Elles peuvent également être transférées directement dans la couche d’analytique et de création de rapports à des fins d’analyse, d’informatique décisionnelle et de visualisation de tableaux de bord en temps réel.

SQL SERVER BUSINESS INTELLIGENCE SSIS, SSAS, SSRS

SQL Server

La solution On Prem MSBI tourne autour de SQL Serveur qui peut avoir multiples rôles.

  • Microsoft SQL Server Database
  • Microsoft SQL Server Analysis Services (SSAS)
  • Microsoft SQL Server Integration Services (SSIS)
  • Microsoft SQL Server Reporting Services (SSRS)

Le SQL Server Analysis Services Installé en tant qu’instance de serveur local prend en charge les modèles tabulaires à tous les niveaux de compatibilité (selon la version), les modèles multidimensionnels, l’exploration de données et Power Pivot pour SharePoint. SSAS fait partie de la suite Microsoft Business Intelligence (MSBI), diffère de la base de données relationnelle SQL Server, car SSAS est optimisé pour les requêtes et les calculs, courants dans un environnement business intelligence.

SSIS gère l’extraction et l’enregistrement des données. Il joue le rôle de ETL (Extract, Transform and load) et intègre des outils pour monitorer la performance des processus d’extraction et de transformation de la donnée. Les données sont stockées dans un Datawarehouse SQL Server.

SQL Server Reporting Services (SSRS) fournit un ensemble d’outils et services prêts à l’emploi pour créer, déployer et gérer des rapports paginés. Ce service fait partie de la suite de services SQL Server qui inclut également SQL Server Analysis Services (SSAS) et SQL Server Integration Services (SSIS).

Comment permettre à la suite Microsoft Business Intelligence (MSBI) de s’affranchir des contraintes systèmes, de bénéficier de nouveaux services, de la flexibilité et scalabilité avec une plateforme cloud véritablement hybride ?

Comment permettre à la suite Microsoft Business Intelligence (MSBI) de s'affranchir des contraintes systèmes, de bénéficier de nouveaux services, de la flexibilité et scalabilité avec une plateforme cloud véritablement hybride ?

 

La migration peut apporter une solution efficace si vous posez les bonnes bases, celles d’une architecture hybride. De nombreuses organisations ont besoin d’une approche hybride de l’analyse, de l’automatisation et des services car leurs données sont hébergées tant localement que dans le cloud.

Cette architecture Hybride doit s’appuyer sur une Landing Zone des données, un modèle de fonctionnement DevOps et CI/CD (intégration/déploiement continus) et une Landing Zone de gestion des données doit être déployée. Les Landing Zones des données sont connectées à votre Landing Zone de gestion des données via VNET Peering. Chaque Landing Zone de données est considérée comme une Landing Zone liée à l’architecture de Landing Zone Azure pour la connectivité (VPN et/ou Express Route), l’identité et le management.

  1. Ingestion et traitement des données hybrides à l’échelle de l’entreprise.

L’ingestion de données est le processus de collecte de données à partir de différentes sources et sa centralisation sur un site de destination dans lequel elles sont prêtes à être analysées et utilisées.

 

ObjectifsOptionsExistantCibleSolution
Déplacement des donnéesCopies entre On-prem (ou réseau privé) et le CloudETLAzure et autre réseau.Azure Data Factory avec IR Auto-hébergé
Exécuter des packages SSISlift-and-shift sur la charge de travail SSIS existanteSSISAzureAzure Data Factory avec IR Azure-SSIS
Flux de donnéesCopie entre les magasins de données cloudData Flow SSISAzure et autre CloudFactory avec IR Azure

Observations, remarques et points d’attention.

IR Auto-hébergé doit être installé sur une infras dédiée et proche des sources de données. A lire pour la création et configuration de IR auto-hébergé

Besoin de Azure SQL Database dédiée, pour héberger la base de données SSIS (SSISDB) des projets/packages.

IR-Azure est seul IR à prendre en charge les Data Flow en plus des déplacements de données et répartition des activités. Et peut donc être combiné avec IR Auto-hébergé et/ou IR Azure-SSIS.

Dans Azure Data Factory, une activité désigne l’action à effectuer. Un service lié désigne un magasin de données cible ou un service de calcul. Un runtime d’intégration permet de créer une passerelle entre l’activité et les services liés.

Vous pouvez déployer une ou plusieurs instances du runtime d’intégration en fonction de vos besoins pour déplacer ou transformer des données. Le runtime d’intégration peut s’exécuter sur un réseau public Azure ou un réseau privé (localement, réseau virtuel Azure ou cloud privé virtuel Amazon Web Services).

Un runtime d’intégration (IR) Azure-SSIS est un cluster entièrement managé de machines virtuelles Azure (nœuds) dédiées à l’exécution de vos packages SSIS dans le cloud.

Il faut noter que toues les fonctionnalités de Azure Data Factory ne sont pas reprises dans Synapse donc important de vérifier pour vos besoins avec l’article Intégration de données Azure Data Factory VS Synapse Analytics

Azure Data Factory compte plus de 90 connecteurs intégrés pour acquérir des données à partir de sources de données volumineuses jusqu’à un débit de 5 Gbit/s. Pour identifier les connecteurs et les formats de fichier pris en charges, lire cet article

Par défaut, le service Data Factory n’inclut pas de référentiel pour stocker les entités JSON de vos modifications. La seule façon d’enregistrer les modifications consiste à utiliser le bouton « Publier tout » pour publier toutes les modifications directement vers le service de fabrique de données mais ne gère pas le contrôle de version. Alors Il est fortement recommandé de configurer un dépôt Git avec Azure Repos ou GitHub (supportés par Azure Data Factory). Git est un système de contrôle de version qui facilite le suivi des modifications et la collaboration.

  1. Stockage des données brutes (lac) et/ou traitées (entrepôt).

Les entrepôts et les lacs de données stockent et traitent des données. Toutefois, chacun d’eux a ses propres cas d’utilisation particuliers. Un entrepôt de données est relationnel par nature. Cela signifie que la structure ou le schéma des données est déterminé par les exigences prédéfinies et optimisées pour les opérations de requête SQL. Comme les entrepôts de données, les lacs de données contiennent des données structurées et semi-structurées. Toutefois, ils sont également capables d’intégrer des données brutes et non traitées provenant de diverses sources non relationnelles.

ObjectifsOptionsExistantCibleSolution
Ingestion d’objetsZone intermédiaireDonnées BrutesAzureAzure Blob et Data Lake Gen2
Stockage distribuéStockage en colonnesTables relationnellesAzureAzure Table et Azure Cosmos DB
Stockage de données traitéesApplications, rapports, décisionnelEntrepôtAzureAzure SQL Database / Synapse

Observations, remarques et points d’attention.

Pour avoir des dossiers, qui contiennent des données stockées sous forme de fichiers il faut opter pour Data Lake sinon utiliser des conteneurs, qui possèdent des données sous la forme d’objets BLOB.

Pour une utilisation dans une région unique il faut privilégier le stockage Table Azure sinon Azure Cosmos DB for Table prend en charge des basculements partout dans le monde donc plus de 30 régions Azure.

SQL Database se limite à un moteur de base données pour stocker et traiter des données. Azure Synapse Analytics est un service d’analytique qui regroupe l’intégration, l’entreposage des données et l’analytique Big Data.

Une fonctionnalité de magasin analytique est disponible avec Azure Synapse, ou avec HDInsight Azure en utilisant une requête Hive ou interactive. Vous avez également besoin d’un certain niveau d’orchestration pour déplacer ou copier des données du stockage de données vers l’entrepôt de données, ce qui peut être effectué à l’aide d’Azure Data Factory ou d’Oozie sur Azure HDInsight.

En fonction des besoins, il existe plusieurs façons d’implémenter un entrepôt de données dans Azure. Pour multitraitement symétrique (SMP) il faut avoir recours à Azure SQL Database ou SQL Server dans une VM et pour tout traitement massivement parallèle (MPP), il faudra un pool SQL dédié dans Azure Synapse Analytics (anciennement Azure Data Warehouse) ou Apache Hive sur HDInsight ou encore Interactive Query (Hive LLAP) sur HDInsight.

  1. Analyse des données, des relations et visualisation

L’Analyse autrefois porté uniquement par SQL Server Analysis Services (SSAS), est porté par le service Azure Analysis Services (AAS) pour uniquement les modèles Tabulaires puis désormais Power BI qui ne fait pas que la visualisation. Power BI devient une suite d’outils d’analyse métier pour analyser les données et partager les informations. Power BI peut interroger un modèle sémantique stocké dans Analysis Services ou interroger directement Azure Synapse.

ObjectifsOptionsExistantCibleSolution
Analyse dans le cloud IaaScubes à migrer dans le cloudSSAS (Modèles tabulaires et multidimensionnels)AzureSQL Server en IaaS
Analyse dans le cloud PaaScubes à migrer dans le cloudSSAS avec Modèles
tabulaires
AzureAzure Analysis Services / Capacité Power BI Premium
Analyse hybride (Cloud et local)plusieurs sources on-prem et cloudServeurs liés SQL Server et SSRSAzureAzure DataGateway avec Azure Analysis Services / Power BI Premium

Observations, remarques et points d’attention.

Le multidimensionnel n’est possible qu’avec SQL Server Analysis Services donc pas supporté par Azure Analysis Services.

Power BI est devenu la plateforme de référence pour le décisionnel (BI). On parle de modèle de données pour le modèle AAS et jeu de données pour le modèle Power BI.

Power BI et Power BI Report Server sont nécessaires pour héberger des classeurs Excel avec des modèles Power Pivot. DataGateway est indispensable pour le transfert entre les données locales donc pas dans le cloud, et plusieurs services cloud Microsoft comme Power BI, AAS entres autres.

Azure Analysis Services (n’utilise que IP publique) est basé sur le moteur d’analyse reconnu de Microsoft SQL Server Analysis Services (SSAS). Les modèles multidimensionnels ne sont pas pris en charge dans les jeux de données Azure Analysis Services ou Power BI Premium.

Azure Analysis Services est un service en mémoire mais utilise le stockage Blob Azure pour conserver le stockage et les métadonnées des bases de données Analysis Services.

Une DataGateway locale si elle déployée en mode personnel, peut être utilisée seulement avec Power BI. Et est adaptée aux scénarios dans lesquels vous êtes la seule personne qui crée des rapports et où vous n’avez pas besoin de partager les sources de données avec d’autres utilisateurs.

Il existe (En préversion au moment de la création de cet article) une DataGateway de réseau virtuel (VNET) comme service géré par Microsoft et disponible uniquement pour les jeux de données Power BI, les flux de données Power Platform et les rapports paginés Power BI.

la dépréciation d’Azure Analysis Services n’est pas prévue pour le moment par Microsoft. Toutefois pour tout nouveau besoin de AAS il vaut mieux privilégier Power BI PREMIUM capacité. Et si vous souhaitez effectuer une migration d’Azure Analysis Services vers Power BI Premium, faites un tour ici

Architecture d’entreposage et analytique de données dans Microsoft cloud en 2 points.

De MSBI on-premises avec (SSIS, SSAS, SSRS) à Entrepôt de données dans Azure avec (ADF, Azure SQL ou Synapse, AAS et/ou Power BI)

Cet entrepôt est un référentiel central avec des données provenant de plusieurs sources et fonctionnant en mode hybride donc entre le réseau On-prem et Azure.

Architecture d'entreposage et analytique de données
  1. Pour chaque source de données, des mises à jour sont importées/exportées régulièrement dans une zone de transit dans Azure Data Lake Storage ou Azure Blob Storage. Avec une orchestration assurée par Azure Data Factory qui charge de façon incrémentielle les données du compte de stockage dans des tables intermédiaires dans Azure Synapse Analytics. Les données sont nettoyées et transformées pendant ce processus. La technologie PolyBase est utilisée pour paralléliser le processus pour des jeux de données volumineux.
  2. À l’issue du chargement d’un nouveau lot de données dans l’entrepôt, un modèle tabulaire Azure Analysis Services créé précédemment est actualisé. Ce modèle sémantique simplifie l’analyse des données et des relations. Les analystes utilisent Microsoft Power BI pour analyser les données en entrepôt via le modèle sémantique Analysis Services. Les rapports Power BI générés peuvent être intégrés à une web app pour tout utilisateur autorisé à consulter.

Pour aller plus loin, vous pouvez vous appuyer sur 2 architectures de référence ci-après:

Par ailleurs on peut constater le scénarios de la MSBI avec un SQL Serveur à multi rôles (Bases de données, SSIS, SSAS, SSRS) se reproduit dans Azure (mais cette fois sur la base de plusieurs clusters managés par Microsoft) avec de plus en plus de combinaison de solutions:

  • ADF et Pool SQL intégrée dans Synapse qui propose aussi le Pool Spark. Pour l’ingestion, le stockage, le traitement et l’Analyse en 1.
  • AAS intégrée dans Power BI Premium. Pour l’Analyse et la visualisation en 1.

 

Et dans cette évolution de solutions intégrées ou regroupement des solutions tout en un, Microsoft venait de lancer une nouvelle offre Azure, Microsoft Fabric, qui regroupe des composants nouveaux et existants de Power BI, Azure Analysis Services, Azure Synapse, Azure Data Explorer et plus dans un environnement intégré unique. Alors on peut désormais avec Microsoft Fabric couvrir tout le scope d’entreposage et analytique de données.

 

Tech Entrepreneur, Microsoft Cloud & Security Architect / Sophos Certified Architect /Palo Alto Networks Accredited Systems Engineer (PSE)/ Microsoft P-Seller, anciennement Virtual Technology Specialist (VTSP) / Leader agile, Bâtisseur, Problem solver, Passionné de la technique et des nouvelles technologies, intervient sur les problématiques d’Architecture infras et sécurité des SI depuis 1997. Accompagne les entreprises dans l'adoption du cloud, la conception, la migration, l'optimisation, la sécurité et la gestion des solutions qui fonctionnent sur Azure et Multicloud. Construit et pilote la stratégie d’évolution des architectures et solutions techniques de Cloud hybride qui répondent aux enjeux de transformation digitale, d’agilité et de continuité d'activité.