Concepts Elasticsearch de base

Concepts Elasticsearch de base
Les caractéristiques générales de Elasticsearch sont les suivantes:
  • Elasticsearch est évolutif jusqu'à pétaoctets de données structurées et non-structurées.
  • Elasticsearch peut être utilisé comme un remplacement de magasins de documents comme MongoDB et RavenDB.
  • Elasticsearch utilise la dénormalisation pour améliorer les performances de recherche.
  • Elasticsearch est l'un des moteurs de recherche d'entreprise populaires, qui est actuellement utilisé par de nombreuses grandes organisations comme Wikipedia, le Guardian, StackOverflow, GitHub, etc
  • Elasticsearch est open source et disponible sous la licence Apache version 2,0.
Les concepts clés de Elasticsearch sont les suivants:
  • Node − il fait référence à une instance en cours d'exécution unique de Elasticsearch. Un serveur physique et virtuel unique héberge plusieurs nœuds en fonction des capacités de leurs ressources physiques comme la RAM, le stockage et la puissance de traitement.
  • Cluster − il s'agit d'une collection d'un ou plusieurs nœuds. Cluster fournit des fonctionnalités d'indexation et de recherche collectives sur tous les nœuds pour des données complètes.
  • Index − il s'agit d'une collection de différents types de documents et de propriétés de document. Index utilise également le concept de tessons pour améliorer la performance. Par exemple, un ensemble de documents contient des données d'une application de réseautage social.
  • Type/mappage − il s'agit d'une collection de documents partageant un ensemble de champs communs présents dans le même index. Par exemple, un index contient des données d'une application de réseau social, puis il peut y avoir un type spécifique pour les données de profil utilisateur, un autre type pour les données de messagerie et un autre pour les données de commentaires.
  • Document − il s'agit d'une collection de champs d'une manière spécifique définie au format JSON. Chaque document appartient à un type et réside à l'intérieur d'un index. Chaque document est associé à un identificateur unique, appelé uid.
  • Les index-fragments sont divisés horizontalement en éclats. Cela signifie que chaque fragment contient toutes les propriétés du document, mais contient moins de nombre d'objets JSON que l'index. La séparation horizontale fait éclater un noeud indépendant, qui peut être stocké dans n'importe quel noeud. L'éclat primaire est la partie horizontale d'origine d'un index, puis ces fragments primaires sont répliqués dans des fragments de réplica.
  • Les réplicas − Elasticsearch permet à un utilisateur de créer des répliques de leurs index et fragments. La réplication permet non seulement d'augmenter la disponibilité des données en cas d'échec, mais aussi d'améliorer les performances de la recherche en effectuant une opération de recherche parallèle dans ces réplicas.
Avantages Elasticsearch:
  • Elasticsearch est développé sur Java, ce qui le rend compatible sur presque toutes les plates-formes.
  • Elasticsearch est en temps réel, en d'autres termes après une seconde, le document ajouté est consultable dans ce moteur.
  • Elasticsearch est distribué, ce qui le rend facile à mettre à l'échelle et à s'intégrer dans n'importe quelle grande organisation.
  • La création de sauvegardes complètes est facile en utilisant le concept de Gateway, qui est présent dans Elasticsearch.
  • Manutention multi-location est très facile dans Elasticsearch par rapport à Apache SOLR.
  • Elasticsearch utilise des objets JSON en tant que réponses, ce qui permet d'invoquer le serveur Elasticsearch avec un grand nombre de langages de programmation différents.
  • Elasticsearch prend en charge presque tous les types de documents, sauf ceux qui ne prennent pas en charge le rendu de texte.
Elasticsearch inconvénients:
  • Elasticsearch n'a pas de prise en charge multilingue en termes de traitement des demandes et des données de réponse (seulement possible dans JSON) contrairement à Apache SOLR, où il est possible dans les formats CSV, XML et JSON.
  • Elasticsearch également un problème de situations cérébrales fractionnées, mais dans de rares cas.