【问题标题】:What is the priority of bulk flush actions in Flink's Elasticsearch sink?Flink 的 Elasticsearch sink 中批量刷新操作的优先级是什么?
【发布时间】:2020-09-15 05:55:28
【问题描述】:

我正在关注this 在 Flink 应用程序中创建一个 Elasticsearch 接收器。如果我提供所有值,我想了解什么是优先级

int FLUSH_MAX_ACTIONS = 10_000;
long FLUSH_INTERVAL_MILLIS = 1_000;
int FLUSH_MAX_SIZE_MB = 1;

esSinkBuilder.setBulkFlushMaxActions(FLUSH_MAX_ACTIONS);
esSinkBuilder.setBulkFlushInterval(FLUSH_INTERVAL_MILLIS);
esSinkBuilder.setBulkFlushMaxSizeMb(FLUSH_MAX_SIZE_MB);
esSinkBuilder.setBulkFlushBackoff(true);

在这种情况下,我指定刷新

  1. 如果时间间隔已超过 1 秒
  2. 如果缓冲区大小为 1MB
  3. 如果缓冲区中有 10,000 条记录等待

当我同时指定所有三个时,结果会是什么,哪个优先?

【问题讨论】:

    标签: elasticsearch apache-flink flink-streaming


    【解决方案1】:

    首先达到哪个限制都会触发刷新。这是由org.elasticsearch.action.bulk.BulkProcessor 处理的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-23
      相关资源
      最近更新 更多