web-dev-qa-db-fra.com

comment décider de la mémoire requise pour mon serveur elasticsearch

j'ai un scénario ici,

La base de données elasticsearch avec environ 1,4 TB de données ayant,

 _shards": {
     "total": 202,
     "successful": 101,
     "failed": 0
}

Chaque taille d'index est d'environ 3 Go à 30 Go. Dans un avenir proche, la taille de fichier devrait être de 30 Go par jour.

Informations sur le système d'exploitation:

 NAME="Red Hat Enterprise Linux Server"
 VERSION="7.2 (Maipo)"
 ID="rhel"
 ID_LIKE="Fedora"
 VERSION_ID="7.2"
 PRETTY_NAME="Red Hat Enterprise Linux Server 7.2 (Maipo)"

Le système dispose de 32 Go de RAM et le système de fichiers est de 2 To (1,4 To utilisé). J'ai configuré un maximum de 15 Go pour le serveur elasticsearch. Mais cela ne me suffit pas pour interroger cette base de données. Le serveur se bloque pour une requête unique sur le serveur. 

Je vais inclure 1 To sur le système de fichiers de ce serveur afin que la taille totale disponible du système de fichiers soit de 3 To ..__ également. Je compte augmenter la mémoire à 128 Go, ce qui est une estimation approximative. 

Quelqu'un pourrait-il m'aider à calculer comment déterminer le minimum RAM requis pour que le serveur réponde à au moins 50 demandes simultanément?

Nous vous serions reconnaissants de suggérer n’importe quel outil/formule pour analyser cette exigence. il vous sera également utile de me donner un autre scénario avec des chiffres afin que je puisse l'utiliser pour déterminer mes besoins en ressources. 

6
siva

Vous devrez faire appel à plusieurs nœuds pour rester efficace. Elasticsearch a sa limite idéale de mémoire par nœud à 64 Go dont 32 Go réservés à ES. 

https://www.elastic.co/guide/fr/elasticsearch/guide/current/hardware.html#_memory pour plus de détails. Le livre est une très bonne lecture si vous utilisez Elasticsearch pour des choses sérieuses

1
Christian Hubinger