Introduction aux moteurs de recherche
- Généralités (Besoins, usages, fonctionalités clefs des moteurs de recherche)
- Processus de mise en oeuvre d'un moteur de recherche
- Panorama des solutions de recherche Open Source
Premiers pas avec Elasticsearch
- Principes de fonctionnement en cluster
- Notions de node, d'index, de partitionnement, de document…
- Installation
- Configuration
- Vue générale de l'API REST
- Première indexation
- Première recherche
Indexation de documents
- Conception de l'index et de ses documents
- Indexer ou supprimer des documents avec l'API Rest
- Indexation en masse
- Version et gestion optimiste de la concurrence
- Présentation du stockage Lucene et refresh
- Autres fonctionalités (routing, consistency, document enfant, ...)
Mapping
- Définition et rôle du mapping
- Types de champs
- Champs prédéfinis
- Méta données d'un Index
Analyse et extraction de texte
- La base de l'extraction et analyse de texte
- Analyzers
- Char filters
- Tokenizers
- Token Filters
- Configuration et utilisation des Analyzers prédéfinis ou customisés
- API de verification de l'analyse de texte
- Cas d'utilisation
- Suppression de mots
- Extraction d'adresses email et d'urls
- Suppression de balises HTML dans du texte
- Analyse de texte en plusieurs langues
- Racinisation
Recherche de documents
- Rechercher des documents avec l'API Rest
- Gestion des résultats
- Les requêtes de recherche
- Requête de type match_all
- Requête de type query_string/simple_query_string
- Requête de type match (et dérivées)
- Requête de type term et terms
- Requête de type wildcard
- Requête de type range
- Requête de type fuzzy
- Requête de type bool
- Requête de type exist/missing
- Requête de type and, or et not
- Requête de type _type et _id
- Différentier requêtes et filtres
- Avantages des filtres
Fonctionnalités avancées de recherche
- Gestion de la pertinence et du score
- Suggestions
- Autocomplétion
- Highlighting
- Recherche Objets / Nested / Parent-Enfant
- More Like This
- Recherche géospatiale
Clients et API Java
- Types de clients disponibles
- Utilisation de l'API Java
- Indexer et recherche des documents
- Gérer les index
- Gérer les mappings
- Intégrer elasticsearch dans une application Java (embarqué, noeud client, transport client)
Cloud et Clusterisation
- Principe de fonctionnement d'un cluster elasticsearch
- Prévenir les split brains
- Configurer un cluster elasticsearch
- Partitionnement et scalabilité et volumétrie de données
- Supervision d'un cluster elasticsearch :
- l'API health
- l'API state
- l'API stats
- l'API pending_task
- l'API _nodes alias node info
- l'API hot_threads
- plugins de supervision
- logs
- l'API _cat
- Sauvegarder et restaurer un cluster elasticsearch
Fonctionnalités avancées
- Autres types de plugins elasticsearch
- Scripting
- Pré-chauffer son cluster
- La percolation