本文介绍: 在发送批量动作前,BulkProcessor先缓存,再刷新。缓存刷新的间隔,支持基于Action数量、基于Action大小、基于时间间隔3种策略。不论Action个数或Action大小如何设置,到刷新间隔了,就会刷新缓冲,发起Bulk请求。延迟重试策略: 默认启用指数级间隔重试策略,初始等待50ms,8次重试。如需自定义延迟重试策略,可通过以下参数配置。: 延迟重试类型,CONSTANT(固定间隔)或EXPONENTIAL(指数级间隔)。每个Bulk请求,最大缓冲的Action大小。: 延迟重试是否启用。
ElasticsearchSink内部使用BulkProcessor一次将一批动作(ActionRequest)发送到ES集群。在发送批量动作前,BulkProcessor先缓存,再刷新。缓存刷新的间隔,支持基于Action数量、基于Action大小、基于时间间隔3种策略。BulkProcessor支持在同一次Bulk中有多种ActionRequest(如: IndexRequest、DeleteRequest、UpdateRequest)等等。
bulk.flush.max.actions: 默认1000。每个Bulk请求,最大缓冲Action个数。
bulk.flush.max.size.mb: 默认5mb。每个Bulk请求,最大缓冲的Action大小。
bulk.flush.interval.ms: 默认为空,单位毫秒。Bulk刷新间隔。不论Action个数或Action大小如何设置,到刷新间隔了,就会刷新缓冲,发起Bulk请求。
延迟重试策略: 默认启用指数级间隔重试策略,初始等待50ms,8次重试。如需自定义延迟重试策略,可通过以下参数配置。
bulk.flush.backoff.enable: 延迟重试是否启用。
bulk.flush.backoff.type: 延迟重试类型,CONSTANT(固定间隔)或EXPONENTIAL(指数级间隔)。
bulk.flush.backoff.delay: 延迟重试间隔。对于CONSTANT类型,此值为每次重试间的间隔;对于EXPONENTIAL,此值为初始延迟。
bulk.flush.backoff.retries: 延迟重试次数。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。