是否可以在 Flink 的 Job Manager 中运行一个简单的作业?
Posted
技术标签:
【中文标题】是否可以在 Flink 的 Job Manager 中运行一个简单的作业?【英文标题】:Is it possible to run a simple job in Job Manager in Flink? 【发布时间】:2020-07-16 00:22:59 【问题描述】:我编写了一个 Flink 作业,它从 Kafka 读取数据并写入 HIVE 的 ORC 格式的 hdfs 文件(使用 20 个执行器)。我需要运行一个简单的作业,每小时将分区插入 HIVE 表。是否可以在作业管理器中运行这个简单的分区添加作业?
【问题讨论】:
【参考方案1】:工作经理只扮演协调/监督的角色。您必须至少有一个任务管理器。
但是,要运行一个简单的作业,您可以使用一个完全在与客户端/应用程序相同的 JVM 中运行的“迷你集群”。你想要的是LocalStreamEnvironment,由
创建final StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironment();
或LocalEnvironment,如果您使用的是 DataSet(批处理)API:
ExecutionEnvironment env = ExecutionEnvironment.createLocalEnvironment();
【讨论】:
是否可以在流期间每小时触发一些事件,例如使用水印或其他? 我想说“是”,但我不太清楚您要做什么。这似乎与这个问题无关,所以请提出一个新问题,我们可以继续。以上是关于是否可以在 Flink 的 Job Manager 中运行一个简单的作业?的主要内容,如果未能解决你的问题,请参考以下文章
Flink源码1-Flink 的集群和Jobmanager启动
apache flink docker-compose 运行试用
日常Exception第二十五回:Flink启动job时报错,AbstractChannel$AnnotatedConnectException: Connection refused.....
日常Exception第二十五回:Flink启动job时报错,AbstractChannel$AnnotatedConnectException: Connection refused.....