ELK, elasticsearch, logstash, kibana – Exemples de data analysis à l’aide de ELK

Il existe un trio remarquable pour la lecture des fichiers de logs. Triptyque qui rend intuitif et parlant un certain nombre d’informations-clés notamment si vous supervisez des serveurs. Ce trio se nomme elasticsearch, logstash, kibana et est plus connu sous l’acronyme de ELK *.

* ELK qui désigne soit dit en passant aussi un cerf en anglais d’où l’image.

Toutefois, si vous n’avez pas de serveurs à superviser, ce qui est le cas de la plupart d’entre nous, cet outil peut servir à tout à fait autre chose. La preuve nous en donné par le blog d’elasticsearch avec des études de cas assez étonnantes sur l’utilisation de cet ensemble ELK pour l’analyse de données (data analysis).
C’est en substance ce que propose deux des démonstrations suivantes :

  1. Using Elastic Stack to Analyze NYPD Motor Vehicle Collision Data
    https://www.elastic.co/blog/byodemos-new-york-city-traffic-incidents
  2. Kibana 4 & Civic Hacking: Investigating Campaign Contributions
    https://www.elastic.co/blog/kibana-4-and-civic-hacking-investigating-campaign-contributions

Pour chacune de ces démonstrations, il existe un dépôt git qui fournit la totalité du code.

L’installation de l’ensemble est un peu fastidieux mais cela peut fournir des informations et des rapprochements étonnants pour traiter une très grand nombre d’information. C’est un outil vraiment puissant dans ce que l’on nomme désormais le data-journalisme, qui s’apparente à tout ce qui est relatif à la data intelligence comme le vante Cambridge Analytica, grand ordonnateur de la victoire de Donald Trump !

Le plus court chemin pour installer kibana, elasticsearch et consorts, c’est de passer par homebrew.

Il est nécessaire d’avoir des instances d’elasticsearch et de kibana en fonctionnement.

Installer elasticsearch

Voilà dans le désordre quelques commandes utiles pour l’installation d’ elasticsearch.

# installation d'elasticsearch à l'aide de homebrew
brew -v
brew doctor
brew update
brew install elasticsearch

Pour lancer ensuite elasticsearch dans un onglet de la console

elasticsearch

ELK, elasticsearch, logstash, kibana - Exemples de data analysis à l'aide de ELK

Installer kibana

L’installation de kibana est indiqué sur la page de démarrage, le plus simple est de télécharger puis de décompresser l’archive kibana

# installation de kibana
shasum kibana-5.1.1-darwin-x86_64.tar.gz 
tar -xzf kibana-5.1.1-darwin-x86_64.tar.gz

Démarrer kibana depuis un répertoire nommé kibana_dashboard

cd [chemin-d-installation-vers-le-répertoire]/kibana_dashboard/
cd kibana/

Une fois, lancer elasticsearch dans un onglet de la console, il vous faudra aussi lancer kibana dans un autre onglet de la console.

./bin/kibana

Vous devriez pouvoir lancer un navigateur et voir elasticsearch et kibana.

Pour elasticsearch

localhost:9200 in web browser -- should return status code 200

Pour Kibana

localhost:5601 in web browser -- should display Kibana UI.

Analyse des données de contribution de la FEC (Federal Election Commission)

Voilà en substance ce que le tableau de bord que vous devez obtenir.

A l’aide de ce dashboard et des informations ainsi mis en forme, l’article concentre son analyse d’une part sur le phénomène des Super PAC, que personne ne peut désormais ignorer tant leur influence a été grande et souterraine dans la dernière campagne présidentielle américaine et d’autre part sur la possibilité de voir qui sont les riches donateurs dans de nombreuses villes américaines. L’auteur de l’article est d’Hoboken, New Jersey, connu aussi pour être la ville de Franck Sinatra !

ELK, elasticsearch, logstash, kibana - Exemples de data analysis à l'aide de ELK
Source : https://www.elastic.co/blog/kibana-4-and-civic-hacking-investigating-campaign-contributions

Certes, son analyse n’est sans doute pas ultra pertinente d’un point de vue politique, pour sa défense l’auteur Peter Kim est un ingénieur dont la fonction est avant tout de promouvoir l’utilisation d’elasticsearch.
Une leçon à retenir néanmoins de cette exercice, c’est l’incroyable usage qui peut-être fait de ELK pour l’analyse d’un grand volume de données que celles-ci soient structurés ou déstructurées ou les deux.

En conclusion, si vous souhaitez tirer un certain nombre d’indicateurs sur un grand volume de données mieux vaut s’équiper de ELK. A ce propos, les gens de Cambridge Analytica qui ont oeuvrés pour l’élection de Trump l’ont d’ailleurs bien compris, rien qu’à voir le produit “Cambridge Analytica’s Data Dashboard”, séduisant en diable.

ELK, elasticsearch, logstash, kibana - Exemples de data analysis à l'aide de ELK
Source : https://cambridgeanalytica.org/datadashboard

En savoir plus