[wpms_breadcrumb reverse="0"]
Les tendances du BIG DATA

ElasticSearch : mise en oeuvre et programmation

Reference : ESMOP
2 jours - 1250 € HT
Prochaines sessions
ElasticSearch : mise en oeuvre et programmation
Objectifs

  • Comprendre le fonctionnement et les apports d’Elasticsearch dans le traitement de données, et savoir le mettre en oeuvre, analyser les données, programmer des requêtes et créer des rapports et tableaux de bord avec kibana.

Pré requis

  • Connaissances générales des systèmes d’information, et des systèmes d’exploitation (Linux ou Windows).
  • Les travaux pratiques sont réalisés sur Linux.Connaissance d’un langage de programmation structuré

Modalités pédagogiques

Cours dispensé en mode présentiel avec une alternance d’apports théoriques et méthodologiques, et de mises en situations pratiques

Public visé
Inscription

Programmes de ElasticSearch : mise en oeuvre et programmation

Introduction

  • Présentation ElasticSearch, fonctionnalités, licence
  • Les différentes versions : fonctionnalités et particularités des versions de 2.0 à 5.0.
  • Nouveautés de la version 6.0.
  • Positionnement d’Elasticsearch et des produits complémentaires : Watcher, Marvel, Kibana, Logstash, Beats, X-Pack
  • Principe : base technique Lucene et apports d’ElasticSearch
  • Fonctionnement distribué

Installation et configuration

  • Prérequis techniques.
  • Utilisation de l’interface Marvel.
  • Premiers pas dans la console Sense

Format et stockage des données

  • Format des données. Conversion au format JSON des données à traiter.
  • Structure des données. Stockage, indexation.
  • Terminologie Elasticsearch : notions de document, type, index
  • Métadonnées : _index, _type, _ID
  • Choix de l’identifiant par l’application avec l’API index, ou genération automatique d’un identifiant..
  • Indexation inversée.

Outils d’interrogation

  • Java API avec « Node client » et « Transport client »
  • API RESTful en HTTP
  • Exemples de requêtes simples et plus complexes : recherche de «phrases», extraction de plusieurs documents, etc ..
  • Notion de pertinence du résultat : «score»
  • Requêtes avec Search Lite et avec Query DSL (domain-specific language)
  • Utilisation de ‘filtre’ pour affiner des requêtes.
  • Autres clients : Perl, Python, Ruby, etc…
  • Aggrégation de résultats.

Mises à jour

  • Fonctionnement d’Elasticsearch pour les ajouts, modifications, suppression.
  • Notion de version affectée par Elasticsearch.
  • L’API bulk pour les traitements groupés.
  • Réalisation de scripts avec groovy

Gestion des accès concurrents

  • Utilisation du numéro de version.Gestion par l’application : différentes méthodes selon les contraintes fonctionnelles.
  • Utilisation d’un numéro de version externe.

Kibana présentation

  • Fonctionnalités : recherche, visualisation, création de tableaux de bord et graphiques à partir des données fournies par Elacticsearch

Kibana, mise en oeuvre

  • Installation, configuration du mapping avec Elasticsearch.
  • Paramétrage dans le fichier kibana.yml
  • Mapping automatique ou manuel.Configuration des indexes à explorer.
  • Visualisation et sauvegarde de graphiques, étude des différents types de graphiques disponibles,
  • création de tableaux de bord et rapports à partir des graphiques