Quelques savoirs Elasticsearch acquis à ElasticCC

La première Elastic Community Conference a eu lieu vendredi dernier. Nous y étions et voici – un peu en vrac – les quelques astuces et fonctionnalités que nous avons découvert ou redécouvert lors des quelques talks auxquels nous avons pu assister (24h de contenu en continu, il a fallu dormir à un moment !).

  • la réponse à la question universelle : « de combien de HEAP / CPU / espace disque ai-je besoin ? » est toujours : « it depends » 😁 ;
  • il y a des utilisateurs d’Elasticsearch qui ajoutent une API GraphQL au dessus du moteur ! Cependant, pour une requête GraphQL, des dizaines de requêtes REST sont nécessaires… La dénormalisation peut régler ce problème si vous avez peu de mises à jour ;
  • les Data Streams sonnent la fin des index « fourre-tout » journaliers avec nos logs, nos métriques… Les index sont abstraits et cachés, les performances meilleures, la gestion du cycle de vie facilitée, et comme c’est basé sur ECS (Elastic Common Schema), les dashboards analytics sont pré-construits ;
  • il vaudrait mieux avoir de nombreux index mais spécialisés, qu’un seul gros index avec plein de documents de topologie diverses. Le stockage sera moins volumineux et mieux optimisé et donc plus performant ;
  • Rally, l’outil de benchmark de la core team, utilisé pour éviter les régressions de performance notamment, est aussi utilisable avec nos propre scénarios. Ça n’a pas l’air si compliqué après avoir vu la démo !
  • par exemple, l’auteur a découvert que le type scaled_float n’est pas plus rapide que double grâce à un test dans Rally (donc autant utiliser double partout) ;
  • la recherche dans les snapshots, une des grandes nouveautés de la version 7.11, n’est pas disponible dans la version gratuite du moteur (cela permet de chercher dans des PETABYTES de backup !) ;
  • lorsque vous utilisez une clause script_score, essayez de lui donner le moins de documents possible en ajoutant un filter : moins de documents = moins de calcul = moins de temps ;
  • quand un cluster est down, la majorité du temps, c’est à cause de l’espace disque qui dépasse le seuil maximum de sécurité – nous avons exactement le même ressenti ! À savoir qu’ajouter de l’espace ne suffit pas, il faut aussi remettre le cluster en « écriture » à la main ;
  • il est recommandé de soigner et surveiller les logs du moteur même quand tout va bien. Laisser des WARNING s’empiler c’est accumuler plein de lignes inutiles qui vont gêner quand il y aura vraiment un problème ;
  • l’outil de « support diagnostic » permet de sortir rapidement l’ensemble des informations d’un cluster, sous forme de JSON pour analyse manuelle ;
  • une offre « Elastic For Startups » va être lancée, offrant des crédits Elastic Cloud à des sociétés sélectionnées ;
  • nous avons pu présenter de nouveau la recherche par emoji 🍕 dans Elasticsearch, et nous en avons même profité pour glisser un emoji drapeau Breton (oui, il « existe » déjà) !

L’ensemble des vidéos sont disponibles sur cette playlist Youtube (ou le seront bientôt).

La conférence a aussi été l’occasion d’annoncer les résultats du Elastic Contributor Program pour 2021, et nous vous en parlons car Damien est Elastic Gold Contributor 2021 !

Cette distinction récompense la somme d’articles, conférences, tutoriels, et autres contributions à la communauté Elasticsearch. Ces contributions nous tiennent à cœur – elles sont la base de notre travail avec l’open-source – et il est agréable de voir qu’Elastic travaille à rendre ce travail plus visible et reconnu !

Nos formations sur le sujet

  • Logo Elasticsearch

    Elasticsearch

    Indexation et recherche avancée, scalable et rapide avec Elasticsearch

blog comments powered by Disqus