你好,欢迎来到第 42 课时,本课时我们主要讲解“Flink 面试方案设计篇”。
Flink 的方案设计面试题目在面试中,是面试官了解我们项目的最直接的问题,它通常体现在面试者回答自己的项目整体是如何设计的?Flink 在你的项目中起到什么作用?有没有在应用过程中对 Flink 有一些定制开发等。
如何介绍自己的项目,为什么技术选型 Flink 也代表我们对于 Flink 框架的了解程度,我们本课时将介绍 Flink 典型的应用场景和整体的方案设计。
面试题1:基于 Flink 的实时数据仓库是如何做的?
我们在第 01 课时“Flink 的应用场景和架构模型”和第 21 课时“Flink 在实时计算平台和实时数据仓库中的应用”中对基于 Flink 的实时数仓做过详细介绍。
在回答这类问题时,我们要从 Flink 的优势开始入手,介绍基于 Flink 的实时数仓建设的关键技术选型和整体设计。
传统的离线数据仓库将业务数据集中进行存储后,以固定的计算逻辑定时进行 ETL 和其他建模后产出报表等应用。离线数据仓库主要是构建 T+1 的离线数据,通过定时任务每天拉取增量数据,然后创建各个业务相关的主题维度数据,对外提供 T+1 的数据查询接口。计算和数据的实时性均较差,业务人员无法根据自己的即时性需要获取几分钟之前的实时数据。数据本身的价值随着时间的流逝会逐步减弱,因此数据发生后必须尽快地达到用户的手中,实时数仓的构建需求也应运而生。
总之就是一句话:时效性的要求。
Flink 在实时数仓和实时 ETL 中有天然的优势:
- 状态管理,实时数仓里面会进行很多的聚合计算,这些都需要对状态进行访问和管理,Flink 支持强大的状
|