Qu'est-ce qu'OpenSearch ?

OpenSearch, défini

OpenSearch est un moteur de recherche et d’analytique open source utilisé pour indexer, interroger et analyser des données provenant d’une large gamme de sources de données.

Conçu sur Apache Lucene et dérivé à l'origine d' Elasticsearch(un autre Analytics Engine), OpenSearch fournit une architecture évolutive et distribuée pour la recherche en temps réel, l'observabilité, l'analytique et les cas d’utilisation d'analyse de sécurité.

OpenSearch comprend les tableaux de bord OpenSearch pour la visualisation des données et la surveillance des applications. Il propose également un écosystème large de plugins, d' interfaces de programmation d'application (API) et de clients qui prennent en charge les workflows analytiques dans les environnements de données modernes.

Développé comme un projet open source avec une feuille de route définie par la communauté, les Entreprises peuvent utiliser OpenSearch sans restrictions de licence ni enfermement propriétaire. Sa compatibilité avec les versions antérieures d’Elasticsearch — ainsi que son cadre des exigences extensible de plugins — permet aux équipes d’adopter OpenSearch comme Flexible Analytics pour les Workload opérationnelles, les machine learning pipelines et les applications.

Quelles sont les fonctionnalités principales d’OpenSearch ?

Les entreprises d’aujourd’hui génèrent des volumes importants de données qui peuvent être inestimables, mais seulement si les données sont indexées, consultables et disponibles en temps réel. OpenSearch fournit ces fonctionnalités via une architecture de recherche open source conçue dans un souci d'évolutivité, de rentabilité et d'interopérabilité.

En pratique, OpenSearch offre :

Une gouvernance open source

Les entreprises bénéficient d'une visibilité totale sur la base de code et la feuille de route d'OpenSearch, ce qui leur permet de personnaliser la plate-forme pour répondre à leurs besoins internes.

Une compatibilité et une flexibilité de migration

OpenSearch assure la compatibilité des API et de la syntaxe des requêtes avec l'open source Elasticsearch, ce qui signifie que les entreprises peuvent adopter ou moderniser leurs Workload sans avoir à effectuer de nombreuses réécritures.

Une évolutivité et distribution

Son architecture en cluster prend en charge la haute disponibilité via des nœuds, des répliques et des partitions, ce qui permetune recherche à faible latence sur de grands jeu de données (pour plus de détails, voir Comment fonctionne OpenSearch).

La prise en charge de l’observabilité en temps réel

OpenSearch peut ingérer des logs, des indicateurs et des traces à l’échelle, alimentant les tableaux de bord utilisés pour le dépannage et l'analyse.

L'intégration de la sécurité et de l’analytique

Grâce à l’authentification et au contrôle d’accès intégrés, les équipes peuvent appliquer des capacités de recherche à des charges de travail de sécurité.

Un déploiement rentable

En tant que logiciel open source, OpenSearch peut être déployé sur site, auprès de fournisseurs de cloud ou via des offres de services gérés.

Brève histoire d'OpenSearch

OpenSearch a vu le jour en réponse aux modifications apportées aux licences d'Elasticsearch et de Kibana, une couche de visualisation très répandue. Les versions antérieures d'Elasticsearch étaient publiées sous la licence Apache 2.0, mais les versions ultérieures ont adopté la Server Side Public License (SSPL) et la Elastic License. Ces licences restreignent la réutilisation des logiciels open source, ce qui pose des problèmes aux entreprises qui s'appuient sur des logiciels de recherche librement déployables et redistribuables.

