SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
REX sur Pentaho Data Integration -
ce que PDI nous a apporté
29 Mai 2013
PRÉSENTATION DE SMILE
 Une expertise multi technologies
 CMS  GED Portail
 Décisionnel
E-commerce
ERPSystème
NOTRE OFFRE – LA MATURITÉ OPEN SOURCE
CONTEXTE
LE CLIENT
• Pur player du web
– Site de petites annonces
• 22 Millions d’annonces actives
• 500 000 nouvelles annonces par jour
• 8ème site le plus visité en France
CONTEXTE
LE PROJET (1/2)
• Développement et alimentation d’un entrepôt de donnée
– Sources multiples
• Site, Site-mobile, applications
• CRM
• Référentiel produit
• Fichiers de logs (Site, Transaction, …)
– SGBD standard utilisé
• PostgreSQL
• Evolution vers les technologies Big Data à l’étude
• Mise en place d’une solution BI complète
– Solution retenue : Pentaho BI Suite
CONTEXTE
LE PROJET (2/2)
• Le client dispose d’1 système d’aide à la prise de décision qui
lui permet
– le pilotage de l’activité
– l’analyse des directions métiers.
CRM
Site
Logs
Sources de
données
ETL
DW
Restitutions
ODS
TransformationsImport
Tableaux de bord
Rapports à la
demande
Analyses OLAP
CONTEXTE
LES PRINCIPAUX CHALLENGES
• Premier projet BI réalisé par le client
– Phase de spécification complexe
– De nombreuses sources
• Forte volumétrie (log du site, transactions)
• Fichiers complexes
• De nombreux indicateurs à calculer
• Problématique de déboulonnage / qualité de donnée importantes
– Fenêtre de tire réduite
– Choix du SGBD imposé par le client : PostgreSQL
LA SOLUTION
L’ETL - PENTAHO DATA INTEGRATION
• Présentation de PDI
– Projet Open Source existant : Kettle, aujourd’hui intégré à la suite
Pentaho
– Licence Apache 2.0
– Dernière version : 4.4.1 datant du 29/11/2012
– E.T.L. (Extract Transform Load)
– Lit et écrit dans n’importe quelle source de données
• Principales bases de données (Open Source ou propriétaire)
• Fichiers Excel, CSV, XML
• AS400 …
– Intégration à la plateforme WEB
• Contrôle à distance des jobs (traitements)
• Suivi des performances
• Gestion des alertes
– Nombreuses fonctions de load/balancing, partitionnement, cluster
IMPLEMENTATION
GESTION DE LA FORTE VOLUMETRIE (1/2)
• Quelques chiffres
– 500 000 nouvelles annonces chaque jour
– 22 000 000 d’annonces actives (vivantes)
– 350 000 000 de lignes / 100Go dans le fichier de log principal
– 3 500 000 visiteur unique / jour
• Suivi du cycle de vie des annonces
– Modèle de données adapté à la production
• pas aux requêtes analytiques
• Indexes non-adaptés : ajout d’un indexe peu représenter plusieurs jours
de calculs
– Problématique dès lors qu’il faut effectuer des requêtes sur la table
des « actions »
IMPLEMENTATION
GESTION DE LA FORTE VOLUMETRIE (2/2)
• PDI à la rescousse
– Les jointures sur plusieurs tables de millions de lignes non
performantes
– Déport des calculs dans l’ETL
• Exploitation de la puissance de la machine de calcul de l’ETL
• Remplacement jointures SQL par des composants « Merge Join » de PDI
– Découpage en plusieurs requêtes
– Gain obtenu : 45 minutes -> 5 minutes (90% plus rapide dans l’ETL)
– En grande partie lié à la puissance du serveur
IMPLEMENTATION
GESTION DE LA FORTE VOLUMETRIE (2/2)
IMPLEMENTATION
EXPLOITATION DES FICHIERS DE LOG (1/4)
• Plusieurs fichiers / jour
– Volumétrie totale de plus de 100 Go / jour
– Besoin de parallélisation
• PDI permet la lecture de fichiers en plusieurs morceaux
– Utilisation du composant « CSV Input » avec le paramètre nombre de copie = X20
– Optimisé pour les machines actuelles multi-cœurs (ici 32 cœurs)
– Gain obtenu x20
• PDI permet le partitionnement
– Utilisation du partionnement sur 5 instances du composant « Group By »
– Gain obtenu x5
IMPLEMENTATION
EXPLOITATION DES FICHIERS DE LOG (2/4)
– Besoin de parallélisassions (suite)
• PDI permet d’exécuter N-traitements en parallèle au sein d’1 même job
IMPLEMENTATION
EXPLOITATION DES FICHIERS DE LOG (3/4)
• Fichiers complexes
– Besoin : exploiter le logs des serveur de transaction
• Structure
– Transaction sur plusieurs lignes
– Transaction avec statuts différents
– Transactions se chevauchent (Il est impératif de trier les transactions avec traitement)
• Très forte volumétrie
– Pré-traitement (tri du fichier et filtre sur les transactions valides)
IMPLEMENTATION
EXPLOITATION DES FICHIERS DE LOG (4/4)
• Fichiers complexes
– Besoin : exploiter le logs des serveur de transaction (suite)
• Composants spécifiques « Analytic query » pour « naviguer » dans le
fichier et parcourir la transaction
• Résultat : 100Go traité en 45 minutes
IMPLEMENTATION
EXECUTION SUR SERVEUR DISTANT
• Avec de telles volumétrie …
– Difficile de travailler sur une machine locale
– Là encore, PDI propose des solutions pour utiliser un serveur plus
puissant
• Exécution distance
• Cluster
– Et tout ceci depuis l’interface de développement
IMPLEMENTATION
EXECUTION SUR SERVEUR DISTANT
• Avec de telles volumétrie …
– Difficile de travailler sur une machine locale
– Là encore, PDI propose des solutions pour utiliser un serveur plus
puissant
• Exécution distance
• Cluster
– Et tout ceci depuis l’interface de développement
BILAN
PDI – PUISSANT ET FLEXIBLE
• Travail collaboratif
– Projet de 6 mois
– Jusqu’à 5 développeurs en //
– Prise en main facile
• Outil très adapté au traitement de fortes volumétries
– Composants simples pour paralléliser les traitements
– Gain de temps non-négligeables vs jointures SQL
• Très flexible
– Exploitation efficace de fichiers complexes
– Evolution vers l’utilisation de technologies Big Data type Hadoop ou
NoSQL
Pour aller plus loin : www.smile.fr
Merci de votre attention
@GroupeSmile_BI on Twitter

