开发者社区 问答 正文

PyFlink DataStream API 作业中定义计算逻辑的方法是什么?

PyFlink DataStream API 作业中定义计算逻辑的方法是什么?

展开
收起
游客qzzytmszf3zhq 2021-12-07 15:01:31 399 分享 版权
1 条回答
写回答
取消 提交回答
  • 生成数据源对应的 DataStream 对象之后,接下来就可以使用 PyFlink DataStream API 中定义的各种操作,定义计算逻辑,对 DataStream 对象进行变换了,比如:
    
    def split(s):
        splits = s[1].split("|")
        for sp in splits:
           yield s[0], sp
    
    ds = ds.map(lambda i: (i[0] + 1, i[1])) \
           .flat_map(split) \
           .key_by(lambda i: i[1]) \
           .reduce(lambda i, j: (i[0] + j[0], i[1]))
    
    2021-12-07 15:01:45
    赞同 展开评论