Data Warehouses : comment évaluer les principales fonctionnalités des plateformes
Pour faciliter le choix entre les différents types de plateformes d'entrepôt de données, commencez par déterminer l'option de déploiement qui correspond le mieux à votre projet.
Les plateformes d'entrepôt de données ne manquent pas. Même si leur évaluation n'est pas obligatoirement une épreuve, une procédure adéquate vous aidera à investir dans la meilleure technologie possible pour les besoins spécifiques de votre entreprise.
Comme nous l'avons vu, outre la diversité des plateformes, les options de déploiement et les cas d'usage sont divers. Une fois prise la décision d'investir dans une plateforme Data Warehouse, l'étape suivante consiste à créer un processus d'évaluation des produits disponibles, puis à déterminer celui qui correspond le mieux à vos besoins. Pour ce faire, nous commencerons par identifier les fonctionnalités importantes pour créer efficacement un entrepôt de données. Nous déterminerons ensuite l'option de déploiement qui correspond le mieux à vos critères.
Développement efficace d'un entrepôt de données : les fonctionnalités
Pendant l'examen de ces fonctionnalités, gardez à l'esprit que ce sont vos besoins en termes d'usage et d'implémentation qui dictent les fonctions les plus importantes dans votre cas.
Tous les projets n'ont pas besoin de toutes les fonctionnalités étudiées ici. Lors de l'évaluation des différents produits (sujet que nous traiterons dans un autre article), servez-vous de ce qui suit pour mieux comprendre les fonctionnalités proposées par chaque fournisseur.
Cela étant, un entrepôt de données offre les principales fonctionnalités suivantes :
Vue cohérente des données. Pour une prise en charge efficace des applications décisionnelles en vue de l'analyse et du reporting sur l'historique des activités commerciales, une plateforme d'entrepôt de données doit pouvoir récupérer des données dans plusieurs systèmes source et les présenter comme un seul ensemble. Les données qui nourrissent le décisionnel proviennent de systèmes opérationnels. Elles sont généralement homogénéisées, puis chargées dans un Data Warehouse à des fins d'analyse.
Modélisation et création de modèles. On attend généralement d'un entrepôt de données que le schéma de la base de données soit partiellement dénormalisé afin d'optimiser les requêtes et les performances d'analyse. A l'inverse, les systèmes de traitement transactionnel en ligne s'appuient habituellement sur des schémas strictement normalisés qui garantissent la cohérence et l'intégrité des données.
En pratique, l'entrepôt de données se structure autour d'un modèle dimensionnel avec un fait central et plusieurs dimensions d'analyse transversales de ce fait. Par exemple, si on s'intéresse à l'analyse des ventes de la société, plusieurs dimensions entrent en jeu, par exemple le produit, le territoire, le magasin et le temps. Prenons un cas simple : on demande le volume total des ventes (fait) par produit (dimension) au mois de janvier 2016 (dimension) dans le Sud-Est (dimension).
Pour lancer une telle analyse, les entrepôts de données recourent à des modèles dimensionnels appelés schéma en étoile et schéma en flocons.
Dans une conception de schéma en étoile, les tables multidimensionnelles sont associées à une seule table de faits dans une relation un-à-plusieurs. Le schéma en flocons y ressemble, mais les dimensions peuvent être stockées dans plusieurs tables dénormalisées plutôt que dans une unique table dimensionnelle.
Quand vous évaluerez les plateformes d'entrepôt de données, vérifiez si la conception de base de données suivant le schéma en étoile et en flocons est directement prise en charge, ainsi que l'optimisation des requêtes.
Prise en charge des fonctions OLAP pour le traitement des requêtes décisionnelles. Les fonctions analytique incluent par exemple la capacité à explorer les données, à les regrouper, à les classer et à les présenter sous forme de tableau croisé dynamique. Les fonctions OLAP ont l'avantage de permettre aux développeurs et aux utilisateurs d'écrire des requêtes moins complexes. De plus, pour un même tâche, les performances de ces requêtes sont généralement meilleures que celles de requêtes plus complexes exécutant les mêmes tâches. Si les fonctionnalités SQL et les requêtes de la plateforme d'entrepôt de données ne prennent pas en charge une fonctionnalité OLAP intégrée, vous devrez acquérir des outils de requête complémentaires.
Optimisation des requêtes et des performances. Pour l'optimisation des requêtes, les besoins de la plateforme d'analyse qu'est l'entrepôt de données sont bien différents de ceux d'un système de gestion de base de données (SGBD) transactionnel ou opérationnel. Les fonctions utiles à l'amélioration des performances de l'entrepôt de données comprennent l'optimisation des jointures en étoile, les index bitmap et le mappage de zones.
La capacité à optimiser une requête en étoile, dans laquelle une table de faits est jointe à différentes tables de dimensions, est une fonction importante d'une plateforme d'entrepôt de données. Mais chaque plateforme implémente les jointures en étoile à sa façon. Par exemple, si les index bitmap sont utiles à l'optimisation des jointures, leur prise en charge varie d'un produit à l'autre. Certaines plateformes permettent la création explicite d'un index bitmap, alors que d'autres en génèrent automatiquement un lors du processus d'optimisation des jointures en étoile.
Une autre fonctionnalité affecte les performances : la prise en charge du mappage de zones. Une zone est un ensemble de pages ou de blocs de données contigus sur un disque. Une « mappe de zones » est une structure de la base de données qui stocke des informations sur les données enregistrées dans les zones de la table. Cela se traduit par des requêtes optimisées : les blocs de données qui n'interviennent pas dans la réponse à la requête sont éliminés, de sorte que l'interrogation n'y accède pas.
Fonctionnalité In-Memory. Le recours au In-Memory plutôt qu'au disque classique pour le stockage et le traitement permet d'améliorer les performances. Vous pouvez utiliser un SGBD In-Memory, ou adopter une plateforme d'entrepôt de données offrant des fonctionnalités In-Memory.
Fonctions de déplacement des données. L'entrepôt de données est distinct des systèmes de base de données opérationnels qui exécutent les transactions quotidiennes de l'entreprise. Il faut donc régulièrement déplacer les données d'un environnement à l'autre. Pour ce faire, il existe plusieurs méthodes et technologies :
- Les utilitaires de chargement et de déchargement
- La fonction ETL d'extraction, de transformation et de chargement des données
- La technologie de réplication qui capture les données modifiées des bases sources et transmet uniquement les changements à l'entrepôt cible
Ces technologies de déplacement de données peuvent être acquises séparément de la plateforme. De fait, si vous avez des exigences pointues concernant des transformations complexes ou une réplication ultrarapide, vous avez probablement intérêt à acheter un outil complémentaire. Évidemment, de nombreuses plateformes d'entrepôt de données intègrent des fonctions de déplacement qui suffisent aux besoins de transfert classiques.
Quel type de plateforme d'entrepôt de données vous convient le mieux ?
Voyons maintenant le type de plateforme Data Warehouse qui correspond le mieux aux besoins de votre projet.
Toutes les plateformes d'entrepôt de données - système de gestion de base de données relationnelle (SGBDR), SGBD analytique, appliance ou cloud (DWaaS) - peuvent être envisagées, qu'il s'agisse de déployer un entrepôt de données d'entreprise (EDW) ou un Datamart.
Si un service assure lui-même le développement et la gestion d'un datamart, pensez à examiner les options qui minimisent les tâches d'administration et de maintenance. L'appliance, par la commodité de son implémentation plug-and-play, se prête mieux à une utilisation au sein d'un service que l'environnement d'entrepôt de données à « monter » soi-même, nécessaire pour une implémentation de base de données relationnelle ou analytique.
Dans le cas d'un data mart au niveau d'un service, le Data warehouse à la demande (DWaaS) mérite également d'être envisagé, d'autant plus si une grande partie des données qui y seront transférées proviennent du Cloud. A l'inverse, si le data mart doit gérer d'importants volumes de données créées ou stockées sur site, leur déplacement vers une plateforme DWaaS peut se révéler problématique.
Dans les entreprises qui mettent en oeuvre plusieurs data marts, la gestion et l'administration sont souvent centralisées et une grande partie des avantages de l'appliance ou du DWaaS se perdent : le SGBD relationnel (ou analytique) devient alors une option plus attrayante.
Pour l'implémentation d'un entrepôt de données d'entreprise traditionnel, l'appliance constitue un bon choix, car elle combine dans une solution Data Warehouse prête à l'emploi l'ensemble du matériel et des logiciels nécessaires.
Dans le cas d'une architecture Data Warehouse plus complète, dotée d'un entrepôt de données, de plusieurs data marts et d'un data store opérationnelles (ODS), une combinaison de plusieurs plateformes s'impose. Vous pourriez par exemple choisir d'implémenter l'ODS avec un SGBDR, d'utiliser les appliances d'entrepôt de données et le DWaaS pour les data marts, et de réserver le SGBD analytique à l'entrepôt des données. Cette décision ne s'impose habituellement que pour les plus grandes organisations pourvues des ressources et de l'expertise nécessaires en matière d'administration de base de données et de gestion de systèmes. Le prix est aussi à prendre en compte : l'acquisition et la maintenance de plusieurs plateformes peuvent s'avérer coûteuses.
Pour étendre un entrepôt de données, la meilleure approche consiste généralement à utiliser votre plateforme actuelle plutôt que de compliquer les choses en la convertissant. De toute évidence, votre équipe y aura ajouté des fonctionnalités depuis son implémentation initiale.
Renseignez-vous bien sur toutes ces nouvelles fonctionnalités avant d'envisager de changer : assurez-vous que vous exploitez tout le potentiel de la vôtre. En adoptant ne serait-ce qu'une ou deux nouvelles fonctionnalités, comme de nouvelles fonctions OLAP, vous pourriez éviter de remplacer prématurément votre plateforme par un service Cloud ou une appliance d'entrepôt de données flambant neuve.
Toutefois, il peut être judicieux de passer à une nouvelle plateforme si les besoins de votre entreprise et vos exigences décisionnelles ont considérablement évolué depuis le déploiement de votre Data Warehouse.
Pour les entreprises qui veulent se débarrasser du support et du déploiement, le DWaaS constitue une meilleure option, car l'architecture de l'entrepôt est totalement prise en charge par le prestataire Cloud. De plus, si votre entreprise multiplie les traitements transactionnels dans le Cloud, le DWaaS pourrait être la meilleure solution. Il est logique d'entreposer dans le Cloud les données qui y ont été créées et qui y sont stockées.
L'approche de traitement transactionnel/analytique hybride (HTAP pour « hybrid transaction/analytical processing ») prend de l'ampleur, car une même plateforme peut servir différents objectifs. Le HTAP peut raccourcir la courbe d'apprentissage en réduisant le nombre de technologies à maîtriser. Bien entendu, une dose de formation reste nécessaire, étant donné que cette approche fait souvent appel à de nouvelles technologies et à des options supplémentaires. Mais les grandes et les moyennes entreprises qui souhaitent réduire le nombre de technologies prises en charge et bénéficier d'une flexibilité accrue devraient envisager cette approche.
Aujourd'hui, les plus grands Data Warehouses contiennent plus de 10 pétaoctets de données brutes. Une approche flexible, impliquant un matériel et des logiciels sur mesure, est de mise pour prendre en charge cette taille d’entrepôt de données. Ainsi, des logiciels de SGBDR et de SGBD analytique sont exécutés conjointement sur les serveurs, les dispositifs de stockage et les équipements réseau les plus rapides du marché.
Si votre entrepôt de données doit gérer à la fois des solutions analytique Big Data et d'informatique décisionnelle, tournez-vous vers des approches « polyglottes ». Le terme polyglotte est un emprunt au monde des bases de données NoSQL qui a adopté la persistance polyglotte, ce qui signifie que les données sont stockées dans le type de SGBD qui convient le mieux à l'utilisation prévue.
Dans un environnement d'entrepôt de données qui permet de gérer à la fois des données décisionnelles classiques et de types Big Data plus récent, l'approche polyglotte implique plusieurs types de plateformes de données. Cela va des bases de données relationnelles et analytiques aux SGBD NoSQL et aux nouvelles plateformes telles que Spark et Hadoop. En contrepartie de cette complexité accrue, les utilisateurs peuvent associer l'informatique décisionnelle traditionnelle avec des techniques plus pointues d'analytique prédictive et de data mining.
Maintenant que vous comprenez les fonctionnalités importantes des plateformes de Data Warehouses et que vous êtes en mesure de déterminer lesquelles correspondent le mieux aux besoins de votre déploiement, la prochaine étape consiste à examiner les produits des principaux fournisseurs. Cet aspect fera l'objet d'un prochain article.