Contenu connexe

En vedette

Annette BI Portfolio
Annette BI PortfolioAnnette BI Portfolio
Annette BI Portfolio
atako
 
Business intelligence
Business intelligenceBusiness intelligence
Business intelligence
crazytechnet
 
PFE BI - INPT
PFE BI - INPTPFE BI - INPT
PFE BI - INPT
riyadadva
 
Projet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de donnéesProjet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de données
Jean-Marc Dupont
 

En vedette (20)

Annette BI Portfolio
Annette BI PortfolioAnnette BI Portfolio
Annette BI Portfolio
 
Penta formation-pentaho
Penta formation-pentahoPenta formation-pentaho
Penta formation-pentaho
 
Business intelligence
Business intelligenceBusiness intelligence
Business intelligence
 
Solutions SAP pour la performance logistique
Solutions SAP pour la performance logistiqueSolutions SAP pour la performance logistique
Solutions SAP pour la performance logistique
 
OLTP vs OLAP
OLTP vs OLAPOLTP vs OLAP
OLTP vs OLAP
 
What is ETL?
What is ETL?What is ETL?
What is ETL?
 
Oltp vs olap
Oltp vs olapOltp vs olap
Oltp vs olap
 
Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
Réussir son analyse des besoins dans la conduite d'un projet informatique (2007)
 
OLAP
OLAPOLAP
OLAP
 
