elasticsearch 使用Flink Rich InputFormat创建Elasticsearch的输入格式,elasticsearch,apache-flink,flink-batch,elasticsearch,Apache Flink,Flink Batch" /> elasticsearch 使用Flink Rich InputFormat创建Elasticsearch的输入格式,elasticsearch,apache-flink,flink-batch,elasticsearch,Apache Flink,Flink Batch" />

elasticsearch 使用Flink Rich InputFormat创建Elasticsearch的输入格式

elasticsearch 使用Flink Rich InputFormat创建Elasticsearch的输入格式,elasticsearch,apache-flink,flink-batch,elasticsearch,Apache Flink,Flink Batch,我们正在使用Elasticsearch 6.8.4和Flink 1.0.18 我们在elasticsearch中有一个包含1个碎片和1个副本的索引,我想创建自定义输入格式,以便使用apache Flink dataset API在elasticsearch中读取和写入数据,其中包含1个以上的输入拆分,以获得更好的性能。那么我有没有办法达到这个要求呢 注意:每个文档的大小更大(几乎8mb),由于大小限制,我一次只能读取10个文档,每个读取请求,我们希望检索500k记录 根据我的理解,并行数应该等于

我们正在使用Elasticsearch 6.8.4和Flink 1.0.18

我们在elasticsearch中有一个包含1个碎片和1个副本的索引,我想创建自定义输入格式,以便使用apache Flink dataset API在elasticsearch中读取和写入数据,其中包含1个以上的输入拆分,以获得更好的性能。那么我有没有办法达到这个要求呢

注意:每个文档的大小更大(几乎8mb),由于大小限制,我一次只能读取10个文档,每个读取请求,我们希望检索500k记录

根据我的理解,并行数应该等于数据源的碎片/分区数。然而,由于我们只存储了少量数据,所以我们将碎片的数量保持为1,并且我们有一个静态数据,它每个月都会略微增加


任何源代码的帮助或示例都将不胜感激。

您需要能够生成对ES的查询,从而有效地将源数据划分为相对相等的块。然后,您可以在并行度>1的情况下运行输入源,并使每个子任务只读索引数据的一部分