RousselTMLEARNING

Article · OpenSearch : de la découverte à l'expertise

OpenSearch : concepts et différences avec Elasticsearch

1. OpenSearch en bref #

Un moteur de recherche et d'analyse open source.

Présentation #

OpenSearch est un moteur de recherche et d'analyse distribué, construit sur Apache Lucene, et sa console OpenSearch Dashboards. Il sert à la recherche applicative, à l'analyse de logs, à l'observabilité, à la sécurité et, de plus en plus, à la recherche vectorielle. Tous ses composants sont publiés sous licence Apache 2.0.

Son histoire avec Elasticsearch #

En 2021, Elastic a quitté la licence Apache 2.0 pour Elasticsearch et Kibana. AWS et des contributeurs ont alors créé OpenSearch à partir des dernières versions sous Apache 2.0 (7.10). Depuis 2024, le projet est hébergé par l'OpenSearch Software Foundation, au sein de la Linux Foundation. Elastic a de son côté ajouté une option AGPL à ses licences en 2024.

PointOpenSearchElasticsearch
LicenceApache 2.0Elastic License, SSPL ou AGPL selon le choix
Sécurité, alerting, ISMPlugins inclusSelon l’abonnement
Cycle de vie des indexISM (_plugins/_ism)ILM
LangagesDSL, SQL, PPLDSL, SQL, ES|QL
ConsoleOpenSearch DashboardsKibana
Les deux projets ont divergé. Les concepts et une grande partie de l'API restent communs, mais ne supposez pas la compatibilité d'une configuration, d'un client ou d'un plugin : vérifiez. Certains clients officiels Elasticsearch refusent de se connecter à OpenSearch ; utilisez les clients OpenSearch.

2. Les concepts #

Index, shards et répliques.

Le vocabulaire #

ConceptSens
DocumentUn objet JSON
IndexUne collection de documents
ShardUn morceau d’index, qui est un index Lucene
Primaire / répliqueL’original et sa copie
MappingLe type de chaque champ
Cluster managerNœud gérant l’état du cluster : l’ancien « master »

Le cluster #

Un cluster OpenSearch avec ses shards et répliques
Le nombre de primaires se fixe à la création de l'index ; celui des répliques se change à tout moment.
ÉtatSensQue faire ?
greenTous les shards sont assignésRien
yellowDes répliques ne sont pas assignéesNormal avec un seul nœud ; sinon, ajouter un nœud
redDes primaires manquentUrgence : des données sont indisponibles

3. Les composants #

Ce qui entoure le moteur.

L'écosystème #

ComposantRôle
OpenSearch DashboardsExploration, visualisations, administration
Data PrepperCollecte et transformation, recommandé pour l’ingestion
Plugins inclusSecurity, Alerting, Index Management, SQL/PPL, k-NN, Observability, Anomaly Detection…

L'archive officielle 3.9 embarque ces plugins et son propre JDK ; vous pouvez les lister avec GET _cat/plugins.

📄 OpenSearch : concepts, architecture et différences avec Elasticsearch →

Mon suivi

  • ⏱ Durée estimée : ≈ 3 min

Connectez-vous pour suivre votre progression et prendre des notes. Se connecter

💬 Poser une question

Articles recommandés

Alimenter OpenSearch : pipelines d'ingestion et Data Prepper

Transformer les données avec les pipelines d'ingestion, collecter avec Data Prepper, recevoir l'O...

Architecture distribuée Elasticsearch : rôles des nœuds, shards, répliques et allocation

Comprendre le fonctionnement distribué d'Elasticsearch : rôles des nœuds, nœuds master et quorum,...

OpenSearch en production : ISM, sauvegardes, sécurité et bonnes pratiques

Automatiser le cycle de vie avec ISM, sauvegarder par snapshots, gérer les rôles et dimensionner ...

OpenSearch Dashboards, alertes et observabilité

Explorer ses données dans OpenSearch Dashboards, créer des moniteurs d'alerte et découvrir Trace ...

Performance et capacity planning Elasticsearch : shards, heap, indexation et benchmarks

Dimensionner et optimiser Elasticsearch : taille et nombre de shards, heap JVM, caches, réglages ...

Installer OpenSearch et OpenSearch Dashboards

Installer OpenSearch avec Docker Compose ou l'archive : mot de passe initial, vm.max_map_count, c...

Monitoring et troubleshooting Elasticsearch : santé, shards non assignés, JVM, hot threads et slow logs

Diagnostiquer un cluster Elasticsearch : cluster health et CAT APIs, shards non assignés et alloc...

Indexer et chercher dans OpenSearch : mapping, DSL, PPL et SQL

Déclarer un modèle d'index, indexer avec bulk, chercher avec le Query DSL, agréger et interroger ...

Bonnes pratiques Elasticsearch : mappings, shards, cycle de vie et exploitation

Bonnes pratiques Elasticsearch : dimensionnement des shards, mappings explicites, templates, ILM,...

Soutenir

♥ SOUTENIR

Soutenez RousselTM Learning

Les formations, articles, TP et attestations restent gratuits et sans publicité intrusive. Une contribution libre, du montant de votre choix, finance l’hébergement, les environnements de TP et l’écriture de nouveaux contenus.

Contribuer avec PayPal Montant libre · carte bancaire ou compte PayPalEn savoir plus
QR code PayPal
Ou scannez ce QR code avec votre téléphone

Merci, chaque contribution compte !