BDOS核心调度产品FlowMan介绍 | 第六期图文直播

by June 2021-01-31

智领云第6次社群图文技术直播文字回放:本次直播由大数据后台开发经理Tim,为大家带来了主题分享《BDOS核心调度产品FlowMan介绍》,主要内容包括:技术人最关心的数据能力;FlowMan产品来历与介绍;DataOps详细阐述;FlowMan的自研之路;实践案例分享。

一、FlowMan产品来历

1、在进行Flowman具体产品分享之前,我们先来了解下产品形成的来历

智领云作为一家提供数据中台解决方案和产品的公司,BDOS 旨在:
• 赋能数字化运营,快速打造数据驱动平台
• 快速打造数据及业务中台
• 实现数据驱动及精细化管理
• 打通数据及应用孤岛和烟囱
• 全局管理数据及应用资产

作为技术人,我们最关心以及认为最重要的能力体现就是:实现数据驱动及精细化管理、打通数据及应用孤岛和烟囱。这两个能力是助力企业打通任督二脉的关键点所在,要求我们能够通过数据技术,对数据进行标识、捕获、格式化、标记、验证、分析、清理、转换、组合、聚合、保护、分类、管理、移动、查询、可视化、分析和操作,同时统一标准和口径。数据中台把数据统一之后,会形成标准数据,再进行存储,进而快速简易提供数据服务。

2、那么如何通过技术手段来达成这个能力呢?

这一整套的技术体系实际上在硅谷是有一套成熟的方法论:DataOps。

关于DataOps的具体讲解,我们同事在“从数仓到数据中台,谈技术选型最优解 第四期图文直播”第十章节已经做了很详细的阐述,之前没有听过的同学可以在直播之后通过下面的博文链接进行了解:
https://www.linktimecloud.com/posts/3257

我们可以通过下面的图进行重点回顾下

DataOps是一门快速发展的学科,旨在驯服蔓延于大多数企业领域的难以驾驭的数据管道

1.如果没有 DataOps,每个数据流水线都将成为一个数据孤岛,与其他数据流水线、数据集和数据生产者几乎没有任何关系。没有协作或重用,有的只是大量的人工操作和重复工作,大量的错误和数据缺陷及缓慢的交付。
2.协调所有这些工具、技术和人员是一项巨大的工作,特别是在拥有规模庞大的开发团队,来自数百个来源的大量数据以及该领域的大量数据分析师和数据科学家的大型组织中。

我们从上面的方法论明白了要管理好数据这条流水线:源数据->数据采集->数据流水线(数据清理治理)->数据查询->数据展现,必然会面临下面的问题:
• 任务编排
• 任务调度
• 数据监控
• 数据告警
• 失败重试

上面的每一项都跟业务相关,但我们又不能将上面的能力和业务代码紧密相关,所以要脱离业务打磨一个大数据通用好用的调度平台。

FlowMan就是作为大数据平台对run to finish应用达成编排,调度,监控,报警的能力输出,FlowMan就是管理data pipelines的核心组件。

二、为什么我们需要自研

1.下面两款开源产品在各个IT公司都有很广的应用,在大数据技术发展前期发挥了很大的调度协调的作用:
• Oozie(Yahoo)
• Airflow(Airbnb)

正应用使用广泛,所以相信我们很多大数据从业人员对他们的优缺点也很清晰:

Oozie(Yahoo)

使用起来比较困难,用户需要理解各种繁杂的概念,不容易上手。Oozie调度的Workflow只能使用XML文件配置、启动调度只能通过命令行、在可视化方面做的不好

Airflow(Airbnb)

整体工作流的定义是基于Python脚本,在开发和维护都是基于文件形式,用户要进行任务的创建、更新、运行需要深入学习原理才能上手

2.同时我们关注到国内很多公司都是自研
•Gear(爱奇艺)
Oozie 作为 Gear 的工作流引擎,并且对其进行封装和二次开发,一方面提供新的用户交互方式,另一方面也扩展 Oozie 的功能。
•maat(阿里)
maat在外层封装一层管控系统Maat Console,降低运维及用户学习的成本。

3.经过以上产品的调研以及我们公司产品定位,我们还是看到了调度框架存在的必须要解决的问题:
•基于容器的任务调度是个空白
•调度策略不够灵活
•没有集成的监控报警支持
•用起来很复杂 Web UI不友好
•我们需要后续扩展高级功能与BDOS集成

三、FlowMan产品介绍

1.核心调度的架构图

•master和worker都是容器化的形态,并且支持分布式运行
•master承担核心调度管理及作业相关api service功能的逻辑
•worker作为任务的执行者,包括计算资源客户端环境的初始化,进行任务队列的控制,日志和结果的上报

2.能力输出:

•云原生支持容器调度
•无缝接入已有大数据平台,提供数据展现
•无代码开发完成数据流水线
•提供数据及服务访问安全认证机制
•一套部署多环境支持隔离发布
•集成第三方应用,丰富调度和监控功能

3.主要功能包括:

作业监控大屏:FlowMan提供了当前作业运行情况的监控大屏,例如当前正在运行的作业数量、失败数量、排队作业数量、延迟作业等。通过这个页面,用户能很清楚当前系统运行状态。

资源集成中心:整个平台可以对接各类大数据计算资源,比如:hadoop、hive、spark、es、ck、hbase、kafka等

