~schnouki/aperoweb-es

Ma présentation sur ElasticSearch à l'Apéro Web Nancy du 25 septembre 2014 : slides, jeu de données et démos
48eab06d — Thomas Jost 9 years ago
Commit initial

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~schnouki/aperoweb-es
read/write
git@git.sr.ht:~schnouki/aperoweb-es

You can also use your local clone with git send-email.

#Démo ElasticSearch à l'Apéro Web Nancy 25/09/2014

Dans ce dossier, vous trouverez…

  • le jeu de données de démo dans le dossier dataset
  • les slides (reveal.js) dans le dossier slides
  • des scripts pour créer le jeu de données en utilisant les API Google Places et BreweryDB: fetch_bars.py, fetch_brasseries.py et fetch_bieres.py
  • un script pour indexer le jeu de données dans ElasticSearch : dataset_to_elasticsearch.py

#Indexation

Pour lancer l'indexation :

  • installez ElasticSearch

  • installez le plugin ICU pour ElasticSearch :

      $ bin/plugin -install elasticsearch/elasticsearch-analysis-icu/2.3.0
    

    (Le chemin vers l'exécutable "plugin" dépend de votre OS et distribution, et la version du plugin à installer dépend de votre version d'ES : 2.3.0 pour ES 1.3. Pour plus d'informations, consultez la page GitHub de l'analyseur ICU).

  • redémarrez ElasticSearch (obligatoire après avoir installé des plugins ES !)

  • créez un virtualenv (Python 2) et activez-le :

      $ virtualenv2 /path/to/my/venv
      $ source /path/to/my/venv/bin/activate
    
  • installez les dépéndances :

      $ git submodule init && git submodule update
      $ pip install -r requirements.txt`
    
  • lancez le script d'indexation :

      $ ./dataset_to_elasticsearch.py
    

#Démos

La liste des démos, avec une description (très) sommaire, est include dans le fichier liste-demos.txt (je sais, c'est super original). Les fichiers eux-mêmes (requêtes sous forme de dictionnaires JSON) sont dans le dossier demos, et pour les lancer et les afficher correctement le plus simple est d'utiliser le script demo. C'est un script zsh qui utilise httpie, une alternative user-friendly à cURL qui est particulièrement pratique pour travailler avec des API REST et du JSON.

httpie est inclus dans le requirements.txt, donc si vous avez suivi la procédure d'indexation de la partie précédente, il devrait être accessible depuis le virtualenv.

Pour lancer les démos, utilisez simplement ./demo 01.

#Dataset

Si vous voulez recréer le dataset, il faudra d'abord vous créer des clefs d'API Google Places et BreweryDB. Ajoutez ensuite ces clefs dans les fichiers correspondants :

  • Google Places: fetch_bars.py
  • BreweryDB: fetch_bieres.py et fetch_brasseries.py

Vous pouvez ensuite lancer les scripts (dans le virtualenv).

#Contact

Si vous avez des questions, n'hésitez pas à me contacter par mail ou sur Twitter (@Schnouki).

Si Findspire vous intéresse, contactez-moi sur mon adresse pro ;)