Chp2 - Les Entrepôts de Données
Chp2 - Les Entrepôts de DonnéesChp2 - Les Entrepôts de Données
Chp2 - Les Entrepôts de Données
 
Pentaho
PentahoPentaho
Pentaho
 
Introduction to ETL and Data Integration
Introduction to ETL and Data IntegrationIntroduction to ETL and Data Integration
Introduction to ETL and Data Integration
 
Séminaire Linalis et Pentaho Paris le 7 Juillet 2011
Séminaire Linalis et Pentaho Paris le 7 Juillet 2011Séminaire Linalis et Pentaho Paris le 7 Juillet 2011
Séminaire Linalis et Pentaho Paris le 7 Juillet 2011
 
Analyse de données avec spss,
Analyse de données avec spss,Analyse de données avec spss,
Analyse de données avec spss,
 
OLAP & DATA WAREHOUSE
OLAP & DATA WAREHOUSEOLAP & DATA WAREHOUSE
OLAP & DATA WAREHOUSE
 
Business Intelligence : Transformer les données en information.
Business Intelligence : Transformer les données en information.Business Intelligence : Transformer les données en information.
Business Intelligence : Transformer les données en information.
 
Rapport PFE
Rapport PFERapport PFE
Rapport PFE
 
PFE BI - INPT
PFE BI - INPTPFE BI - INPT
PFE BI - INPT
 
Projet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des donnéesProjet Bi - 3 - Alimentation des données
Projet Bi - 3 - Alimentation des données
 
Projet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de donnéesProjet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de données
 

Similaire à Retour d'expérience sur Pentaho Data Integration - ce que PDI nous a apporté

Tartine - Pixelle, Refonte de l’ingestion et présentation de l’architecture
Tartine - Pixelle, Refonte de l’ingestion et présentation de l’architectureTartine - Pixelle, Refonte de l’ingestion et présentation de l’architecture
Tartine - Pixelle, Refonte de l’ingestion et présentation de l’architecture
confluent
 
MongoDB 3.6 Customer Deck pptx.pptx
MongoDB 3.6 Customer Deck pptx.pptxMongoDB 3.6 Customer Deck pptx.pptx
MongoDB 3.6 Customer Deck pptx.pptx
MongoDB
 
Les nouveautés de MongoDB 3.6
Les nouveautés de MongoDB 3.6Les nouveautés de MongoDB 3.6
Les nouveautés de MongoDB 3.6
MongoDB
 

Similaire à Retour d'expérience sur Pentaho Data Integration - ce que PDI nous a apporté (20)

Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
Système d’Information à l’Apec : un nouveau coeur de métier mis en place avec...
 
SharePoint - Benchmark des solutions de migration
SharePoint - Benchmark des solutions de migrationSharePoint - Benchmark des solutions de migration
SharePoint - Benchmark des solutions de migration
 
Deep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL ServerDeep Dive Performance , le In-Memory dans SQL Server
Deep Dive Performance , le In-Memory dans SQL Server
 
Mariadb une base de données NewSQL
Mariadb une base de données NewSQLMariadb une base de données NewSQL
Mariadb une base de données NewSQL
 
Meetup Google Cloud
Meetup Google CloudMeetup Google Cloud
Meetup Google Cloud
 
Neo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métierNeo4j - Cas d'usages pour votre métier
Neo4j - Cas d'usages pour votre métier
 
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetesComment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
 
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
 
Présentation du produit job router
Présentation du produit job routerPrésentation du produit job router
Présentation du produit job router
 
Job Router - Workflows d'entreprise sur mobile
Job Router - Workflows d'entreprise sur mobileJob Router - Workflows d'entreprise sur mobile
Job Router - Workflows d'entreprise sur mobile
 
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
AFUP 2010 : Industrialisation de PHP, l'exemple de CANAL+
 
GAB 2015 - Nouveautes sur le stockage de donnees dans Azure
GAB 2015  - Nouveautes sur le stockage de donnees dans AzureGAB 2015  - Nouveautes sur le stockage de donnees dans Azure
GAB 2015 - Nouveautes sur le stockage de donnees dans Azure
 
