Tous les produits
Search
Centre de documentation

Elasticsearch:Using the faster-bulk plug-in

Dernière mise à jour :Aug 09, 2026

Le plug-in faster-bulk agrège les requêtes bulk selon leur taille et un intervalle de temps pour empêcher les écritures par petits lots de bloquer la file d'attente. Il convient aux scénarios à haut débit comportant de nombreux shards d'index. Désactivé par défaut, ce plug-in requiert une activation manuelle. L'agrégation ajoutant de la latence, nous déconseillons son usage dans les scénarios d'écriture exigeant une faible latence.

Remarques sur l'utilisation

Installez le plug-in avant de l'utiliser. Pour plus d'informations, consultez la rubrique Installation ou désinstallation d'un plug-in intégré.

Performances d'écriture

Les données suivantes illustrent les performances du plug-in faster-bulk dans un environnement de test spécifique.

Environnement de test : trois nœuds de données (16 cœurs, 64 Go) et deux nœuds clients indépendants (16 cœurs, 64 Go), utilisant le jeu de données officiel esrally nyc-taxis (650 octets par document), avec le paramètre apack.fasterbulk.combine.interval défini sur 200 ms.

État du translog

Sans le plug-in

Avec le plug-in

Amélioration des performances

Synchrone (par défaut)

182 314/s

226 242/s

23 %

Asynchrone

218 732/s

241 060/s

10 %

Activation de l'agrégation bulk

PUT _cluster/settings
{
   "transient" : {
      "apack.fasterbulk.combine.enabled":"true"
   }
}

Configuration des paramètres d'agrégation

L'écriture des données se déclenche lorsque la taille cumulative des requêtes bulk ou l'intervalle d'agrégation sur un nœud de données atteint le seuil configuré.

PUT _cluster/settings
{
   "transient" : {
      "apack.fasterbulk.combine.flush_threshold_size":"1mb",
      "apack.fasterbulk.combine.interval":"50"
   }
}

Paramètre

Description

Valeur par défaut

apack.fasterbulk.combine.flush_threshold_size

Taille cumulative maximale des requêtes bulk agrégées sur un seul nœud de données.

1mb

apack.fasterbulk.combine.interval

Intervalle de temps maximal pour l'agrégation des requêtes bulk. Unité : ms.

50

Dans les scénarios à forte concurrence avec de grands volumes de données, augmentez la taille d'agrégation ou l'intervalle de temps, dans les limites de la capacité de votre cluster, pour éviter que les requêtes bulk ne bloquent la file d'attente d'écriture.

Routage dirigé

Lors de l'écriture par lot de documents sans valeur de routage ni clé primaire (_id), activez le routage dirigé au niveau du cluster ou de l'index pour améliorer la vitesse d'écriture. Les requêtes d'écriture spécifiant déjà une valeur de routage ou une clé primaire (_id) ne sont pas affectées.

Pour activer le routage dirigé pour un cluster :

PUT _cluster/settings
{
  "persistent" : {
    "index.direct_routing.global.enable" : "true"
  }
}

Pour activer le routage dirigé pour un index spécifique :

PUT <index_name>/_settings
{
  "index.direct_routing.enable" : "true"
}

Désactivation de l'agrégation bulk

PUT _cluster/settings
{
   "transient" : {
      "apack.fasterbulk.combine.enabled":"false"
   }
}