程序坞:管理整个平台上的程序及版本升级,包括系统预置的大数据程序,比如数据采集程序、数据清洗程序、数据治理程序、数据导出程序。也支持用户自定义程序对接及升级。

作业管理:FlowMan 提供了作业的常用操作,包括启动、暂停、恢复、停止、重跑、补跑等,也支持查看(或获取)运行状态、进度和日志等。

工作流管理:FlowMan 提供了 Web 界面来管理作业间的依赖关系,直接进行拖拉和连线来完成DAG。

数据资源:数据retention期限管理,比如hive库表数据最长时间保留管理

元数据管理:通过FlowMan平台添加的数据、作业,可以进行数据资产目录管理、数据血缘查看,通过数据追溯作业,或者通过作业关联数据。

安全管理:进行大数据资源hadoop、hive、spark、kafka的数据权限管理

生产/测试环境切换:不仅仅是生产/测试环境的切换,目标是一套系统的部署完成对多套环境的对接,方便不同环境下的作业开发、测试、上线的快速流程

4.重要功能页面展示:

作业监控大屏

工作流管理

血缘分析

四、交通运输行业数据整合开发平台案例分享:

1.背景介绍

为交通管理信息化应用提供按需定制的基础设施资源和技术服务,数据资源须具备完善的权限管理、安全保障和使用限制,形成“资源云化、数据融合、价值发掘、服务创新”的应用格局,为跨地市、跨部门、跨警种信息资源共享和大数据应用提供坚实的服务保障。数据处理资源池集群主要用于收集和抽取来自交通安全综合服务管理平台、集成指挥平台及其他业务系统、天气监测和道路监测等数据,经过清洗转换后存储在大数据处理平台和分布式数据库中,经由统一的数据服务接口为应急管理平台提供访问。数据整合开发平台主要是通过界面化来达成数据处理资源池集群建设。

通过上面要求,我们决定使用BDOS现有的两个子产品FLowMan和DS来分别完成数据整合开发平台和数据服务平台。

2.数据整合开发平台项目要求:

•大数据计算资源hadoop、hive、spark、kafka等需要对接国内fusioninsight平台
•页面上完成包括数据采集、清洗、治理、转换的作业编写和运维管理
•整体在私网下开发、调测、部署

3.项目的难点有以下两个方面:

•fusioninsight平台对接难度高:
fusioninsight平台集成的hadoop、hive、spark、kafka很多是HW内部做了定制化,前期得到的HW回复,可能无法直接使用开源版本的客户端,需要使用他们的安装包,这意味着接入方可能有极大的开发工作量。所有组件都开启了kerberos认证,这一套如果之前的产品不支持,对整套的产品的对接也是极大的冲击。

•项目初始规划周期短:
项目在疫情前期规划的上线日期,预留给开发实施的时间很短,本身项目在后期数据导入和作业部署上就需要不少时间来调测,所以留给项目开发及对接fusioninsight的时间很短。

4.最终,我们通过使用BDOS的FLowMan和DS产品成功完成了项目关于数据整合开发平台和数据服务平台的验收。同一套产品对接fusioninsight,除了自定义fusioninsight-kafkaworker,其他大数据组件的对接,都是通过页面配置文件的对接来完成,体现了FlowMan在设计之初既定的目标,无缝对接第三方大数据平台。

五、新零售行业数仓构建案例分享:

1.背景介绍

某新零售企业希望将用户、商品、销售等各主题数据统一进入大数据平台,并形成数据仓库,然后通过清洗、计算、导出来完成业务需要的报表。整个平台从PasS、大数据计算环境、调度平台、数据集成开发平台全部从零进行客户环境搭建。

2.最终,我们通过使用BDOS的应用云平台、容器大数据平台、数据集成开发平台(FlowMan)产品完成了目标系统搭建,并且分阶段的完成了大数据数仓报表从天作业到全部小时作业,再到所有库表实时采集的技术演进。

六、智慧监狱行业数据标签模型案例分享:

1.背景介绍

某城市的监狱希望打造智慧监狱,通过对犯人的日常数据收集、清洗、治理、模型定义,来完成监狱内部各类指标的计算,比如罪犯难易改造程度、监狱月度考核等业务人员从业务角度定义好模型,自动计算考核对象的分值。

2.最终,我们通过使用BDOS的FLowMan和LS(标签及模型)产品成功完成了项目的验收。标签及模型服务LS,是建立在以FlowMan为调度框架之上的通用产品。

七、最后再聊一下产品未来

1.产品进一步升级为DDP(数据集成开发平台),为企业数据中台的搭建形成OneData体系的重要工具,成为具备符合数据中台能力Total Platform的重要一环。

2.达成资源的精细分析及数据输出,为智领云数据中台方法论另外一个实践Total insight提供关键数据。

总结

通过本次分享,我们介绍了BDOS核心调度产品FlowMan介绍,让大家对于数据集成开发平台的方案落地有了一定地概念和了解。如果大家对我们的产品及解决方案感兴趣或者想进一步交流。

留言

评论

${{item['author_name']}} 回复 ${{idToContentMap[item.parent] !== undefined ? idToContentMap[item.parent]['author_name'] : ''}} · ${{item.date.slice(0, 10)}} 回复

暂时还没有一条评论.