Tartine - Pixelle, Refonte de l’ingestion et présentation de l’architecture
Tartine - Pixelle, Refonte de l’ingestion et présentation de l’architectureTartine - Pixelle, Refonte de l’ingestion et présentation de l’architecture
Tartine - Pixelle, Refonte de l’ingestion et présentation de l’architecture
 
Meetup Devops Geneve 06/17- EBU Feedbacks
Meetup Devops Geneve 06/17- EBU Feedbacks Meetup Devops Geneve 06/17- EBU Feedbacks
Meetup Devops Geneve 06/17- EBU Feedbacks
 
Saas Libre
Saas LibreSaas Libre
Saas Libre
 
MongoDB 3.6 Customer Deck pptx.pptx
MongoDB 3.6 Customer Deck pptx.pptxMongoDB 3.6 Customer Deck pptx.pptx
MongoDB 3.6 Customer Deck pptx.pptx
 
Les nouveautés de MongoDB 3.6
Les nouveautés de MongoDB 3.6Les nouveautés de MongoDB 3.6
Les nouveautés de MongoDB 3.6
 
Évolution de la supervision chez Ikoula
Évolution de la supervision chez IkoulaÉvolution de la supervision chez Ikoula
Évolution de la supervision chez Ikoula
 
Évolution de la supervision chez Ikoula
Évolution de la supervision chez IkoulaÉvolution de la supervision chez Ikoula
Évolution de la supervision chez Ikoula
 
Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
 

