SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
1Bruno Bonnin @_bruno_b_
Explorez vos données présentes dans
MongoDB avec Apache Zeppelin
MUG Nantes - 17/11/2016
Apache Zeppelin:
qu’est-ce donc ?
“The one
interface for all
your (big) data
needs !”
Création de documents interactifs
… facilitant le partage
Et tout ça, dans un navigateur !
… avec visualisation graphique
Exploration des données
Apache Zeppelin: Interface multi-langages, multi-backends
Interpréteurs
externes
...
Apache Zeppelin: Visualisations graphiques
Apache Zeppelin: User Interface
Paragraphe
Texte à interpréter
Interpréteur utilisé (sql, spark, sh, md, jdbc, …)
Résultat
Toolbar du paragraphe (start, …)
Choix de l’affichage
Formulaire généré à partir de la
requête
Apache Zeppelin: MongoDB interpreter
● Utilise le shell Mongo comme interpréteur du code
○ Langage de développement: Javascript
● Fournit quelques fonctions supplémentaire pour faciliter l’intégration
au “moule” Zeppelin:
○ méthode .table(...) sur DBQuery et DBCommandCursor
○ fonction printTable(...)
■ formatent le code pour que la sortie soit au format d’une table
directement compréhensible par Zeppelin
Serveur Zeppelin Interpréteur MongoDB
Shell
MongoDB
Script
utilisateur +
extensions
Apache Zeppelin: MongoDB interpreter
Apache Zeppelin: MongoDB interpreter
Accès à une
visualisation graphique
car la sortie est sous
forme d’une table
Formatage de la sortie
Apache Zeppelin: MongoDB interpreter
https://docs.mongodb.com/manual/tutorial/aggregation-zip-code-data-set/
Apache Zeppelin: MongoDB interpreter
Et pourquoi ne pas l’utiliser pour monitorer la base ?
Apache Zeppelin: et y a quoi d’autres ?
● Scheduler
● Export / Import
● Gestion de versions
● Sécurité: indispensable pour passer du stade de PoC à un vrai système en
prod
○ Authentification avec Shiro, Autorisation au niveau Notebook, …
● Partage: les résultats peuvent être réutilisés dans d’autres pages (via
<iframe>)
En résumé...
Zeppelin, c’est:
● Open source (https://zeppelin.apache.org/)
● Ouvert (on peut l’adapter à ses besoins, son contexte, via le dev
d’interpréteurs, l’utilisation de libs pour les visualisations)
● Plein de fonctionnalités déjà présentes ou à venir:
○ Nouveaux interpréteurs (Beam,...)
○ Visualisation de maps
○ Améliorations internes / UI
○ ...
Votre futur environnement pour vos futurs besoins autour de
vos futurs (méga-) données
Quelques liens
Site officiel:
● https://zeppelin.apache.org/
Exemples:
● https://www.zeppelinhub.com/viewer
MongoDB interpreter:
● https://github.com/bbonnin/zeppelin-mongodb-interprete
r
@_bruno_b_
Merci !

Contenu connexe

Tendances

20111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v120111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v1Gilles Guirand
 
Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...
Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...
Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...Patrick Guimonet
 
Elasticsearch 5.0 les nouveautés
Elasticsearch 5.0 les nouveautésElasticsearch 5.0 les nouveautés
Elasticsearch 5.0 les nouveautésMathieu Elie
 
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshopMigrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshopNuxeo
 
Drupal - La puissance de Drush
Drupal - La puissance de DrushDrupal - La puissance de Drush
Drupal - La puissance de DrushAlexandre Marie
 
"Un module Prestashop, comment ca marche?"
"Un module Prestashop, comment ca marche?""Un module Prestashop, comment ca marche?"
"Un module Prestashop, comment ca marche?"o2sources
 
Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPjulien pauli
 
Tout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshop
Tout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshopTout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshop
Tout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshopNuxeo
 
Migrations PHP 5 - Solutions linux 2009
Migrations PHP 5 - Solutions linux 2009Migrations PHP 5 - Solutions linux 2009
Migrations PHP 5 - Solutions linux 2009Eric D.
 
Haxe, le graal du développeur touche-à-tout
Haxe, le graal du développeur touche-à-toutHaxe, le graal du développeur touche-à-tout
Haxe, le graal du développeur touche-à-toutFrançois Barbut
 
Annexe1 éTude Comparative Sur Les Moteurs De Recherche
Annexe1   éTude Comparative Sur Les Moteurs De RechercheAnnexe1   éTude Comparative Sur Les Moteurs De Recherche
Annexe1 éTude Comparative Sur Les Moteurs De RechercheMohamed Ben Bouzid
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express jsAbdoulaye Dieng
 
Ansible meetup - Québec - april 25th, 2019
Ansible meetup - Québec - april 25th, 2019Ansible meetup - Québec - april 25th, 2019
Ansible meetup - Québec - april 25th, 2019Gonéri Le Bouder
 
Utiliser Hadoop en perl avec HadoopStreaming
Utiliser Hadoop en perl avec HadoopStreamingUtiliser Hadoop en perl avec HadoopStreaming
Utiliser Hadoop en perl avec HadoopStreamingDavid Morel
 
PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4julien pauli
 
Presentation langage go_19022015
Presentation langage go_19022015Presentation langage go_19022015
Presentation langage go_19022015Stéphane Legrand
 

Tendances (19)

20111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v120111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v1
 
Mongo DB
Mongo DBMongo DB
Mongo DB
 
Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...
Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...
Réduisez vos Coûts d'Administration et les Risques d'erreurs avec Windows Pow...
 
Elasticsearch 5.0 les nouveautés
Elasticsearch 5.0 les nouveautésElasticsearch 5.0 les nouveautés
Elasticsearch 5.0 les nouveautés
 
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshopMigrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
 
Drupal - La puissance de Drush
Drupal - La puissance de DrushDrupal - La puissance de Drush
Drupal - La puissance de Drush
 
Pentaho Ctools : tips & tricks
Pentaho Ctools : tips & tricksPentaho Ctools : tips & tricks
Pentaho Ctools : tips & tricks
 
"Un module Prestashop, comment ca marche?"
"Un module Prestashop, comment ca marche?""Un module Prestashop, comment ca marche?"
"Un module Prestashop, comment ca marche?"
 
Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHP
 
Tout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshop
Tout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshopTout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshop
Tout comprendre de Nuxeo Drive - Nuxeo Tour 2014 - workshop
 
Migrations PHP 5 - Solutions linux 2009
Migrations PHP 5 - Solutions linux 2009Migrations PHP 5 - Solutions linux 2009
Migrations PHP 5 - Solutions linux 2009
 
Haxe, le graal du développeur touche-à-tout
Haxe, le graal du développeur touche-à-toutHaxe, le graal du développeur touche-à-tout
Haxe, le graal du développeur touche-à-tout
 
Annexe1 éTude Comparative Sur Les Moteurs De Recherche
Annexe1   éTude Comparative Sur Les Moteurs De RechercheAnnexe1   éTude Comparative Sur Les Moteurs De Recherche
Annexe1 éTude Comparative Sur Les Moteurs De Recherche
 
Présentation de Node.js
Présentation de Node.jsPrésentation de Node.js
Présentation de Node.js
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
 
Ansible meetup - Québec - april 25th, 2019
Ansible meetup - Québec - april 25th, 2019Ansible meetup - Québec - april 25th, 2019
Ansible meetup - Québec - april 25th, 2019
 
Utiliser Hadoop en perl avec HadoopStreaming
Utiliser Hadoop en perl avec HadoopStreamingUtiliser Hadoop en perl avec HadoopStreaming
Utiliser Hadoop en perl avec HadoopStreaming
 
PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4
 
Presentation langage go_19022015
Presentation langage go_19022015Presentation langage go_19022015
Presentation langage go_19022015
 

En vedette

Explorez vos données avec apache zeppelin
Explorez vos données avec apache zeppelinExplorez vos données avec apache zeppelin
Explorez vos données avec apache zeppelinBruno Bonnin
 
Tout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pasTout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pasBruno Bonnin
 
Big Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and ZeppelinBig Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and Zeppelinprajods
 
Alphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm
 
Apache flink - prise en main rapide
Apache flink - prise en main rapideApache flink - prise en main rapide
Apache flink - prise en main rapideBilal Baltagi
 
Les paradoxes du leadership
Les paradoxes du leadershipLes paradoxes du leadership
Les paradoxes du leadershipThomas Lissajoux
 
Mon emploi du temps!
Mon emploi du temps!Mon emploi du temps!
Mon emploi du temps!Zamparini
 
Présentation générale de l'offre de solutions TAGES
Présentation générale de l'offre de solutions TAGES Présentation générale de l'offre de solutions TAGES
Présentation générale de l'offre de solutions TAGES Vincent lefebvre
 
L'avancement professionnel se trouve ailleurs
L'avancement professionnel se trouve ailleursL'avancement professionnel se trouve ailleurs
L'avancement professionnel se trouve ailleursJobboom
 
Present continuous-pictures-sports
Present continuous-pictures-sportsPresent continuous-pictures-sports
Present continuous-pictures-sportsrogapuebla
 
Dossier de credit dorange civ
Dossier de credit dorange civDossier de credit dorange civ
Dossier de credit dorange civjudykdahe85
 
Revue de presse jolie tête mai 2013
Revue de presse jolie tête   mai 2013Revue de presse jolie tête   mai 2013
Revue de presse jolie tête mai 2013marionlacour
 
Dossier partenaires l
Dossier partenaires lDossier partenaires l
Dossier partenaires lfredroyer
 
Auguste comte à grands traits
Auguste comte à grands traitsAuguste comte à grands traits
Auguste comte à grands traitssleutelaar
 
Livre blanc Care sur les marques et les réseaux sociaux
Livre blanc Care sur les marques et les réseaux sociauxLivre blanc Care sur les marques et les réseaux sociaux
Livre blanc Care sur les marques et les réseaux sociauxCare
 

En vedette (20)

Explorez vos données avec apache zeppelin
Explorez vos données avec apache zeppelinExplorez vos données avec apache zeppelin
Explorez vos données avec apache zeppelin
 
Tout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pasTout ce que le getting started MongoDB ne vous dira pas
Tout ce que le getting started MongoDB ne vous dira pas
 
Big Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and ZeppelinBig Data visualization with Apache Spark and Zeppelin
Big Data visualization with Apache Spark and Zeppelin
 
Alphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB Administration
 
Apache flink - prise en main rapide
Apache flink - prise en main rapideApache flink - prise en main rapide
Apache flink - prise en main rapide
 
2016 03 14 who's who_au 17_mars
2016 03 14 who's who_au 17_mars2016 03 14 who's who_au 17_mars
2016 03 14 who's who_au 17_mars
 
Premiers pas
Premiers pasPremiers pas
Premiers pas
 
Les paradoxes du leadership
Les paradoxes du leadershipLes paradoxes du leadership
Les paradoxes du leadership
 
GRH
GRH GRH
GRH
 
Mon emploi du temps!
Mon emploi du temps!Mon emploi du temps!
Mon emploi du temps!
 
Présentation générale de l'offre de solutions TAGES
Présentation générale de l'offre de solutions TAGES Présentation générale de l'offre de solutions TAGES
Présentation générale de l'offre de solutions TAGES
 
L'avancement professionnel se trouve ailleurs
L'avancement professionnel se trouve ailleursL'avancement professionnel se trouve ailleurs
L'avancement professionnel se trouve ailleurs
 
Present continuous-pictures-sports
Present continuous-pictures-sportsPresent continuous-pictures-sports
Present continuous-pictures-sports
 
Dossier de credit dorange civ
Dossier de credit dorange civDossier de credit dorange civ
Dossier de credit dorange civ
 
Revue de presse jolie tête mai 2013
Revue de presse jolie tête   mai 2013Revue de presse jolie tête   mai 2013
Revue de presse jolie tête mai 2013
 
Doc9206 d1
Doc9206 d1Doc9206 d1
Doc9206 d1
 
Dossier partenaires l
Dossier partenaires lDossier partenaires l
Dossier partenaires l
 
Auguste comte à grands traits
Auguste comte à grands traitsAuguste comte à grands traits
Auguste comte à grands traits
 
Présentation de la CDC
Présentation de la CDCPrésentation de la CDC
Présentation de la CDC
 
Livre blanc Care sur les marques et les réseaux sociaux
Livre blanc Care sur les marques et les réseaux sociauxLivre blanc Care sur les marques et les réseaux sociaux
Livre blanc Care sur les marques et les réseaux sociaux
 

Similaire à Explorez vos données présentes dans MongoDB avec Apache Zeppelin

UNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfUNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfYassineZouin
 
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)Jean Gabès
 
