为了账号安全,请及时绑定邮箱和手机立即绑定

基于窗口和元素计数从数据流写入 GCS

基于窗口和元素计数从数据流写入 GCS

长风秋雁 2021-08-04 16:46:23
我正在尝试实现一个解决方案,我需要使用数据流将数据 (json) 消息从 pubsub 写入 GCS。我的问题正是与此类似一个我需要根据窗口或元素计数来编写。以下是上述问题的写入代码示例:windowedValues.apply(FileIO.<String, String>writeDynamic()        .by(Event::getKey)        .via(TextIO.sink())        .to("gs://data_pipeline_events_test/events/")        .withDestinationCoder(StringUtf8Coder.of())        .withNumShards(1)        .withNaming(key -> FileIO.Write.defaultNaming(key, ".json")));解决方案建议使用 FileIO.WriteDynamic 函数。但我无法理解 .by(Event::getKey) 做什么以及它来自哪里。非常感谢您对此的任何帮助。
查看完整描述

1 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

它根据事件的键将元素分组。

根据我的理解,事件来自使用 KV 类的 PCollection,因为它具有 getKey 方法。

请注意 :: 是 Java 8 中包含的一个新运算符,用于引用类的方法。


查看完整回答
反对 回复 2021-08-04
  • 1 回答
  • 0 关注
  • 139 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号