#PASSBAC 2015 – Andrew Brust – Using Hadoop with Excel and Power Query

Andrew débute la première partie de sa session en présentant Hadoop.

On parle de Big Data lorsque le volume de données dépasse les centaines de To et va jusqu’au Po ou plus. Il s’agit de données transactionnelles énormes issues en grande partie : des données financières, de logs de site web, des réseaux sociaux, des objets connectés (IoT), des données mobiles, etc. Pour pouvoir traiter et analyser ces données, un système monolytique ne suffit plus, il est nécessaire d’adopter une architecture scalable afin de pouvoir effectuer des traitements en parallèle au travers différents serveurs en cluster. C’est le principe même d’Hadoop.

Les concepts principaux à connaître sur Hadoop sont

  1. HDFS : Hadoop distributed files system : c’est le système de fichiers qui détermine où et comment les données sont distribuées et stockées sur le cluster. Les données sont répliquées sur les différents nœuds du cluster, ce qui permet :
  • d’avoir une architecture haute disponibilité (si un nœud tombe => aucune perte de données)

Distributed File System : on where data gets distributed over commodity drives on commodity servers

  • de pouvoir effectuer des traitements en parallèle
  • d’ajouter simplement de la puissance de calcul en ajoutant de nouveaux nœuds au cluster (scale-out)
  1. Map Reduce : c’est l’opération qui permet de parser l’ensemble des données en parallèle pour n’extraire que celles dont vous avez besoin. Cette opération se décline en deux temps :
  • Map step : les données sont parsées en parallèle sur l’ensemble des nœuds du cluster
  • Reduce step : retourne toutes les données associé à la même clé et les agrège

Ces opérations se font en java.

  1. Schema-on-Read : lorsque vous traiter des données non structurées, le schéma est imposé lors de la requête et dépend du contexte par exemple :
  • Si vous scanner un livre, les valeurs à retournées sont-elles les mots, les lignes, les pages, les chapitres ?
  • Est-ce que la date et l’heure sont deux champs séparés ou bien un seul …

Pig et Hive sont les deux outils qui permettront d’effectuer cette interprétation de schéma à la volée.

Andrew continue ensuite par la présentation de la stack Hadoop V1 puis V2. Je ne m’attarderai quant à moi qu’à la V2.

HadoopStack

Je complète juste par quelques annotations sur les éléments les plus marquants de cette stack :

  • HDFS : Hadoop Distributed File System
  • YARN : ressource governor
  • HBASE : base de données avec stockage en colonne
  • Hive et Pig : couche d’abstraction permettant de faire du Map Reduce
  • SCOOP : utiliser pour l’import/export RDBMS bidirectionnel
  • Sparl SQL, Impala et Tez permettent de faire du SQL interactif
  • Lucine et SolR sont des moteurs de recherche
  • Sparl MLib et Mahout : permettent de faire du machine learning/ Data Mining
  • Spark Streaming, Storm et Kafka : sont utilisés pour le Streaming Data

Les différentes distributions d’Hadoop sont Cloudera, Hortonworks HDP, MapR, IBM InfoSphere, Pivotal HD et Microsoft HDInsight. Elles utilisent toutes le même noyau Hadoop décrit précédemment.

Microsoft HDInsight a été développé avec Hortonworks et permet d’avoir une distribution HDP sous Windows. Les spécificités de cette distribution sont :

  • Windows Azure HDInsight
  • Azure Blobs Storage
  • L’accessibilité via du PowerShell et des cmdlets HDInsights
  • Une interface web permettant d’exécuter des requêtes Hive et de monitorer des jobs

S’en vient alors les démos :

  • Mise en place du cluster sous Azure
    • Création d’un cluster HDInight via le portail MS Azure => cela se fait en quelques clics, en configurant soit même le type de plateforme souhaitée (nombre de nœud dans le cluster, la région, le type de vm (core CPU + mémoire), un username, l’accès en RDP, le stockage). Le cluster Hadoop est créé et accessible quelques minutes
    • Connexion au cluster HDP via l’interface Azure
    • Utilisation de la console HDIngith Query Console vous permettant d’exécuter des requêtes Hive
    • Revue des solutions proposées avec ou sans sample data)
  • Hadoop commands (cf. slide pris en photo sur tel)
  • Connexion au cluster hadoop en rdp via la console Azure,
    • ouverture d’une fenêtre de command hadoop et quelques exemples de commandes Hadoop
    • Création d’un job executant une requête hive
  • Récupération de données HDP via Excel
    • Via le driver ODBC
  • Pig est un combo entre un requêteur et un ETL, il permet de travailler avec des données structurées et non structurées. Andrew nous livre quelques exemples de requêtes Pig.
  • Démo Power Query sur une source de données HDFS
  • Power Bi 2.0
    • Pas de dépendance avec Office 365
    • Moins cher : freemium model, Pro version pour $10/user/month
    • Across platform experience (iOS, Android, Windows)
  • Démo Power BI Designer
    • Connexion à HD Insight via Power Query, quelques transformations, puis passage en mode reporting/dahsboarding sur Power BI Site
  • Démo Tableau
    • Connexion à HD Insight et exécution de la même requête
    • Travail sur les mêmes données….

Andrew n’a pas eu le temps de faire d’autre démo avec d’autres outils comme Qlik Sense ou Jaspersoft, peu importe, quel que soit l’outil utilisé, les données Hadoop sont très facilement utilisables et exploitables.

Il ne vous reste plus qu’à aller sur le site d’Hortonworks pour aller télécharger la sandbox et jouer avec. Ou bien aller directement sur Azure.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s