获取当前程序的上下文
批处理:
val env: ExecutionEnvironment = ExecutionEnvironment.getExecutionEnvironment
流处理:
val env = StreamExecutionEnvironment.getExecutionEnvironment
这里涉及不同的底层实现。
在idea和生产环境中的执行环境是不同的
getExecutionEnvironment底层会自动帮我们判断是本地环境还是集群生产环境
然后以此调用:
//本地执行环境
StreamExecutionEnvironment.createLocalEnvironment(1)
传入的参数运行并行度,不传入则为默认并行度。
//集群执行环境
ExecutionEnvironment.createRemoteEnvironment("jobmanage-hostname", 6123,"YOURPATH//wordcount.jar")
需要提供jobmanager的ip和RPC端口号,还需要指定运行的jar包。
由于测试环境和生产环境运行方式的不同,需返回不同的环境
为了方便开发,flink对其进行了保证,它会自己根据运行方式的不同
返回其对应的运行环境。
开发者只需要getExecutionEnvironment即可。
本文详细介绍了Flink在批处理和流处理中获取执行环境的方法,getExecutionEnvironment会根据运行环境自动判断是本地还是集群。在本地执行时,会创建LocalEnvironment,而集群环境下则需要指定jobmanager的IP、RPC端口及运行的JAR包。Flink的这一设计简化了开发者的工作,确保在不同环境下的顺利执行。
526

被折叠的 条评论
为什么被折叠?



