Skip to content

Elasticsearch Plugin

gndcshv edited this page Oct 26, 2021 · 2 revisions

NdBench Elasticsearch Plugin Configuration

NOTE: this documentation describes a feature that is not yet open sourced, but shortly will be!

NDBench configuration is backed by Netflix OSS Archaius2 implementation.


Default configuration prefix - ndbench.config.

Note: Every configuration property has to be prefixed with the configuration prefix mentioned above.

Elasticsearch Plugin common configurations

Config Name Default value Description
es.cluster es_ndbench_test Allows for the discovery of the hosts comprising the Elasticsearch cluster to which requests will be issued, as returned by the getEndpoints() method of any IClusterDiscovery implementation you bind in via Guice. As an alternative you may simply use the hostName property (which will override any setting you define for this property.)
es.hostName localhost Force a particular host to be used when connecting to Elasticsearch (bypassing any IClusterDiscovery implementation you may have wired in via Guice)
es.restClientPort 9200 Force a particular port to be used when connecting to Elasticsearch (bypassing any IClusterDiscovery implementation you may have wired in via Guice.) Note that if you set this property to 443 you must set https to 'true'.
es.https false Whether or not to use https (defaults to using plain http.)
es.indexName ndbench_index Index name to be used for reading and writing from Elasticsearch
es.bulkWriteBatchSize 1000 If 0 then the BULK API will not be used, else if < 0 an error is raised, otherwise this setting determines how many documents to write in a given batch.
es.randomizeStrings false If true then the values of string type fields written to Elasticsearch will be random, and if false the generated values for fields will be formed using a dictionary of generated words starting with a defined prefix. This dictionary would contain entries such as "nflxab", "nflxyb", "nflxbt", etc.

Setting this attribute to false results in Lucene indices that are closer to those that result from indexing documents that contain natural language sentences. Such indices should be more compact than indices resulting from indexing documents which contain completely random strings.

es.documentType default Defines a document type to be used to indexing.
es.indexRollsPerDay 0 Used to determine the name of the index to write to when constructing the REST payload of documents and metadata used in a bulk indexing request. If zero is specified, then no index rolling will occur, and no date pattern will be used in the name of the index, otherwise the number specified determines how many times the index will 'roll' per day. More information on how to set this attribute and its impact on the generated names of indices is available in the Javadoc for this attribute.
Clone this wiki locally