Package org.elasticsearch.action.bulk
Class BulkProcessor.Builder
- java.lang.Object
-
- org.elasticsearch.action.bulk.BulkProcessor.Builder
-
- Enclosing class:
- BulkProcessor
public static class BulkProcessor.Builder extends java.lang.ObjectA builder used to create a build an instance of a bulk processor.
-
-
Method Summary
Modifier and Type Method Description BulkProcessorbuild()Builds a new bulk processor.BulkProcessor.BuildersetBackoffPolicy(BackoffPolicy backoffPolicy)Sets a custom backoff policy.BulkProcessor.BuildersetBulkActions(int bulkActions)Sets when to flush a new bulk request based on the number of actions currently added.BulkProcessor.BuildersetBulkSize(ByteSizeValue bulkSize)Sets when to flush a new bulk request based on the size of actions currently added.BulkProcessor.BuildersetConcurrentRequests(int concurrentRequests)Sets the number of concurrent requests allowed to be executed.BulkProcessor.BuildersetFlushInterval(TimeValue flushInterval)Sets a flush interval flushing *any* bulk actions pending if the interval passes.BulkProcessor.BuildersetGlobalIndex(java.lang.String globalIndex)BulkProcessor.BuildersetGlobalPipeline(java.lang.String globalPipeline)BulkProcessor.BuildersetGlobalRouting(java.lang.String globalRouting)BulkProcessor.BuildersetGlobalType(java.lang.String globalType)
-
-
-
Method Detail
-
setConcurrentRequests
public BulkProcessor.Builder setConcurrentRequests(int concurrentRequests)
Sets the number of concurrent requests allowed to be executed. A value of 0 means that only a single request will be allowed to be executed. A value of 1 means 1 concurrent request is allowed to be executed while accumulating new bulk requests. Defaults to1.
-
setBulkActions
public BulkProcessor.Builder setBulkActions(int bulkActions)
Sets when to flush a new bulk request based on the number of actions currently added. Defaults to1000. Can be set to-1to disable it.
-
setBulkSize
public BulkProcessor.Builder setBulkSize(ByteSizeValue bulkSize)
Sets when to flush a new bulk request based on the size of actions currently added. Defaults to5mb. Can be set to-1to disable it.
-
setFlushInterval
public BulkProcessor.Builder setFlushInterval(TimeValue flushInterval)
Sets a flush interval flushing *any* bulk actions pending if the interval passes. Defaults to not set.Note, both
setBulkActions(int)andsetBulkSize(org.elasticsearch.common.unit.ByteSizeValue)can be set to-1with the flush interval set allowing for complete async processing of bulk actions.
-
setGlobalIndex
public BulkProcessor.Builder setGlobalIndex(java.lang.String globalIndex)
-
setGlobalType
public BulkProcessor.Builder setGlobalType(java.lang.String globalType)
-
setGlobalRouting
public BulkProcessor.Builder setGlobalRouting(java.lang.String globalRouting)
-
setGlobalPipeline
public BulkProcessor.Builder setGlobalPipeline(java.lang.String globalPipeline)
-
setBackoffPolicy
public BulkProcessor.Builder setBackoffPolicy(BackoffPolicy backoffPolicy)
Sets a custom backoff policy. The backoff policy defines how the bulk processor should handle retries of bulk requests internally in case they have failed due to resource constraints (i.e. a thread pool was full). The default is to back off exponentially.- See Also:
BackoffPolicy.exponentialBackoff()
-
build
public BulkProcessor build()
Builds a new bulk processor.
-
-