Flink DataStream API 的计算逻辑是怎样的?
如图示,用Flink表示的代码如图,看上去要比单机的示例复杂一些。首先,用 Flink 实现任何功能,一定要获取一个相应的运行环境,也就是Sream Execution Environment;其次,在获取环境后,可以调用环境的 add Source 方法,来为逻辑添加一个最初始数据源的输入;设置完数据源后可以拿到数据源的引用,也就是 DataSource 对象;最后,可以调用一系列的转换方法来对 Data Source 中的数据进行转化。
这种转化如图所示,就是把每个数字都×2,随后为了求和我们必须利用keyBy 对数据进行分组。传入的常数表示把所有的数据都分到一组里边,最后再对这个组里边的所有的数据,按照第一个字段进行累加,最终得到结果。在得到结果后,不能简单的像单机程序那样把它输出,而是需要在整个逻辑里面加一个的 Sink 节点,把 所 有 的 数 据 写 到 目 标 位 置 。 上 述 工 作 完 成 后 , 要 去 调 用Environment 里面 Execute 方法,把所有上面编写的逻辑统一提交到远程或者本地的一个集群上执行。
资料来源:《Apache Flink 必知必会》,下载链接:https://developer.aliyun.com/topic/download?id=1189
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。