Big Data Analytics 4ERP-BI/4DS
Workshop ElasticSearch-Kibana
I. Objectifs
L’objectif de ce workshop consiste à permettre l’apprenant d’explorer les outils ElasticSearch
et Kibana pour stocker les données et visualiser les résultats d’analyses réalisés.
II. Scénario 1 : Données d’une Banque
Dans ce scénario, on se focalise sur les données dans les fichiers [Link]
1. Chargement des données
Les données dans le fichier [Link] sont organisées selon le schéma suivant :
{
"account_number": INT,
"balance": INT,
"firstname": "String",
"lastname": "String",
"age": INT,
"gender": "M or F",
"address": "String",
"employer": "String",
"email": "String",
"city": "String",
"state": "String"
}
Créer l’index bank :
1
2022-2023
Big Data Analytics 4ERP-BI/4DS
2. Vérification avec kibana :
Pour vérifier, on doit lister le contenu de l’index bank.
GET /bank/_doc/_search?pretty
On peut effectuer une recherche sur ce type, par exemple, on affiche les comptes des utilisateurs
dont l’age est 33.
GET /bank/_search
{
"query":{
"match":{"age":"33"} }}
3. Exploration des données :
Pour explorer les données, nous allons utiliser les fonctionnalités offertes par Kibana sous
l’onglet « Discover ».
Nous souhaitons par exemple, afficher les personnes dont le numéro de compte est inférieur à
100 et la balance est supérieure à 47500. Pour ce faire, on doit sélectionner l’index pattern
« bank » et introduire la requête suivante :
account_number >= 100 and account_number <= 47500
2
2022-2023
Big Data Analytics 4ERP-BI/4DS
Par défaut, tous les champs sont affichés, pour choisir des champs spécifiques, on peut les
sélectionner parmi la liste « Available Fields » .
4. Visualisation des données
Notre objectif maintenant est de créer un pie chart qui permet de visualiser le nombre de clients
par balance. Pour ce faire, on doit aller à l’onglet « Visualize Library» et cliquer sur le bouton
« create new visualization » puis choisir « Aggregation based » et cliquer sur « Pie »
- Choisir la source « bank »
- Dans le volet « buckets », cliquer sur « Split Slices » et dans Agregation, choisir
« Range »
- Sélectionner « balance » pour le champ « Filed »
- Définir les intervalles suivants :
3
2022-2023
Big Data Analytics 4ERP-BI/4DS
- On enregistre cette visualisation en l’attribuant le nom « PieExample »
III. Scénario 2 : Données d’un fichier log
Dans ce scénario, on se focalise sur les données dans les fichiers [Link]
1. Chargement des données
Le schéma des données logs comporte des dizaines de champs différents, mais les principaux
utilisés dans ce workshop sont les suivants:
{
"memory": INT,
"[Link]": "geo_point"
"@timestamp": "date"
...
}
On va charger les données à partir du fichier [Link] dans l’index logstash :
4
2022-2023
Big Data Analytics 4ERP-BI/4DS
2. Vérification avec kibana :
GET _cat/indices?v
GET /logstash/_search?pretty
Pour explorer les données, nous allons utiliser les fonctionnalités offertes par Kibana sous
l’onglet « Discover ».
Cliquer sur le nom de l’index qu’on vient de créer.
Vu qu’on a un champ timestamp dans le fichier [Link], nous devons définir les dates à
visualiser :
3. Visualisation des données
Maintenant on souhaite créer un map chart qui permet de visualiser les informations
géographiques dans les fichiers log.
Pour pouvoir faire des analyses des données log selon l’axe loclisation, le type du champ
[Link] doit être geo_point.
Pour ce faire, cliquer sur « Stack Management » sous le volet «Management», puis sur «data
views» sous le volet « kibana ». Choisir l’index logstash.
Cliquer sur le bouton add fields.
Ajouter une colonne dont le nom est [Link] et le type [Link].
5
2022-2023
Big Data Analytics 4ERP-BI/4DS
Par la suite :
- Dans le volet « visualise library », choisir la visualisation « Map »
- Cliquer sur « add layer » et choisir « Documents »
- Pour l’index pattern, choisir l’index logstash et il va detecter automatiquement le champ
qui contient les positions geographiques avec le type [Link].
Le resultat est le suivant :
6
2022-2023
Big Data Analytics 4ERP-BI/4DS
- On enregistre cette visualisation dans le dashbord ‘MyDashbord’ sous le nom
« MapExample »
IV. Travail à rendre :
On se focalise dans ce scénario sur le fichier [Link] qui contient la liste des
réalisations de William Shakespeare.
Les données du fichier [Link] sont structuré selon le schéma suivant :
{
"line_id": INT,
"play_name": "String",
"speech_number": INT,
"line_number": "String",
"speaker": "String",
"text_entry": "String",
}
1. On vous demande d’indexer les données du fichier [Link] dans ElasticSearch
2. Créer un dashboard dans Kibana, qui permet d’afficher le nombre de réalisation
(play_name) pour chaque speaker. (Choisissez Vertical bar chart pour la visualisation)
7
2022-2023