LindormSearch est un moteur de recherche distribué reposant sur un cluster multi-nœuds. Avant l'achat, évaluez la configuration de stockage, le nombre de nœuds et les shards requis par votre charge de travail.
Estimer la capacité de stockage
Les facteurs suivants déterminent l'espace de stockage nécessaire pour votre cluster :
| Facteur | Valeur | Explication |
|---|---|---|
| Répliques | 0 (par défaut) ou 1 | LindormSearch utilise un stockage partagé distribué. En cas de panne d'un nœud, les données migrent automatiquement vers d'autres nœuds. Définissez le nombre de répliques à 1 uniquement si votre charge de travail exige une fiabilité élevée. |
| Surcoût des index | ~20 % | Les index augmentent généralement le volume des données source de 20 %. |
| Frais généraux internes | 20 % | Réservés à l'enregistrement des journaux de transaction et à la compaction. |
| Réserve du système d'exploitation | 5 % | Espace réservé par défaut par le système d'exploitation. |
| Marge de sécurité | 20 % | Garantit la stabilité du cluster. Une alerte est envoyée automatiquement lorsque l'utilisation du stockage atteint 80 %. |
Ces facteurs se combinent dans la formule suivante :
Required storage = source data size × 1.9
Choisir le nombre de nœuds et leurs spécifications
Déployez au moins deux nœuds pour éliminer les points de défaillance uniques.
Privilégiez des nœuds aux spécifications élevées (16 cœurs CPU, 64 Go de mémoire) plutôt que d'ajouter davantage de nœuds aux spécifications inférieures. Un nombre réduit de nœuds plus puissants améliore à la fois les performances et la stabilité du cluster.
Après avoir exécuté un test de charge avec des données réelles, vérifiez si les nœuds répondent à vos besoins.
Si le test révèle une capacité de calcul insuffisante, effectuez d'abord un scale up (montée en puissance verticale), par exemple en passant de 4 cœurs CPU et 16 Go de mémoire à 8 cœurs CPU et 32 Go de mémoire. Envisagez le scale out (ajout de nœuds) uniquement après avoir atteint les limites du scale up.
Configurer les shards
Chaque index est divisé en shards. Lors de l'écriture des données, LindormSearch utilise un algorithme de hachage pour répartir les documents entre les shards en fonction des ID de document.
Maintenez la taille de chaque shard entre 20 Go et 50 Go.
Définissez le nombre total de shards comme un multiple entier du nombre de nœuds. Par exemple, avec deux nœuds, définissez le nombre de shards à 2.
Gérer les données de séries temporelles
Pour les données comportant un attribut temporel, telles que les journaux ou les commandes, utilisez la fonctionnalité d'alias. L'alias génère continuellement de nouveaux index et supprime périodiquement les anciens, ce qui permet de maintenir un espace de stockage prévisible et limité. Pour plus de détails, consultez Utiliser le sharding (alias).