AnalytiqueService régional
OpenSearch Service
Permet d’indexer de grands volumes de données pour les rechercher et les analyser
Présentation
- Moteur de recherche et d’analyse issu d’Elasticsearch
- Entièrement managé
- Données stockées sous forme de documents JSON puis indexées
- OpenSearch Dashboards permet d’explorer et de visualiser les données
Cas d’usage
- Recherche textuelle dans un site ou une application
- Analyse de logs et observabilité
- Tableaux de bord en quasi temps réel
- Recherche vectorielle, pour la recherche sémantique ou les applications d’IA générative
Concepts clés
- Index : équivalent d’une table qui regroupe les documents
- Mapping : permet de fixer le type de chaque champ à l’indexation
- Shard : partie d’un index répartie sur des nœuds, chaque shard primaire peut avoir des répliques
Modes de déploiement
| Cluster géré (domaine) | Serverless | |
|---|---|---|
| Capacité | nœuds à dimensionner | ajustée automatiquement |
| Facturation | à l’heure utilisation | à l’OCU (OpenSearch Compute Unit) consommée |
| Réglages | complets | limités |
Ingestion
- OpenSearch Ingestion : pipelines managés
- Data Firehose pour une ingestion depuis Kinesis
- Subscription CloudWatch Logs
- Fonction Lambda
Sécurité
- Accès dans un VPC ou par un point de terminaison public
- Contrôle d’accès fin : par index, par document, par champ
- Chiffrement au repos avec KMS et entre les nœuds
Tarification
- Cluster géré : facturation à l’heure d’utilisation de l’instance et en fonction du stockage
- Serverless : en fonction de l’OCU (OpenSearch Compute Unit, l’unité de calcul) avec un minimum facturé même au repos
Limites à connaître
- OpenSearch n’est pas une base de données principale : il n’y a pas de transaction, ni de garantie d’écriture comparable à une base relationnelle
- Un cluster géré demande du réglage : taille des shards, mémoire des nœuds
- Changer le type d’un champ impose de réindexer