Stack ELK : Logstash et Kibana les outils d'Elasticsearch

Les retards à la SNCF Version Longue

(Facultatif) TP longue version

Pour ceux qui souhaitent approfondir le processus d'ETL en utilisant logstash

Analyse des données de l'Open Data de la SNCF

La première partie de ce TP portera sur l'analyse des données open data de la sncf portant sur les retards des lignes TGV en France à l'aide de logstash

Question

Rendez-vous dans le dossier logstash/conf/conf.d

CTRL+C pour copier, CTRL+V pour coller
1
cd logstash/conf/conf.d
cd logstash/conf/conf.d

Modifier le fichier 01-input.conf

Ce fichier contiendra la configuration permettant de lire le fichier regularite-mensuelle-tgv-short.csv placé dans le dossier /etc/logstash/files

Question

Modifier le fichier 02-filter.conf

Ce fichier contiendra la configuration permettant d'analyser un fichier csv avec les colonnes suivantes :

CTRL+C pour copier, CTRL+V pour coller
1
"date","axe","depart","arrivee","trains_programmes","trains_circules","trains_annules","trains_retards","regularite"
"date","axe","depart","arrivee","trains_programmes","trains_circules","trains_annules","trains_retards","regularite"

Question

Modifier le fichier 03-output.conf

Ce fichier contiendra la configuration permettant de voir sur la console le résultat de l'analyse de logstash

Question

Lancer logstash et analyser le résultat

CTRL+C pour copier, CTRL+V pour coller
1
start logstash
start logstash

Problématique : On se rend compte que le fichier de la SNCF comporte une date qui n'est pas complète ce qui empêche logstash de l'analyser.

Question

Rajouter un filtre qui permettrait de compléter le champ date avec le premier jour du mois et de le convertir en timestamp afin de pouvoir par la suite l'analyser.

Question

Les valeurs numériques doivent aussi être castées par logstash pour être prise en compte par elasticsearch.

Maintenant que les résultats correspondent à ce que l'on veut, on souhaite charger les données dans la base elasticsearch.

Question

Modifiez le fichier d'entrée pour utiliser le fichier regularite-mensuelle-tgv.csv

Question

Modifiez le fichier de sortie pour utiliser une base elasticsearch

Question

Question subsidiaire : Dans le fichier de la SNCF, on voit qu'il y a le nom des gares de départ et d'arrivée.

Dans un second fichier opendata, la SNCF fournit le nom de ses points de vente ainsi que leurs coordonnées GPS. Elasticsearch est capable de stocker des points géo-point ce qui permet par la suite à Kibana d'afficher des cartes avec des points géographiques.

Il serait intéressant pour nous de pouvoir faire une sorte de jointure entre le fichier des localisations et le fichier des retards. Pour ça, il est possible d'écrire son propre plugin en ruby.

À partir du plugin situé dans le répertoire logstash/conf/conf.d/logstash/filter/localisation.rb ajoutez la configuration au fichier 02-filter.conf pour ajouter la localisation des villes dans les résultats de logstash.

PrécédentPrécédentFin
AccueilAccueilImprimerImprimer Antoine Barbare, 2015 (Contributions : Stéphane Crozat, les étudiants de l'UTC) Paternité - Partage des Conditions Initiales à l'IdentiqueRéalisé avec Scenari (nouvelle fenêtre)