首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有界流上的全局窗口的Flink排序

有界流上的全局窗口的Flink排序
EN

Stack Overflow用户
提问于 2022-02-03 11:20:32
回答 1查看 166关注 0票数 0

我已经构建了一个flink应用程序来直接使用Kafka提供的数据,但是如果系统故障或者需要重新处理这些数据,我需要使用S3中一系列文件中的数据。处理消息的顺序是非常重要的,因此我试图在将这些消息推送到我现有的应用程序之前,先弄清楚如何对这个有界的流进行排序。

我尝试使用table将流插入一个临时表中,但是排序操作符总是使用最大并行度为1,尽管对两个键进行排序。我能利用这些键来增加这种并行性吗?

我一直在考虑使用键控全局窗口,但我不知道如何在有界的流上触发,并对窗口进行排序。对于这种批处理,Flink是一个很好的选择,使用旧的Dataset API编写它会是个好主意吗?

编辑

经过一些实验,我认为Flink不是正确的解决方案,而Spark只是在这个特定的用例中更加丰富的特性。我试着在每个作业中消耗1.5tb的数据并对其进行排序。不幸的是,这些分区中有些可能包含100 G或更多,在我进一步分解这些组之前,一切都必须井然有序,这使得在操作符中对这些数据进行排序变得困难。

我的要求很简单,在将数据刷新到磁盘之前,从S3中摄取数据并按通道ID进行排序。只需考虑windows和时间戳分配者,就会使一个相对简单的任务变得复杂,这个任务可以在火花代码的4行代码中完成。

EN

回答 1

Stack Overflow用户

发布于 2022-02-03 11:59:31

您是否考虑过在用例中使用HybridSource,因为这正是为设计什么而设计的?https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/connectors/datastream/hybridsource/

不推荐使用DataSet API,我建议不要使用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70970399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档