经验数据是什么意思_数据和经验_大数据优质经验介绍

快速创新和实验,以越来越快的速度为客户提供价值。提供极高的数据质量和极低的错误率。通过不同的人以及技术和环境进行协作,来提供交互价值。测量、监控清晰,结果透明。

04 DataOps 核心组件

1.Job Scheduler

提供工作流的编排、离线数据研发、有助于数据开发人员专注于业务逻辑的实现,提升开发效率。

2.DevTools

主要提供传统脚本语言sql、python 等开发工具,快速与调度平台集成,方便使用。

3.Migration and Deployment tools

数据迁移和部署管理工具。针对开发、测试环境是网络隔离的行业,需提供有效的导入、导出功能合理的部署到生产环境中。

4.管理与监控工具

对系统管理员友好的离线任务运维相关的管理、监控、告警工具。

经验数据是什么意思_数据和经验_大数据优质经验介绍

二、Job Scheduler

接下来和大家介绍一下调度系统对比

01 主流调度系统优缺点

经验数据是什么意思_数据和经验_大数据优质经验介绍

Oozie

Oozie 是一个基于工作流引擎的开源框架,提供对Hadoop MapReduce、Pig Jobs的任务调度与协调。Oozie 需要部署到 Java Servlet 容器中运行。主要用于定时调度任务,多任务可以按照执行的逻辑顺序调度。

Airflow

Airflow 是一个 Airbnb 的 Workflow 开源项目,使用 Python 编写实现的任务管理、调度、监控工作流平台。Airflow 是基于 DAG(有向无环图)的任务管理系统,可以简单理解为是高级版的 crontab,但是它解决了 crontab 无法解决的任务依赖问题。与 crontab 相比 Airflow 可以方便查看任务的执行状况(执行是否成功、执行时间、执行依 赖等),可追踪任务历史执行情况,任务执行失败时可以收到邮件通知,查看错误日志。

Apache Dolphinscheduler

DolphinScheduler 是一个分布式去中心化,易扩展的可视化 DAG 工作流任务调度平台。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用。

Control-M

Control-MM 是一个商业版的跨平台的作业调度管理软件,功能强大,可编程性较弱。

Azkaban

Azkaban 是由 Linkedin 公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban 使用 job 配置文件建立任务之间的依赖关系,并提供一个易于使用的 web 用户界面维护和跟踪你的工作流。Azkaban 要求所有节点对等部署,但是某些场景只要支持高可用不需要节点完全对等。

02 调度系统的服务

经验数据是什么意思_数据和经验_大数据优质经验介绍

Timer Service

提供 crontab 表达式的定时服务,按固定的周期执行工作流。

DAG Compution

DAG 计算经常指的是将计算任务在内部分解成为若干个子任务,将这些子任务之间的逻辑关系或顺序构建成 DAG(有向无环图)结构。

Task Execution

任务运行是由调度系统的执行引擎根据任务的类型、参数、环境、引用的数据源等来执行任务。

Environment Manage

针对分布式调度引擎,需要提供节点管理功能,便于任务在不同的节点来执行。从而超越单机限制,实现任务的大规模运行。

Alert Service

当任务执行失败、超时以及在指定的时间未完成的时候,需要通知用户以及系统管理员及时的做出处理。

What’s more?

除以上功能,我们希望调度能提供环境、数据源管理功能。工作流配置环境变量之后,所有任务都能直接引用它。数据源可以根据不同的任务类型,以注入的方式提供给其他任务。

03 Job 的元数据

数据和经验_大数据优质经验介绍_经验数据是什么意思

Execution Cycle

(minutes,hourly,daily,weekly & monthly)

任务执行周期(分钟,每小时,每天,每周和每月)。

Dependency Meta

任务依赖的上游元数据信息(文件、表等等)。

Output Meta

任务依赖的下游元数据信息(文件、表等等)。

Dependency Meta Classfication

对依赖的元数据进行分类、区分来源。

Dependency Meta Source

对任务依赖的元数据逆向解析,获取上下游任务,为工作流自动编排以及触发提供合理的依据。

Job Parallel Execution Info(parallel,serial)

控制任务的并行执行状态(并行、串行)。

Job Type

任务类型(SQL、SHELL、PYTHON、PROCEDURE 等等)。

04 Job 开发

大数据优质经验介绍_数据和经验_经验数据是什么意思

Intergration IDE(script language,shell,sql,python etc)

集成IDE开发环境(script language,shell,sql,python 任务等)。

configurable resource file(jar,spark etc)

可配置的资源文件(jar,spark 无法通过文本编辑的任务等)。

custom components

定制化的组件,例如离线数据平台中,将数据同步作为特定的组件,只需要对数据同步做简单的配置就可以实现数据同步的过程。

Third Party Job

第三方作业,由特定的应用系统自定生成脚本,来实现作业目标。

三、第三方作业集成

有两种方式与第三方作业集成,主要用第二种方式处理。

第一种方式:pull

缺点:需多次在第三方系统开发,以及在调度系统中配置调度。

数据和经验_经验数据是什么意思_大数据优质经验介绍

第二种方式:push

01 任务的执行和通知

大数据优质经验介绍_数据和经验_经验数据是什么意思

02 数据集成的配置样例

数据和经验_大数据优质经验介绍_经验数据是什么意思

以上列举了第三方系统集成的配置样例。

调度系统提供可编程的接口,实现环境信息的注入功能。在第三方系统中只需要声明不同类型的数据源,不需要配置各数据源的详细信息例如(IP、端口、用户名、密码等),这部分在调度系统配置数据源和环境信息注入给任务。再由任务从参数中解析后访问对应数据源和环境。这样可以简化 ETL 任务数据源的管理功能。

03 作业的编排

大数据优质经验介绍_数据和经验_经验数据是什么意思

传统的作业编排是用户通过拖拉拽连线的方式来实现, 我们的改进点:

04 作业的影响分析

数据和经验_经验数据是什么意思_大数据优质经验介绍

由于有元数据信息,作业的影响分析非常简单。

05 低代码平台

数据和经验_大数据优质经验介绍_经验数据是什么意思

我的分享就到这里,谢谢大家,也欢迎大家在私下与我交流沟通。

参与贡献

随着国内开源的迅猛崛起,Apache DolphinScheduler 社区迎来蓬勃发展,为了做更好用、易用的调度,真诚欢迎热爱开源的伙伴加入到开源社区中来,为中国开源崛起献上一份自己的力量,让本土开源走向全球。

贡献第一个PR(文档、代码) 我们也希望是简单的,第一个PR用于熟悉提交的流程和社区协作以及感受社区的友好度。

社区汇总了以下适合新手的问题列表:github.com/apache/dolphinscheduler/issues/5689

非新手问题列表:github.com/apache/dolphinscheduler/issues?q=is%3Aopen+is%3Aissue+label%3A%22volunteer+wanted%22

如何参与贡献链接:dolphinscheduler.apache.org/zh-cn/community/development/contribute.html

来吧,DolphinScheduler开源社区需要您的参与,为中国开源崛起添砖加瓦吧,哪怕只是小小的一块瓦,汇聚起来的力量也是巨大的。

参与开源可以近距离与各路高手切磋,迅速提升自己的技能,如果您想参与贡献,我们有个贡献者种子孵化群,可以添加社区小助手微信(Leonard-ds) ,手把手教会您( 贡献者不分水平高低,有问必答,关键是有一颗愿意贡献的心 )。

添加小助手微信时请说明想参与贡献。

来吧,开源社区非常期待您的参与。


本文由转载于互联网,如有侵权请联系删除!