flink使用教程_flink实战

flink使用教程_flink实战Flink程序基本流程一个 Flink 程序,其实就是对 DataStream 的各种转换。

大家好,欢迎来到IT知识分享网。

Flink程序基本流程

flink使用教程_flink实战

一个 Flink 程序,其实就是对 DataStream 的各种转换。具体来说,代码基本上都由以下几部分构成

  1. 获取执行环境(execution environment)
  2. 读取数据源(source)
  3. 定义基于数据的转换操作(transformations)
  4. 定义计算结果的输出位置(sink)
  5. 触发程序执行(execute)

参考网址 https://nightlies.apache.org/flink/flink-docs-release-1.16/docs/dev/datastream/overview/

flink使用教程_flink实战

第一步 创建执行环境

1.1、 getExecutionEnvironment 最简单的方式,就是直接调用 getExecutionEnvironment 方法。它会根据当前运行的上下文直接得到正确的结果:如果程序是独立运行的,就返回一个本地执行环境;如果是创建了 jar包,然后从命令行调用它并提交到集群执行,那么就返回集群的执行环境。也就是说,这个方法会根据当前运行的方式,自行决定该返回什么样的运行环境。

StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();

IT知识分享网

这种“智能”的方式不需要我们额外做判断,用起来简单高效,是最常用的一种创建执行环境的方式。

1.2、 createLocalEnvironment 这个方法返回一个本地执行环境。可以在调用时传入一个参数,指定默认的并行度;如果不传入,则默认并行度就是本地的 CPU 核心数。

IT知识分享网StreamExecutionEnvironment localEnv = 
StreamExecutionEnvironment.createLocalEnvironment();

1.3、 createRemoteEnvironment 这个方法返回集群执行环境。需要在调用时指定 JobManager 的主机名和端口号,并指定要在集群中运行的 Jar 包。

StreamExecutionEnvironment remoteEnv = StreamExecutionEnvironment
                                 .createRemoteEnvironment(
                     "host", // JobManager 主机名
                     1234, // JobManager 进程端口号
                     "path/to/jarFile.jar" // 提交给 JobManager 的 JAR 包
); 

在获取到程序执行环境后,我们还可以对执行环境进行灵活的设置。比如可以全局设置程序的并行度、禁用算子链,还可以定义程序的时间语义、配置容错机制。

flink使用教程_flink实战

未完待续

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/6297.html

(0)
上一篇 2022-12-14 22:56
下一篇 2022-12-14 22:56

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信