java - Java Flink : 批量添加 Source 作为 Stream 和 Sink
问题描述
我是 Flink 的新手。而且我有一个要求,我需要从 Kafka Stream 连续读取数据,但要分批写入。从而减少MongoServer上的查询次数。
请指导我最好的方法。
我目前尝试的。
- 从 Kafka Source 读取数据
- 应用 5 分钟的时间窗口
- 减少条目以创建条目列表。
- 从 MongoSink 函数中读取列表做一个 BulkWrite
谢谢,阿什尼克
解决方案
以上似乎应该工作。由于 Mongo 客户端非常简单,如果您想提高效率,您可以实现自己的 statefulProcessFunction
来保存条目列表,并在列表达到一定大小或经过足够时间时刷新到 MongoDB。
推荐阅读
- caching - 使用较新的 CacheControl 属性缓存 HttpResult/memorystream
- regex - 谷歌分析正则表达式 - 匹配特定词,但不匹配其他词
- swift - 覆盖 URL 的公共初始化器
- mysql - 根据另一列 SQL 中的值平均一列
- r - 如何使用ggplot绘制每行的标准偏差线
- sql-server-2008-r2 - 迁移 SQL Server 复制
- typescript - 使用 TypeScript 添加自定义 Bokeh 小部件
- java - 如何创建具有两个矩阵的对象?
- r - next_page_token 在第二次尝试时不起作用(google_places 功能)
- .htaccess - .htaccess 如果有一些字符串则不重定向