Big Data, Small Data, All Data, la nouvelle offre Microsoft
Depuis la mise en ligne de ce blog, nous avons eu l’occasion d’échanger à maintes reprises sur ce que sont les #BigData et discuter de l’intérêt d’exploiter ce déluge de données.
Le 15 avril dernier lors de la conférence Accelerate your insights, notre nouveau PDG Satya Nadella a pu réaffirmer et préciser la stratégie de Microsoft orientée vers la donnée (Si vous avez manqué l’évènement, n’hésitez pas à visionner les webcasts disponibles au niveau de ce lien.)
S’il semble aujourd’hui de plus en plus avéré, et au-delà du buzzword, que la vague Big Data constitue un tournant à ne pas manquer pour rester compétitif, il convient néanmoins dans le même temps de ne pas perdre de vue qu’une approche Big Data doit intervenir en complément d’une analyse classique de la donnée. Avant de parler de Big Data, il est nécessaire de s’intéresser à la donnée quelle que soit sa taille : toute donnée peut créer de la valeur ! ;)
Nous vous proposons en conséquence de revenir l’espace d’un billet sur l’offre proposée par Microsoft afin d’extraire des « insights » de (toutes) vos données et vous offrir ainsi une vue synthétique de ses éléments constituants.
Abordons sans plus tarder les services, produits et technologies mentionnées ci-avant et voyons pour cela comment ces solutions s’intègrent à ce que l’on va appeler le « cycle de vie de la donnée ». Ceci nous amène à revisiter une thématique qui nous est chère, à savoir Big Data et BI (aide à la décision).
Le cycle de vie de la donnée
Le cycle de vie de la donnée couvre et explique la démarche à adopter lorsque l’on souhaite exploiter de la donnée, et ce quelle qu’elle soit.
Cette démarche se compose de 5 étapes, en l’occurrence ‘Collecter’, ‘Enrichir’ , ‘Consolider’ , ‘Analyser’ et ‘Visualiser’, mais toutes ne sont pas indispensables.
Seules les étapes ‘Collecter’ et ‘Visualiser’ sont en effet indispensables à toute analyse de données. Dans ce schéma simplifié, pour extraire de la valeur des données, il faut essayer de les visualiser sous une forme pertinente.
Ces étapes peuvent être complétées au besoin par les étapes ‘Enrichir’, ‘Consolider’ et ‘Analyser’ :
- ‘Enrichir’ est la phase qui consiste à nettoyer les données (valeurs aberrantes, valeurs manquantes, etc.).
- ‘Consolider’ sert à mettre les données en relations afin de les requêter rapidement et d’éviter la redondance.
- ‘Analyser’ correspond à la phase d’analyse quantitative des données, permettant d’extraire des “insights”.
Ces étapes étant ainsi succinctement introduites, voici un schéma qui synthétise comment les services, produits et technologies Microsoft s’intègrent au cycle de vie de la donnée et à son traitement :
La mise en contexte étant ainsi faite, intéressons-nous aux principales briques mentionnés en introduction.
Office (365)
S’il ne nous semble plus nécessaire d’introduire Excel, nous nous contenterons de rappeler qu’Excel s’avère être au quotidien un outil indispensable pour traiter et visualiser les données. Afin de couvrir tout le cycle de vie de la donnée, à cet outil familier ont été intégrées de nouvelles fonctionnalités dans la suite Power BI pour Office 365.
La suite Power BI intégrée à Excel est composée de :
- Power Query : Power Query permet de collecter des données depuis de nombreuses sources (fichiers plats, bases de données SQL, Hadoop, stockage Azure de type blob, etc.) et de les enrichir avec une première mise en forme.
- Power Pivot : Power Pivot permet de créer un modèle entre différentes sources de données. Grâce à Power Pivot, il devient ainsi inutile de réaliser des jointures entre différentes sources de données de manière manuelle (avec les fonctions RECHERCHEV ou VLOOKUP). Il est possible de créer un modèle entre les données par la mise en relation des champs communs (consolider).
En particulier, il permet aussi l’adaptation des données (enrichir).
- Power Map et Power View : Power Map et Power View apportent une nouvelle dimension à la visualisation en proposant une visualisation interactive des données. En voici deux illustrations :
Ces mêmes outils de visualisation sont maintenant intégrés dans SharePoint Online où il est possible de créer des sites Power BI. Il est également possible de demander l’affichage de données avec un langage de requête naturel.
Le billet Aborder l’analyse de données avec les outils BI précédemment publié sur ce blog contient des vidéos d’illustration des possibilités données par ces nouveaux outils.
Toutes les fonctionnalités d’aide à la décision (Business Intelligence ou BI) dans Excel, Power BI pour Office 365 et SharePoint Online sont résumées ici.
SQL Server, une solution toute en 1 pour l’aide à la décision
La plateforme de données SQL Server constitue une solution transversale pour gérer le cycle de vie complet de la donnée. Lorsque le volume de données devient important et qu’il est long ou complexe de travailler avec des fichiers plats, il est possible de structurer et stocker les données dans une base de données SQL grâce à SQL Server.
SQL Server couvre tout le cycle de vie de la donnée :
- Collecter via RDBMS (Relational Database Management System) et StreamInsight
- Enrichir via SSIS (SQL Server Integration Services) et DQS (Data Quality Services)
- Consolider via MDS (Master Data Services) et DW (Data Warehouse)
- Analyser via SSAS (SQL Server Analysis Services)
- Visualiser via SSRS (SQL Server Reporting Services)
Vous trouverez tous les détails de ces modules sur le site internet dédié à SQL Server, et en particulier les nouveautés apportées dans la version 2014 comme l’OLTP en mémoire (Hekaton) que nous avons eu l’occasion d’évoquer ici.
SQL Server s’adapte aussi aux problématiques Big Data, notamment par la gestion d’un cluster Hadoop depuis SQL Server (comme abordé dans le billet Tirer parti d’un cluster Hadoop depuis SSIS) ou la solution clé en main APS (Analytics Platform Services), cette dernière intégrant des serveurs optimisés pour les bases de données SQL parallèles, connectés à des clusters Hadoop par une connexion Infiniband très haut débit.
L’intégration d’Hadoop à SQL Server constitue l’une des caractéristiques intéressante de la solution APS. Il est ainsi possible de requêter des données structurées et non structurées directement en SQL via l’outil Polybase créé au laboratoire Jim Gray Systems. Vous trouverez plus de détails ici sur le blog du groupe produit SQL Server.
Azure
Nous avons eu l’occasion d’aborder à différentes reprises les services proposés par la plateforme Microsoft Azure tant au niveau de ces dimensions IaaS que PaaS.
Azure permet de stocker des données et de disposer à la demande en fonction du besoin de machines virtuelles et de clusters Hadoop sur la base des machines virtuelles ainsi provisionnées ou sous forme de service prêt à l’usage avec Azure HDInsight. Nous vous renvoyons aux différents billets publiés sur ces sujets.
Et Hadoop dans tout ça ?
Contrairement à de nombreuses idées reçues, Hadoop ne remplace pas une solution complète de gestion du cycle de la donnée mais intervient en complément de celle-ci pour gagner en performance et montée en charge.
(Dans le même ordre d’idée, Big Data ne rime pas forcément uniquement avec Hadoop même si l’écosystème Hadoop s’impose à l’esprit pour tout ce qui gravite autour des domaines Volume et Variété tels que caractérisés par le principe des 3V (Volume, Vitesse, Variété) du Gartner de plus en plus démocratisé. La Vitesse impose d’autres approches comme abordé ici notamment dans ce blog)
Saviez-vous que pour une requête SQL prenant 30 minutes, il peut falloir non loin de 20 heures de calcul pour effectuer la même requête avec Hadoop sur des fichiers plats ?
Les bases de données structurées (SQL comme no-SQL) sont optimisées pour minimiser le temps de réponse des requêtes. Hadoop intervient donc en complément d’un stockage structuré classique, compte tenu des nombreux avantages qu’il procure :
- Le stockage de données non-structurées a un coût moindre. En effet, avec Hadoop, on peut stocker les données sur n’importe quels disques, sans besoin de capacité élevée ou de hautes performances. Ainsi, lorsque l’on souhaite stocker des données sans trop savoir à quoi elles vont servir, il est judicieux de tirer parti d’un cluster Hadoop.
Notons qu’avec SQL Server, il est possible de stocker plusieurs péta octets de données structurées et mettre en parallèle plusieurs dizaines de nœuds ce calcul. Pour de nombreuses entreprises, l’utilité d’Hadoop intervient alors dans des cas très spécifiques.
- Hadoop supporte la montée en charge. Avec Hadoop, il est possible de mettre en parallèle des centaines de nœuds de calcul et la capacité de stockage gérée est quasi infinie. Cette caractéristique est indispensable lorsque la taille des données est très grande (Volume) et/ou le temps de réponse requis est critique.
Hadoop s’insère dans toutes les solutions proposées par Microsoft citées plus haut, et plus particulièrement dans :
- Excel via Power Query
- SQL Server via SSIS (SQL Server Integration Services)
- Azure via Azure HDInsight (ou Windows Server avec Hortonworks Data Platform).
Sur ce dernier point, et en complément des différents que nous avons d’ores et déjà consacré au service Azure HDInsight, nous souhaitons mentionner la disponibilité en téléchargement gratuit de l’ouvrage Introducing Microsoft Azure HDInsight Technical Overview.
Ceci conclut notre rapide tour d’horizon de la nouvelle offre Microsoft. Nous tenons à ce titre à remercier notre collègue Damien Cudel pour l’élaboration conjointe de ce billet. Les différents pointeurs proposés dans ce billet vous donnerons nous l’espérons la possibilité d’approfondir les composantes souhaitées.