Pour préserver un écosystème de recherche ouvert, Amazon Web Services (AWS) a forké (c'est-à-dire créé une copie indépendante) les dernières versions Apache 2.0 d'Elasticsearch et de Kibana, créant ainsi le projet OpenSearch. Le projet a introduit de nouvelles fonctionnalités et améliorations sous un modèle de gouvernance ouvert, et a renforcé la compatibilité avec les API Elasticsearch et les bibliothèques clients afin de simplifier la migration.

Depuis lors, le projet OpenSearch a évolué indépendamment. Il propose une feuille de route axée sur la communauté, des contributions de plusieurs fournisseurs et un écosystème croissant de plugins hébergés sur GitHub. Bien qu'il reste compatible avec de nombreux modèles Elasticsearch, OpenSearch a élargi son ensemble de fonctionnalités avec des plugins pour la recherche vectorielle, la détection d'anomalies et des outils d'observabilité avancés.

OpenSearch est-il la même chose qu’Elasticsearch ?

Bien que les deux projets partagent une origine commune, leurs trajectoires ont divergé. Elasticsearch continue sous SSPL et Elastic License avec une stratégie de développement de fonctionnalités propriétaires. OpenSearch, en revanche, reste sous licence Apache 2.0 et privilégie l'ouverture, l'extensibilité et la visibilité opérationnelle. Par conséquent, les entreprises qui font le choix entre les deux évaluent désormais non seulement les fonctionnalités, mais aussi les modèles de gouvernance, les conditions de licence et l’orientation à long terme de l’écosystème.

La compatibilité continue d'être un lien important entre les projets : OpenSearch prend toujours en charge de nombreuses API Elasticsearch, modèles de requêtes et bibliothèques clientes des versions précédentes, aidant ainsi les équipes à migrer avec un minimum de refactorisation. Elle préserve également des structures de dépôt et des formats d'index similaires, afin de permettre aux utilisateurs qui quittent Elasticsearch de se familiariser.

Comment fonctionne OpenSearch ?

OpenSearch repose sur une architecture distribuée conçue pour être évolutif et performances en temps réel. Ses composants principaux comprennent des clusters, des nœuds, des indices, des shards et des documents, qui fonctionnent ensemble pour magasin et récupérer efficacement les données.

Nœuds

Les nœuds sont des serveurs ou des instances conteneurisées qui effectuent des opérations d’indexation, d’interrogation et de stockage. Les types de nœuds courants incluent :

  • Nœuds principaux : gérez l'état des clusters, coordonnez le placement des partitions et gérez les métadonnées.

  • Nœuds de données : Ils stockent les documents et les fichiers (shards), et exécutent les opérations d'indexation et de recherche.

  • Nœuds clients (de coordination) : Ils acheminent les requêtes de recherche, regroupent les résultats et prennent en charge l'équilibrage de la charge sans stocker de données.

Clusters

 

Un cluster est un ensemble d’un ou plusieurs nœuds qui travaillent ensemble pour gérer les données et exécuter des requêtes. Les clusters offrent de la redondance et un équilibrage de charge afin que les défaillances des nœuds n’affectent pas la performance globale. Chaque cluster conserve des métadonnées sur les index, les fragments et les informations de routage.

Indices

Un index est un espace de noms logique semblable à une table de base de données relationnelle. Il contient des mappings qui définissent la structure des documents JSON et des références aux unités de stockage (shards) qui magasin ces documents. Le terme « index » est également utilisé comme verbe pour décrire l’acte de peupler un index avec des données.

Documents

Les documents sont des objets JSON représentant des enregistrements individuels. En termes simples, il s’agit des données magasin et recherchées. Lorsqu’ils sont indexés, les champs de chaque document sont analysés, tokenisés et stockés dans des indices inversés.

Fragments

Les shards sont les unités de stockage fondamentales d'OpenSearch où vivent les documents. Chaque index se compose de fragments principaux et de répliques optionnelles.

  • Les fragmentaires primaires stockent la copie initiale des données.



  • Les répliques assurent la redondance et augmentent le débit de lecture.

Chaque shard étant une instance autonome de Lucene (une bibliothèque de moteur de recherche autonome), OpenSearch répartit les shards sur plusieurs nœuds afin de paralléliser les opérations de recherche et d'augmenter les performances.

Alors, comment tout cela s’articule-t-il ? Lorsqu’un document est indexé, OpenSearch analyse le contenu et applique des analyseurs de texte et des tokenizeurs. Après traitement, il inscrit les termes dans le fragment approprié.

L’indexation est gérée par les nœuds de données et peut être répartie dans le cluster pour plus de rapidité et de fiabilité. Les requêtes sont ensuite envoyées à un nœud de coordination, qui identifie les partitions contenant les données pertinentes, envoie la requête à ces partitions et agrège les résultats.

Pensez-y comme une cuisine de restaurant avec différentes stations. L’indexation revient à préparer les ingrédients et à les envoyer au bon service pour qu’ils soient prêts dès que la commande arrive. Lorsqu'une requête arrive, le nœud de coordination agit comme un expéditeur : il appelle ce qui est nécessaire, rassemble les contributions de chaque station et livre une assiette finie.

AI Academy

La gestion des données est-elle le secret de l’IA générative ?

Découvrez pourquoi des données de haute qualité sont essentielles pour une utilisation réussie de l’IA générative.

Capacités d'OpenSearch

OpenSearch inclut des fonctionnalités intégrées de recherche, d'analytique et d'observabilité. Les plugins et les extensions étendent les fonctionnalités, ce qui permet aux équipes d'adapter la plateforme à des charges de travail spécifiques.

Fonctionnalités de la plateforme de base

  • Recherche en texte intégral et notation de la pertinence : prend en charge les requêtes d’expressions, le réglage de la pertinence et les filtres à l’aide d’Apache Lucene.

  • Indexation et recherche distribuées : Magasin les données dans des ensembles primaires et répliqués, ce qui permet une indexation parallèle et des requêtes à faible latence.

  • Agrégations et requêtes analytiques : Résumez et analysez les données en temps réel pour la détection des tendances et la surveillance opérationnelle.

  • SQL Query syntax : Interroge les données indexées à l’aide des constructions familières Structured Query Language (SQL) et renvoie les Résultats aux formats JSON ou tabulaires.

  • Langage de traitement par pipeline (PPL) : une syntaxe de type pipeline pour découvrir les journaux, les indicateurs et autres jeux de données opérationnelles.

  • Gestion de l'état des index (ISM) : Automatise les opérations du cycle de vie de l'index, telles que le transfert et la conservation.

  • Data Prepper (ingérer pipelines) : Filtre, enrichit et transforme les données avant de les indexer pour en assurer l'observabilité et la sécurité.

  • Tableaux de bord et visualisation : crée des visualisations, des panneaux opérationnels et des rapports à partir de journaux, d’indicateurs et de traces.

  • Authentification et contrôle d'accès : Contrôle d'accès granulaire aux index, documents et champs grâce à la prise en charge du protocole LDAP (Lightweight Directory Access Protocol), du langage SAML (Security Assertion Markup Language) et d'Active Directory.

  • primitifs d’observabilité : ils fournissent un support intégré pour les données d’observabilité clés utilisées pour surveiller les systèmes distribués.

Fonctionnalités basées sur des plugins

Bien que non exhaustives, ces extensions populaires permettent des analyses avancées, machine learning (ML) et des scénarios d’observabilité :

  • Détection des anomalies : Détecte les schémas inhabituels dans les journaux et les indicateurs à l'aide de l'algorithme Random Cut Forest.

  • k-NN et recherche vectorielle : Prise en charge de la recherche sémantique et de la recherche de similarités, ainsi que des Workload de recommandation à l'aide de techniques de voisinage approximatif le plus proche (k-NN).

  • ML Commons : gère des modèles de machine learning directement dans OpenSearch, pour faciliter la formation et l'inférence.

  • Analyseur de performance : Fournit des indicateurs détaillés de ressources et de performance à travers les clusters, aidant les équipes à optimiser le débit CPU et requêtes.

  • Réplication entre clusters : Réplique les index entre les clusters pour prendre en charge la reprise après sinistre, la redondance et l'isolation de la charge de travail.

  • Analytique des traces : visualise les traces des systèmes distribués et aide les équipes à comprendre les dépendances de service et les chemins de latence.

Les entreprises qui préfèrent une expérience gérée peuvent également utiliser Amazon OpenSearch Service, qui automatise la mise à l’échelle, les sauvegardes, le remplacement des nœuds et la maintenance des clusters OpenSearch sur AWS.

Qu’est-ce qu’un tableau de bord OpenSearch ?

OpenSearch Dashboards est l’interface de visualisation et d’analyse pour OpenSearch. Elle offre un environnement interactif pour explorer les données indexées, construire des visualisations et créer des tableaux de bord opérationnels utilisés dans les flux de travail d’observabilité, d’analyse de sécurité et de surveillance d’applications. Par exemple, les équipes peuvent tirer parti des tableaux de bord pour visualiser les tendances des indicateurs et étudier les anomalies en temps quasi réel.

OpenSearch Tableau de bord permet de créer des graphiques, des tableaux, des cartes, des carnets et des panneaux personnalisés. Il comprend également des fonctionnalités conçues pour rationaliser l'analyse. Les blocs-notes permettent aux utilisateurs de combiner des visualisations et du texte dans un seul récit, tandis que des panneaux opérationnels organisent les visualisations d'observabilité créées avec le Piped Processing Language sur un affichage unifié.

Étant donné qu'OpenSearch tableau de bord partage une interface utilisateur (UI) avec Kibana, de nombreuses équipes de données trouvent le flux de travail familier. Cependant, il est développé selon sa propre feuille de route et comprend des fonctionnalités qui reflètent l'ensemble des fonctionnalités d'OpenSearch.

Cas d’utilisation OpenSearch

OpenSearch prend en charge un large éventail de cas d’utilisation dans divers secteurs, notamment :

  • Analytique des journaux et intelligence opérationnelle
  • Workflows d’observabilité
  • Analytique de sécurité et détection des menaces
  • Applications de moteurs de recherche
  • Visualisation des données et production de rapports
  • Analytique renforcée par machine learning

Log analytique et intelligence opérationnelle

Les équipes indexent les journaux des applications, de l’infrastructure et des services cloud pour analyser les problèmes de performance et résoudre les pannes. OpenSearch prend en charge l'ingérer de gros volumes et l'analytique en temps réel, ce qui le rend adapté aux systèmes de production distribués, tels que les sites multinationaux de commerce électronique.

Workflows d’observabilité

Avec le support des indicateurs, des journaux et des traces, OpenSearch fournit une plateforme d'observabilité intégrée. L'analyse des traces permet de visualiser les interactions entre les services, tandis que l'analyse des applications met en corrélation les données télémétriques afin de comprendre le comportement du système et de repérer les temps de latence ou les défaillances. Les tableaux de bord et les requêtes PPL permettent aux équipes d’enquêter rapidement sur les problèmes et de créer des vues opérationnelles réutilisables.

analytique de sécurité et détection des menaces

Les algorithmes de détection d'anomalies et de ML Commons d'OpenSearch permettent aux Entreprises d'appliquer des techniques de recherche et d'analyse aux Opérations de sécurité. Les équipes l'utilisent pour détecter des schémas inhabituels dans les journaux d'authentification ou le comportement des applications, ainsi que pour déclencher des notifications lorsque des conditions ou des seuils sont remplis.

Applications de moteur de recherche

Les organisations utilisent OpenSearch comme moteur de recherche pour leurs sites web, leurs catalogues de produits et leurs systèmes de contenu d'entreprise. La recherche en texte intégral, l'autocomplétion, la correspondance des phrases et la recherche vectorielle prennent en charge une série de cas d'utilisation liés à l 'expérience utilisateur et à la recommandation.

Visualisation des données et production de rapports

Les tableaux de bord OpenSearch fournissent des visualisations interactives, des rapports et des notes qui aident les équipes à explorer les données, à surveiller les tendances, à suivre les KPI et à partager des informations avec les parties prenantes.

Machine learning–enhanced analytics

Avec ML Commons, les équipes peuvent exécuter des opérations pilotées par modèle à l'intérieur d'OpenSearch, telles que clustering, classification et forecasting. Ces capacités prennent en charge des cas d'utilisation tels que la détection des fraudes, la prédiction de la demande, la segmentation de la clientèle et l'enrichissement des pipelines de données en aval.

Auteurs

Tom Krantz

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

Rendu 3D d'une spirale de plusieurs icônes alignées comme un appareil photo, un bouton de volume et un clipboard
Solutions connexes
IBM watsonx.data Enterprise Search avec l’IA

Obtenez des réponses fiables grâce à des agents IA adaptés au contexte et alimentés par des données gouvernées et connectées, sans enfermement ni changement de plateforme.

Découvrir watsonx.data Enterprise Search avec l’IA
Logiciels et solutions de gestion des données

Élaborez une stratégie de gestion des données qui élimine les silos, réduit la complexité et améliore la qualité des données pour offrir une expérience client et collaborateur exceptionnelle.

Découvrir les solutions de gestion des données
Services de conseil en données et en IA

Réussissez le passage à l’échelle de l’IA avec la bonne stratégie, les données, la sécurité et la gouvernance adaptées.

Découvrir les services de conseil en données et en IA
Passez à l’étape suivante

Fournissez des réponses fiables et contextualisées à travers toute votre entreprise grâce à une IA agentique alimentée par des données métier gouvernées et connectées.

  1. Découvrir watsonx.data Enterprise Search avec l’IA
  2. Découvrir les solutions de gestion des données