Décourvir les logiciels libres
Décourvir les logiciels libresDécourvir les logiciels libres
Décourvir les logiciels libresIsabelle Motte
 
Partie 1_Matriser les bases PHP v0555555555555.pptx
Partie 1_Matriser les bases PHP v0555555555555.pptxPartie 1_Matriser les bases PHP v0555555555555.pptx
Partie 1_Matriser les bases PHP v0555555555555.pptxHamzaElgari
 
La French Touch', l'open-source premium pour Trailblazers
La French Touch', l'open-source premium pour TrailblazersLa French Touch', l'open-source premium pour Trailblazers
La French Touch', l'open-source premium pour TrailblazersNicolas Vuillamy
 
hassclic270.ppt
hassclic270.ppthassclic270.ppt
hassclic270.pptadiouf2
 
Créer une API GraphQL avec Symfony
Créer une API GraphQL avec SymfonyCréer une API GraphQL avec Symfony
Créer une API GraphQL avec SymfonySébastien Rosset
 
Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...
Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...
Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...Publicis Sapient Engineering
 

Similaire à Explorez vos données présentes dans MongoDB avec Apache Zeppelin (20)

43_pps.pdf
43_pps.pdf43_pps.pdf
43_pps.pdf
 
UNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfUNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdf
 
Xhprof
XhprofXhprof
Xhprof
 
Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015
 
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
 