Retour d'expérience sur Pentaho Data Integration - ce que PDI nous a apporté

  • 1. REX sur Pentaho Data Integration - ce que PDI nous a apporté 29 Mai 2013
  • 3.  Une expertise multi technologies  CMS  GED Portail  Décisionnel E-commerce ERPSystème NOTRE OFFRE – LA MATURITÉ OPEN SOURCE
  • 4. CONTEXTE LE CLIENT • Pur player du web – Site de petites annonces • 22 Millions d’annonces actives • 500 000 nouvelles annonces par jour • 8ème site le plus visité en France
  • 5. CONTEXTE LE PROJET (1/2) • Développement et alimentation d’un entrepôt de donnée – Sources multiples • Site, Site-mobile, applications • CRM • Référentiel produit • Fichiers de logs (Site, Transaction, …) – SGBD standard utilisé • PostgreSQL • Evolution vers les technologies Big Data à l’étude • Mise en place d’une solution BI complète – Solution retenue : Pentaho BI Suite
  • 6. CONTEXTE LE PROJET (2/2) • Le client dispose d’1 système d’aide à la prise de décision qui lui permet – le pilotage de l’activité – l’analyse des directions métiers. CRM Site Logs Sources de données ETL DW Restitutions ODS TransformationsImport Tableaux de bord Rapports à la demande Analyses OLAP
  • 7. CONTEXTE LES PRINCIPAUX CHALLENGES • Premier projet BI réalisé par le client – Phase de spécification complexe – De nombreuses sources • Forte volumétrie (log du site, transactions) • Fichiers complexes • De nombreux indicateurs à calculer • Problématique de déboulonnage / qualité de donnée importantes – Fenêtre de tire réduite – Choix du SGBD imposé par le client : PostgreSQL
  • 8. LA SOLUTION L’ETL - PENTAHO DATA INTEGRATION • Présentation de PDI – Projet Open Source existant : Kettle, aujourd’hui intégré à la suite Pentaho – Licence Apache 2.0 – Dernière version : 4.4.1 datant du 29/11/2012 – E.T.L. (Extract Transform Load) – Lit et écrit dans n’importe quelle source de données • Principales bases de données (Open Source ou propriétaire) • Fichiers Excel, CSV, XML • AS400 … – Intégration à la plateforme WEB • Contrôle à distance des jobs (traitements) • Suivi des performances • Gestion des alertes – Nombreuses fonctions de load/balancing, partitionnement, cluster
  • 9. IMPLEMENTATION GESTION DE LA FORTE VOLUMETRIE (1/2) • Quelques chiffres – 500 000 nouvelles annonces chaque jour – 22 000 000 d’annonces actives (vivantes) – 350 000 000 de lignes / 100Go dans le fichier de log principal – 3 500 000 visiteur unique / jour • Suivi du cycle de vie des annonces – Modèle de données adapté à la production • pas aux requêtes analytiques • Indexes non-adaptés : ajout d’un indexe peu représenter plusieurs jours de calculs – Problématique dès lors qu’il faut effectuer des requêtes sur la table des « actions »
  • 10. IMPLEMENTATION GESTION DE LA FORTE VOLUMETRIE (2/2) • PDI à la rescousse – Les jointures sur plusieurs tables de millions de lignes non performantes – Déport des calculs dans l’ETL • Exploitation de la puissance de la machine de calcul de l’ETL • Remplacement jointures SQL par des composants « Merge Join » de PDI – Découpage en plusieurs requêtes – Gain obtenu : 45 minutes -> 5 minutes (90% plus rapide dans l’ETL) – En grande partie lié à la puissance du serveur
  • 11. IMPLEMENTATION GESTION DE LA FORTE VOLUMETRIE (2/2)
  • 12. IMPLEMENTATION EXPLOITATION DES FICHIERS DE LOG (1/4) • Plusieurs fichiers / jour – Volumétrie totale de plus de 100 Go / jour – Besoin de parallélisation • PDI permet la lecture de fichiers en plusieurs morceaux – Utilisation du composant « CSV Input » avec le paramètre nombre de copie = X20 – Optimisé pour les machines actuelles multi-cœurs (ici 32 cœurs) – Gain obtenu x20 • PDI permet le partitionnement – Utilisation du partionnement sur 5 instances du composant « Group By » – Gain obtenu x5
  • 13. IMPLEMENTATION EXPLOITATION DES FICHIERS DE LOG (2/4) – Besoin de parallélisassions (suite) • PDI permet d’exécuter N-traitements en parallèle au sein d’1 même job
  • 14. IMPLEMENTATION EXPLOITATION DES FICHIERS DE LOG (3/4) • Fichiers complexes – Besoin : exploiter le logs des serveur de transaction • Structure – Transaction sur plusieurs lignes – Transaction avec statuts différents – Transactions se chevauchent (Il est impératif de trier les transactions avec traitement) • Très forte volumétrie – Pré-traitement (tri du fichier et filtre sur les transactions valides)
  • 15. IMPLEMENTATION EXPLOITATION DES FICHIERS DE LOG (4/4) • Fichiers complexes – Besoin : exploiter le logs des serveur de transaction (suite) • Composants spécifiques « Analytic query » pour « naviguer » dans le fichier et parcourir la transaction • Résultat : 100Go traité en 45 minutes
  • 16. IMPLEMENTATION EXECUTION SUR SERVEUR DISTANT • Avec de telles volumétrie … – Difficile de travailler sur une machine locale – Là encore, PDI propose des solutions pour utiliser un serveur plus puissant • Exécution distance • Cluster – Et tout ceci depuis l’interface de développement
  • 17. IMPLEMENTATION EXECUTION SUR SERVEUR DISTANT • Avec de telles volumétrie … – Difficile de travailler sur une machine locale – Là encore, PDI propose des solutions pour utiliser un serveur plus puissant • Exécution distance • Cluster – Et tout ceci depuis l’interface de développement
  • 18. BILAN PDI – PUISSANT ET FLEXIBLE • Travail collaboratif – Projet de 6 mois – Jusqu’à 5 développeurs en // – Prise en main facile • Outil très adapté au traitement de fortes volumétries – Composants simples pour paralléliser les traitements – Gain de temps non-négligeables vs jointures SQL • Très flexible – Exploitation efficace de fichiers complexes – Evolution vers l’utilisation de technologies Big Data type Hadoop ou NoSQL
  • 19. Pour aller plus loin : www.smile.fr Merci de votre attention @GroupeSmile_BI on Twitter