乐趣区

关于后端:面试题百日百刷flink篇二

锁屏面试题百日百刷,每个工作日保持更新面试题。 请看到最初就能获取你想要的, 接下来的是今日的面试题:

1.Flink 的运行必须依赖 Hadoop 组件吗?**

Flink 能够齐全独立于 Hadoop,在不依赖 Hadoop 组件下运行。然而做为大数据的基础设施,Hadoop 体系是任何大数据框架都绕不过来的。Flink 能够集成泛滥 Hadooop 组件,例如 Yarn、Hbase、HDFS 等等。例如,Flink 能够和 Yarn 集成做资源调度,也能够读写 HDFS,或者利用 HDFS 做检查点。

2. 你们的 Flink 集群规模多大?**

大家留神,这个问题看起来是问你理论利用中的 Flink 集群规模,其实还暗藏着另一个问题:Flink 能够反对多少节点的集群规模?在答复这个问题时候,能够将本人生产环节中的集群规模、节点、内存状况阐明,同时阐明部署模式(个别是 Flink on Yarn),除此之外,用户也能够同时在小集群(少于 5 个节点)和领有 TB 级别状态的上千个节点上运行 Flink 工作。

3.Flink 的根底编程模型理解吗?

上图是来自 Flink 官网的运行流程图。通过上图咱们能够得悉,Flink 程序的根本构建是数据输出来自一个 Source,Source 代表数据的输出端,通过 Transformation 进行转换,而后在一个或者多个 Sink 接收器中完结。数据流(stream)就是一组永远不会进行的数据记录流,而转换(transformation)是将一个或多个流作为输出,并生成一个或多个输入流的操作。执行时,Flink 程序映射到 streaming dataflows,由流(streams)和转换操作

(transformation operators)组成。

4.Flink 集群有哪些角色?各自有什么作用?

Flink 程序在运行时次要有 TaskManager,JobManager,Client 三种角色。其中 JobManager 扮演着集群中的管理者 Master 的角色,它是整个集群的协调者,负责接管 Flink Job,协调检查点,Failover 故障复原等,同时治理 Flink 集群中从节点 TaskManager。TaskManager 是理论负责执行计算的 Worker,在其上执行 Flink Job 的一组 Task,每个 TaskManager 负责管理其所在节点上的资源信息,如内存、磁盘、网络,在启动的时候将资源的状态向 JobManager 汇报。Client 是 Flink 程序提交的客户端,当用户提交一个 Flink 程序时,会首先创立一个 Client,该 Client 首先会对用户提交的 Flink 程序进行预处理,并提交到 Flink 集群中解决,所以 Client 须要从用户提交的 Flink 程序配置中获取 JobManager 的地址,并建设到 JobManager 的连贯,将 Flink Job 提交给 JobManager。

全部内容在 git 上, 理解更多请点我头像或到我的主页去取得,谢谢 **

退出移动版