Introduction webextensions
Introduction webextensionsIntroduction webextensions
Introduction webextensions
 
Chapter1
Chapter1Chapter1
Chapter1
 
Décourvir les logiciels libres
Décourvir les logiciels libresDécourvir les logiciels libres
Décourvir les logiciels libres
 
Partie 1_Matriser les bases PHP v0555555555555.pptx
Partie 1_Matriser les bases PHP v0555555555555.pptxPartie 1_Matriser les bases PHP v0555555555555.pptx
Partie 1_Matriser les bases PHP v0555555555555.pptx
 
La French Touch', l'open-source premium pour Trailblazers
La French Touch', l'open-source premium pour TrailblazersLa French Touch', l'open-source premium pour Trailblazers
La French Touch', l'open-source premium pour Trailblazers
 
Installation open erp
Installation open erpInstallation open erp
Installation open erp
 
Introduction à ASP.NET
Introduction à ASP.NETIntroduction à ASP.NET
Introduction à ASP.NET
 
Go
GoGo
Go
 
openFrameworks
openFrameworksopenFrameworks
openFrameworks
 
hassclic270.ppt
hassclic270.ppthassclic270.ppt
hassclic270.ppt
 
Flex4.5 air3.0
Flex4.5 air3.0Flex4.5 air3.0
Flex4.5 air3.0
 
