hadoop dans l'enterprise - sas institute group...6 pourquoi in pioneer days they used oxen...
TRANSCRIPT
1
Hadoop dans l’entreprise: du concept à la réalité. Pourquoi et comment?
Jean-Marc Spaggiari | Cloudera [email protected] | @jmspaggi
Mai 2014
2
Avant qu’on commence…
3
Agenda -Qu’est-ce que Hadoop et pourquoi – 25 minutes
- Cas d’utilisation – 20 minutes - Questions – 15 minutes
4
Qu’est-ce que c’est et pourquoi?
5
Pourquoi Hadoop?
Traditionnellement, les systèmes de traitement étaient limités par la capacité des processeurs:
• Relativement petit volume de données
• Beaucoup de traitements complexes.
Solution initial: De plus gros ordinateurs:
• Processeurs plus rapides, plus de mémoire;
• Mais toujours pas capable de suivre le volume de croissance des données
6
Pourquoi Hadoop?
Une solution encore meilleure: Plus d'ordinateurs
• Systèmes distribués
• Utilisation de plusieurs machines pour une même tache.
• Pousser le traitement sur la donnée et non l’inverse.
In pioneer days they used oxen for heavy pulling, and when one ox couldn't budge a log,
they didn't try to grow a larger ox. We shouldn't be trying for
bigger computers, but for more systems of computers.
—Grace Hopper
7
Nouvelle approche
Avant Pousser les données sur le traitement
Maintenant Pousser le traitement sur les données
Data Entreprises
“Information-centric” utilisent TOUTES les
données:
Structurées, semi-structurées, non
structurées, internes et externes.
Compute
Compute
Compute
Entreprises «process-centric » utilisent:
• Données structurées • Données internes • Données importantes
Compute
Compute
Compute
Data
Data
Data
Data
©2014 Cloudera and SAS. All rights reserved.
8
Qu’est-ce que Hadoop? À mes enfants:
• Quelqu’un a créé un logiciel qui aide le monde à résoudre de gros problèmes à moindre coûts. Il lui a donné le nom de la peluche de son fils.
À ma femme:
• C’est un logiciel qui permet à des centaines d’ordinateurs de travailler ensemble comme s’ils étaient un. Ce n’est pas cher, et quand on a besoin de plus de puissance, il suffit d’ajouter d’autres ordinateurs.
9
Qu’est-ce que Hadoop?
Aux dirigeants d’entreprises:
• Va vous aider à augmenter votre ROI et baisser vos coûts par TB.
À mes amis:
• C’est un peu comme un mélange de minority report et de skynet
10
Hadoop!
11
Ce qu’ont fait Google…
• Conçu leur propre système de stockage et de traitement:
• Google File System
• MapReduce
• Buts: • Bon marché
• « Scalable »
• Fiable
12
Google ont fait quelque chose de différent…
• Ça fonctionne!
• Supporte les services de Google depuis plusieurs années
• Toujours utilisé aujourd’hui.
15
16
Google: Messages du futur
• Google à gentiment publié:
• 2003: Google File System (GFS)
• 2004: MapReduce
• Des technologies déjà matures.
17
Google: Messages du future
• Pas d’adoption initiale de la communauté
• Les gens DB pensaient que ce n’était pas une bonne idée
• Les Non-Google n’en étaient pas là.
• Google n’avait pas d’intérêts dans ces publications
• Modèle d’affaire sur les publicités, pas sur les infrastructures.
18
Qu’est-ce que Hadoop?
• Logiciel Open Source
• Stocker, Traiter, Analyzer
• Grand quantité de données, stockage brut
• Structurées, non-structurées, semi-structurées… ou une combinaison
• Hadoop = Schema on Read, RDBMS = Schema on Write
Stockage Traitement
HDFS MapReduce, Hive, Impala, Search…
Auto-correctif
Large bande passante
Stockage réparti
Traitement distribué
Tolérance aux pannes
Hadoop “Node”
19
• Open source
• Environ 60 committers de plus de 10 compagnies:
• Cloudera, Yahoo!, Facebook, Apple, and more
• Centaines de contributeurs:
• Nouvelles fonctionnalités;
• Bug fix
• De très nombreux projets/applications/outils reliés.
Pourquoi Hadoop? Les faits.
20
Pourquoi Hadoop?
Pig
Zookeeper
Impala
Grand écosystem en croissance.
21
Pourquoi Hadoop? Qui l’utilise.
22
Pourquoi Hadoop? Intégration.
BI/Analytics ETL Database OS/Cloud/
System Mgmt.
Hardware
23
Hadoop fourni 2 principaux composants: • Hadoop Distributed File System - HDFS • Map Reduce
Core Hadoop
24
• Base de données non-sql distribué (low latency).
• Base de données en colonnes.
HBase
25
• Abstraction de base de
données relationnelles
utilisant un langage proche
du SQL appelé HiveQL.
• Utilise MapReduce pour
exécuter les requêtes.
SELECT s.word, s.freq, k.freq
FROM shakespeare JOIN ON (s.word= k.word) WHERE s.freq >= 5;
Hive
26
• Requêtes en temps réel.
• Rapide, nativement en C++
• Utilise le même langage de
requêtes que Hive.
Impala
27
• Langage de script pour exécuter
(entre autre) des opérations
MapReduce.
• Créé pour simplifier la
créations/execution de taches
MapReduce.
• Peut être étendue avec des
fonctions définies par l'utilisateur
(UDF)
emps = LOAD 'people.txt’ AS
(id,name,salary);
rich = FILTER emps BY salary >
200000;
sorted_rich = ORDER rich BY
salary DESC;
STORE sorted_rich INTO
’rich_people.txt';
Pig
28
Effectue des transferts de données bi-directionels entre Hadoop et la plus part des bases de données.
Sqoop
29
Client
Client
Client
Client
Agent
Agent
Agent
Système de cueillette et d’agrégation de flux pour des données massives et volumineuses comme par exemple services RPC, Log4J, Syslog, etc.
Flume
30
Un “workflow engine” et
un planificateur de taches
construit spécialement
pour orchestrer les
processus à grande
échelle.
Oozie
31
• Zookeeper est un moteur de
consensus distribué.
• Fourni des services prédéfinis
pour, entre autre:
• Élection de leaders;
• Découverte de services;
• Verrous et exclusions mutuelles
distribuées.
ZooKeeper
32
• Hue est une interface web utilisateur OpenSource pour les applications relative à Hadoop.
• Hue comprend entre autre: • Explorateur de fichiers HDFS; • Concepteur et visualisateur de
jobs MapReduce; • Éditeur de requêtes pour Hive,
Impala, Pig, etc. • Oozie; • Et bien plus.
Hue
33
Libraire d’algorithmes de “machine learning” pour, entre autre: • Recommandations basé sur le
comportement; • Regroupement de documents; • Classification de catégories; • Recommandations d’achats
fréquents; • Etc.
Mahout
34
• Spark • Shark • Storm • …
Etc.
35
Quand un fichier est ajouté, il est découpé en blocs. Taille des blocs = 128MB (défaut) Facteur de réplication = 3
HDFS Block Replication
1
2
3
4
5
2
3
4
2
4
5
1
3
5
1
2
5
1
3
4
HDFS
Node 1 Node 2
Node 3
Node 4 Node 5
File Blocks
38
Les cas d’utilisation.
39
La plupart des compagnies
commencent ici!
Deux catégories de cas d’utilisation d’Hadoop
Efficacité opérationnelle Effectuer le même travail, mais plus vite, mieux et moins chers.
Innovation et Avantage Retirer de l’information de TOUTES vos données.
Traitement des données: ETL Offload Stockage des données: Ent. Data Hub
Business Intelligence Advanced Analytics Applications
40
BI/DW Architecture Aujourd’hui
Data Warehouse
New data
Unstructured data
Source
Source
Data Marts
41
BI/DW Architecture Aujourd’hui
Staging Server
Store
ETL Tool
New data
Unstructured data
?
Source
Source
Archive (offline) Extract
Transform Load
Move
Analyze Report
Transform
Data Warehouse
Data Marts
Move
42
Hadoop plus the Data Warehouse: BI/DW Architecture of Tomorrow
Extract Transform Load
Source
Store
New data
Unstructured data
Source
Move
Analyze Report
Transform
Data Warehouse
Data Marts
Move
43
Client exemple Institution financière américaine
Bénéfices: • Accès plus rapide à 6 fois plus de données;
• Faible cout, architecture simplifiée;
• Implémentation en quelques mois.
Défis: • Réduire les coûts;
• Se conformer aux règlements imposant un plus gros volume de données pour les « stress tests »
• Consolider et simplifier le traitement des données.
Avant Après
Mainframe Mainframe
Cluster Hadoop Warehouse
44
Client exemple: Fournisseur de services téléphoniques Canadien
• Croissance exponentielle des données, générées par les nouveaux appareils des clients;
• Analytique limité à 1% des données à cause des contraintes d’ETL et de stockage.
• Nouvelle combinaison de Hadoop + DataWarehouse pour traiter 100% des données (un demi PB par jour!)
• Énorme réduction des temps de traitement (de 4 jours à 53 minutes)
• 90% de réduction du code des ETL
De 1% des données à 100% d’analyse!
Archive Storage
Data Warehouse
Complex Correlation
Alerting
Filter &
Split
Event Monitoring
Streaming ETL
Streaming ETL
Telecom Services
Avant
Data Warehouse
Alerting
Filter &
Split
Event Monitoring
Hadoop Archive Storage
ETL Correlation
Stage 1 DWH
Telecom Services
Après
45
Client exemple: Agence Marketing Américaine
FTP ETL Database
46
Client exemple: Agence Marketing Américaine
FTP ETL Database Hadoop
47
Client exemple: Agence Marketing Américaine
FTP Database Hadoop
ETL
48
Client exemple: Agence Marketing Américaine
FTP Database Hadoop
ETL
Bénéfices: • 300 fois plus de données après un an;
• Performances accrues (30 minutes vs 6 semaines);
• “Scalable”.
49
Active Archive • Full fidelity original data • Indefinite time • Lowest cost storage
Data Mgmt & Transformations • One source of data for all analytics • Define structure and publish • Significantly faster & cheaper
Self-service Exploratory BI • Simple search + BI tools • “Schema on read” agility • Reduce BI user backlog requests
Multi-workload analytic platform • Bring applications to data • Combine different workloads on common data (i.e. SQL +Search) • True BI agility
1
2
3
4
EDWs Marts Storage Search Servers Documents Archives
ERP, CRM, RDBMS, Machines Files, Images, Video, Logs, Clickstreams External Data Sources
4
1
2
3
EDH
Summary: Hadoop adoption is a progression
50
SAS® Embedded Process
SAS & Cloudera Big data analytics in Cloudera
HDFS
SAS® LASR™ Analytic Server
SAS® Event Stream Processing
SAS/ACCESS® to Hadoop™
& to Impala™
Real-Time & Streaming Interactive Batch & SQL
Visual Analytics
Visual Statistics
Visual Scenario Designer
In-Memory Statistics for Hadoop
Visual Data Builder Visual Scenario Designer
High-Performance Analytics
©2014 Cloudera and SAS. All rights reserved.
51
“Hadoopable” Big Data: Indicateurs
1. Le client souhaite ajouter de nouvelles données
2. Les besoins de stockage augmentent de façon spectaculaire
3. Ressources de traitement insuffisantes pour répondre aux SLA internes de l'entreprise
4. Analyses et ETLS existants à pleine capacité
5. Pressions financières pour réduire les coûts informatiques Best Practice:
Commencer avec des usescases opérationnels;
Continuer avec des usescases analytiques