avec nos solutions spécialisées pour la microfinance et ses institutions coopératives Big Data
Historique de Big data Jusqu à l avènement d Internet et surtout du Web 2.0 il n y avait pas tant de données à traiter que ça. Mais à partir du moment où chaque utilisateur a commencé à produire du contenu, la courbe d évolution du nombre de données s est transformée en courbe exponentielle. En ce 21 ième siècle, à l heure du tout numérique, désormais toute information a vocation à être «donnée» et toute donnée représente potentiellement un facteur clé pour la réussite d une organisation. Le problème est le traitement d un déluge de données. Plutôt que de déplacer les données, déplaçons le code. Entre passer par le réseau 500 Go de données ou 40 Mo de code compilé, un choix semble s imposer de lui-même. Il faut trouver une interface simplifiée à la création d applications massivement parallèles. Arrive Hadoop: un moteur d indexation distribué : un Framework composé d un système de fichier distribué sur lequel on exécute des traitements parallèles appliquant Map/Reduce.
HADOOP : 4 concepts de base 1. La couche de stockage des données 2. La couche de traitement des données 3. L ordonnanceur 4. Les abstractions
Premier concept : La couche de stockage des données HDFS Qu est-ce qu un système de fichier? Un système de fichiers (File system) est une abstraction pour stocker, récupérer ou mettre à jour des données. Dans le cas d HDFS, la mise à jour n est pas autorisée. HDFS est distribué. Le fait qu il soit distribué ne se perçoit pas durant l utilisation car on accède aux fichiers HDFS de manière classique, autrement dit au travers d une arborescence classique sous la forme dossier/sous_dossier/fichier.extension. Comment HDFS retrouve l information? HDFS définit deux types de nœuds : Le nœud principal ou NameNode : il s agit d un nœud qui a pour fonction de répertorier où sont stockées les données, sur quels nœuds précisément. Le nœud de données ou DataNode : Ce nœud est réservé pour le stockage de la donnée.
Deuxième Concept : la couche de traitement des données Map/Reduce Parallélisme récursif : Il s agit de décomposer le problème initial en sous-problèmes plus simples, et ainsi de suite jusqu à ce que le sous-problème soit trivial (ex : oui ou non). Le principe de base Map/Reduce est une application de cette stratégie dite récursive avec une particularité toutefois : on stocke les résultats dans une Map. Prenons un exemple : Nous voulons compter le nombre de retrait caissier plus grand que 1 M FCFA à la CIF. Pour cela, nous avons les tables SAF CJ_MVMiento. Solution : Dans notre programme, nous voulons un affichage avec le type de transaction et le nombre de retrait > 1 M. Ex : Nombre de retrait > 1M$ à la CIF : 20 834 Explication : La phase de «mapping» va générer, pour chaque ligne des tables CJ_MVMIENTO, le nom de la trx = RETRAIT et le MNT > 1M (qui est notre clé) puis la valeur 1 (pour signaler qu il y a une transaction) dans un objet de type Map. Une méthode map traitera donc chacune des lignes, recevant comme input la trx et le contenu correspondant. La phase de «reduce» va récupérer cet objet Map, puis faire la somme des valeurs trouvées pour le type de transaction En quelque sorte, Map spécifie ce que nous voulons comme type de résultats (ce qui permet de diviser implicitement le travail) et Reduce rassemble tous ces résultats intermédiaires pour composer le résultat final.
Troisième Concept : l ordonnanceur Dans la pratique, la mise en œuvre de ce que nous avons vu juste avant suppose un ordonnanceur ou «scheduler». En effet, la création/allocation de nouvelles tâches, leur gestion, le fait de synchroniser les processus entre eux, etc. ne se fait pas tout seul et suppose la présence d un moteur complet qui gère cela au sein d Hadoop. Oozie est un ordonnanceur de flux de travail (workflow) pour la gestion d'un graphe acyclique dirigé d actions, où des actions peuvent être des «jobs» Map/Reduce mais aussi d'autres «jobs» Hadoop est un excellent outil pour travailler sur le Volume, selon le principe des 3V des big Data (Cf. Gartner Says Solving 'Big Data' Challenge Involves More Than Just Managing Volumes of Data). Pour d autres aspects comme la Vitesse, des technologies comme Microsoft StreamInsight de traitement de flux à haut débit ou Storm s avèrent mieux adaptés.
Quatrième concept : Les abstractions Depuis l arrivée du projet principal Hadoop à maturation, plusieurs outils se sont construits sur le moteur d exécution pour simplifier le développement d applications. En effet, Hadoop dans son package de base demande que le développeur soit initié au fonctionnement Map/Reduce et qu il comprenne les bases de la programmation fonctionnelle. Hive Hive est un logiciel d'analyse de données permettant d'utiliser Hadoop avec une syntaxe proche du SQL appeléehiveql et ce, via un mécanisme permettant de définir un schéma lors de la lecture des données. Il permet d exprimer des requêtes à la SQL qui se compilent en un ensemble de programmes Map/Reduce optimisés, des implémentations en Java du Mapper et du Reducer comme nous l avons fait. Il propose pour cela un support pour la plupart des constructions auxquelles on peut s attendre dans SQL (agrégation, regroupements, filtrage, etc.). Pig Pig possède lui aussi son propre langage (Pig Latin), mais son approche est différente. Pour faire simple, il est plus facile d utiliser un langage d abstraction proche du «pseudo code» pour se focaliser sur la sémantique puis de laisser un compilateur optimiser votre code pour une approche Map/Reduce. L avantage de Pig réside dans la simplicité de l expression d une suite logique de tâches Map/Reduce sur les données :
Résoudre le Challenge 'Big Data' implique plus que la simple gestion des volumes de données De nombreux responsables informatiques tentent de gérer le "big data" défis en se concentrant sur les volumes d'information à l'exclusion des nombreux autres aspects de la gestion de l'information, en laissant de grands défis à résoudre plus tard. Big data est un terme populaire utilisé pour reconnaître la croissance exponentielle, la disponibilité et l'utilisation des informations contenues dans la banque de données riche paysage de demain. Le terme «big data» met un accent démesuré sur la question du volume de l'information Les responsables informatiques doivent éduquer leurs homologues d'affaires sur les défis tout en assurant un certain degré de contrôle et de coordination ainsi que la possibilité de big data ne devienne chaos, ce qui peut augmenter les risques de conformité, augmenter les coûts et de créer encore plus de silos.
Pas seulement le volume Le volume d'information croît annuellement à un taux minimum de 59% par an, et le volume est un défi important dans la gestion des Big Data. Les entreprises et les responsables informatiques doivent se concentrer sur le volume de l'information, de la variété et de la vélocité. Volume: L'augmentation des volumes de données dans les systèmes d'entreprise est causée par des volumes de transactions et d'autres types de données traditionnelles, ainsi que par de nouveaux types de données. Trop volume est un problème de stockage, mais trop de données est aussi une question d'analyse massive. Variété: Les responsables informatiques ont toujours eu un problème pour traduire de grands volumes de données transactionnelles en décision- maintenant il y a plusieurs types d'informations à analyser - provenant principalement de médias sociaux et mobiles (context-aware). Variété comprend des tableaux de données (bases de données), les données hiérarchiques, documents, e-mail, les données de mesure, vidéo, images fixes, audio, données de stock ticker, les transactions financières et plus encore. Velocité: Cela implique des flux de données, la création de dossier structuré, et la disponibilité de l'accès et la livraison. Velocité signifie à la fois la rapidité de données produite et la vitesse à laquelle les données doivent être traitées pour satisfaire la demande.
Profiter du big data Recherche de modèles pour de meilleures décisions d'affaires. La capacité à gérer les données extrêmes sera une compétence de base des entreprises qui sont de plus en plus appeler à utiliser de nouvelles formes d'information - tels que le texte, contexte et le social. Il fournit ensuite la base de la modélisation de nouvelles solutions d'affaires, ce qui permet à l'entreprise de s'adapter. Le modèle peut alors être complété dans différents médiums, tels que l'analyse des réseaux sociaux ou des moteurs informatiques sensibles au contexte..
avec nos solutions spécialisées pour la microfinance et ses institutions coopératives www.did.qc.ca