Créer une API GraphQL avec Symfony
Créer une API GraphQL avec SymfonyCréer une API GraphQL avec Symfony
Créer une API GraphQL avec Symfony
 
12-Factor
12-Factor12-Factor
12-Factor
 
Native script
Native scriptNative script
Native script
 
Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...
Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...
Paris Container Day 2016 : Conteneurisation de l’usine logicielle (Retour d'e...
 

Plus de Bruno Bonnin

[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)
[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)
[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)Bruno Bonnin
 
Stream processing avec Apache Pulsar
Stream processing avec Apache PulsarStream processing avec Apache Pulsar
Stream processing avec Apache PulsarBruno Bonnin
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQLBruno Bonnin
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQLBruno Bonnin
 
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Bruno Bonnin
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQLBruno Bonnin
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQLBruno Bonnin
 
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !Bruno Bonnin
 
A la découverte de vue.js
A la découverte de vue.jsA la découverte de vue.js
A la découverte de vue.jsBruno Bonnin
 
Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !Bruno Bonnin
 
Vue, j’avais pas vu !
Vue, j’avais pas vu !Vue, j’avais pas vu !
Vue, j’avais pas vu !Bruno Bonnin
 
Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !
Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !
Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !Bruno Bonnin
 
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...Bruno Bonnin
 

Plus de Bruno Bonnin (13)

[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)
[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)
[Devoxx MA 2023] R2DBC = R2D2 + JDBC (enfin presque...)
 
Stream processing avec Apache Pulsar
Stream processing avec Apache PulsarStream processing avec Apache Pulsar
Stream processing avec Apache Pulsar
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
Guide (un tout petit peu) pratique (et totalement subjectif) du stream proces...
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Stream processing et SQL
Stream processing et SQLStream processing et SQL
Stream processing et SQL
 
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
 
A la découverte de vue.js
A la découverte de vue.jsA la découverte de vue.js
A la découverte de vue.js
 
Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !
 
Vue, j’avais pas vu !
Vue, j’avais pas vu !Vue, j’avais pas vu !
Vue, j’avais pas vu !
 
Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !
Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !
Apache Spark avec NodeJS ? Oui, c'est possible avec EclairJS !
 
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
 

Explorez vos données présentes dans MongoDB avec Apache Zeppelin

  • 1. 1Bruno Bonnin @_bruno_b_ Explorez vos données présentes dans MongoDB avec Apache Zeppelin MUG Nantes - 17/11/2016
  • 2. Apache Zeppelin: qu’est-ce donc ? “The one interface for all your (big) data needs !” Création de documents interactifs … facilitant le partage Et tout ça, dans un navigateur ! … avec visualisation graphique Exploration des données
  • 3. Apache Zeppelin: Interface multi-langages, multi-backends Interpréteurs externes ...
  • 5. Apache Zeppelin: User Interface Paragraphe Texte à interpréter Interpréteur utilisé (sql, spark, sh, md, jdbc, …) Résultat Toolbar du paragraphe (start, …) Choix de l’affichage Formulaire généré à partir de la requête
  • 6. Apache Zeppelin: MongoDB interpreter ● Utilise le shell Mongo comme interpréteur du code ○ Langage de développement: Javascript ● Fournit quelques fonctions supplémentaire pour faciliter l’intégration au “moule” Zeppelin: ○ méthode .table(...) sur DBQuery et DBCommandCursor ○ fonction printTable(...) ■ formatent le code pour que la sortie soit au format d’une table directement compréhensible par Zeppelin Serveur Zeppelin Interpréteur MongoDB Shell MongoDB Script utilisateur + extensions
  • 8. Apache Zeppelin: MongoDB interpreter Accès à une visualisation graphique car la sortie est sous forme d’une table Formatage de la sortie
  • 9. Apache Zeppelin: MongoDB interpreter https://docs.mongodb.com/manual/tutorial/aggregation-zip-code-data-set/
  • 10. Apache Zeppelin: MongoDB interpreter Et pourquoi ne pas l’utiliser pour monitorer la base ?
  • 11. Apache Zeppelin: et y a quoi d’autres ? ● Scheduler ● Export / Import ● Gestion de versions ● Sécurité: indispensable pour passer du stade de PoC à un vrai système en prod ○ Authentification avec Shiro, Autorisation au niveau Notebook, … ● Partage: les résultats peuvent être réutilisés dans d’autres pages (via <iframe>)
  • 12. En résumé... Zeppelin, c’est: ● Open source (https://zeppelin.apache.org/) ● Ouvert (on peut l’adapter à ses besoins, son contexte, via le dev d’interpréteurs, l’utilisation de libs pour les visualisations) ● Plein de fonctionnalités déjà présentes ou à venir: ○ Nouveaux interpréteurs (Beam,...) ○ Visualisation de maps ○ Améliorations internes / UI ○ ... Votre futur environnement pour vos futurs besoins autour de vos futurs (méga-) données
  • 13. Quelques liens Site officiel: ● https://zeppelin.apache.org/ Exemples: ● https://www.zeppelinhub.com/viewer MongoDB interpreter: ● https://github.com/bbonnin/zeppelin-mongodb-interprete r