大数据与机器学习:实践方法与行业案例.2.4 作业调度

2.4 作业调度


调度工具用来对作业进行调度,通过ETL工具创建的作业如果需要周期性运行,就需要使用调度工具来完成。调度工具是一个相对复杂的系统,尤其是在跨操作系统、跨应用平台的作业环境中更是如此。

在复杂的作业环境中,需要使用商用调度工具,目前国内使用较多的商用调度工具为Control-M。该工具是BMC Software提供的企业级集中作业调度管理解决方案,能够集中管理跨平台、跨应用的生产控制和调度过程,因此适用于大型复杂的ETL调度场景。

一些相对简单的调度场景可以不使用专门的调度工具实现。比如,如果公司的作业环境全部是Linux系统,则可以使用系统自带的crontab进行调度。

例如,图2-11中的作业配置为每日凌晨1点10分开始运行,那么可以将代码清单2-41的内容保存在文件run_trx_load_and_static.sh中。

代码清单 2-41

kitchen.sh -rep=kettle_rep_test -job="z06837. analysis.trx_load_and_static"

-dir=/ -user=admin -pass=admin -level=Basic

然后编辑Linux系统的crontab文件(通过crontab –e 命令),再在该文件中加入如代码清单2-42所示的内容。

代码清单 2-42

10 01 * * * /home/queziyang/shell/run_trx_load_and_static.sh

crontab会在每天凌晨1点10分运行指定的脚本run_trx_load_and_static.sh,这样便可以完成每日定时调度该ETL作业。显然,使用crontab调度作业,本身是没有作业日志记录的,这也是为什么需要遵循ETL作业日志规范的原因之一。

时间: 2024-11-02 03:25:39

大数据与机器学习:实践方法与行业案例.2.4 作业调度的相关文章

大数据与机器学习:实践方法与行业案例.1.2数据平台

1.2数据平台 数据平台是存放分析数据的平台,也是支持大多数数据分析和数据挖掘应用的底层平台,它使用了统一的数据清洗与处理规则,因而可以保证从基础平台上输出的数据内容是一致的. 传统的数据平台基本等同于大家熟悉的"数据仓库",但互联网浪潮让人们对数据采集.存储和应用提出了越来越高的要求,传统数据仓库平台独力难支,因此"现代化"的数据平台是多种数据库产品的融合.图1-3是一个精简化的现代数据平台架构图.   图1-3 数据平台架构示意图 现代的数据平台融合了传统数据仓

大数据与机器学习:实践方法与行业案例.2.2 数据缓冲区

2.2 数据缓冲区 数据缓冲区是处于生产环境和分析环境之间的中间区域,它是数据闭环中各个系统间的数据中转站,从各个系统接收原始数据,并将其暂存在对应的目录中.其他系统可以从数据缓冲区中获取需要的数据文件. 为了便于管理和迁移数据,我们规定存入数据缓冲区中的数据使用文本文件的格式,这样一来,数据缓冲区就可以使用一台或几台文件服务器实现.几乎所有的应用系统都支持文本文件的数据交互,新的系统可以轻松加入数据闭环之中. 数据缓冲区的一端连接生产环境中的大量应用系统,另一端连接分析环境中的数据平台,避免了

大数据与机器学习:实践方法与行业案例.2.6 本章小结

2.6 本章小结 本章围绕数据体系提出了数据闭环的概念,对数据闭环的特征进行了描述,并且进一步介绍了构建数据闭环所涉及的方法和技术. 这里着重介绍了在数据闭环中扮演重要作用的"数据缓冲区"的设立理念和实现方式.通过设立数据缓冲区,可以实现系统解耦,让数据闭环具备良好的扩展性,让公司组织间职责更加分明,使数据环境更加安全等. 数据缓冲区中涉及的数据批量导出/导入技术,需要使用到各个RDMS系统的批量操作命令.另外在大数据平台中,需要使用hadoop shell和hive shell脚本来

大数据与机器学习:实践方法与行业案例.3.2 自动加载的流程

3.2 自动加载的流程 既然已经明确了数据缓冲区的基本规则,那么我们认为一个满足规则要求的数据缓冲区已经搭建起来了(可以向IT运维人员提出搭建FTP文件服务器的需求),接下来真正进入数据自动加载的设计过程. 首先,仔细分析文件从数据缓冲区自动加载到分析环境中的流程,可以将这个过程细分为4个阶段:扫描文件.下载文件.解压文件和加载文件,如图3-4所示.   图3-4 文件自动加载流程分解 这4个阶段的功能描述如下. 1)扫描文件.该阶段用于判断当前数据日期的文件是否已经完整存在于数据缓冲区中,一旦

大数据与机器学习:实践方法与行业案例.2.3 ETL

2.3 ETL ETL是Extract-Transform-Load的缩写,是数据的抽取.转换.加载过程,当需要将数据从一个环境转移到另一个环境时(例如从生产环境到分析环境),或者需要对数据进行进一步加工处理时(例如在分析环境中,在数据仓库基础上产出每日交易量指标),即需要借助ETL过程. ETL是构建数据闭环自循环过程的重要途径,几乎每个环节均可以通过ETL来完成.通过专门的ETL工具,定制满足业务要求的ETL作业,并结合自动调度工具,即可以实现数据的自动循环. 2.3.1 ETL工具 目前国

大数据与机器学习:实践方法与行业案例1.1 数据的基本形态

迟序之数,非出神怪,有形可检,有数可推. -祖冲之 数学是知识的工具,亦是其他知识工具的泉源.所有研究顺序和度量的科学均和数学有关. -笛卡儿   对于大部分非计算机专业出身的分析人员和业务人员来说,数据库领域的专业术语简直让人抓狂,非要搞得那么高深吗?大可不必. 数据科学家是数据的应用者,以最大限度来提炼数据价值为目的,不必像数据仓库开发者那样对数据的存储.结构以及数据仓库的内生技术一清二楚,但应该站在找到数据.拼接数据.使用数据的角度,大体了解数据的分布.处理逻辑,以便为分析快速地准备素材.

大数据与机器学习:实践方法与行业案例.1.1 数据的基本形态

数据与平台篇 (Data & Infrastructures) 迟序之数,非出神怪,有形可检,有数可推. -祖冲之 数学是知识的工具,亦是其他知识工具的泉源.所有研究顺序和度量的科学均和数学有关. -笛卡儿   对于大部分非计算机专业出身的分析人员和业务人员来说,数据库领域的专业术语简直让人抓狂,非要搞得那么高深吗?大可不必. 数据科学家是数据的应用者,以最大限度来提炼数据价值为目的,不必像数据仓库开发者那样对数据的存储.结构以及数据仓库的内生技术一清二楚,但应该站在找到数据.拼接数据.使用数据

大数据与机器学习:实践方法与行业案例.3.3 自动加载程序的数据库设计

3.3 自动加载程序的数据库设计 根据之前的设计,自动加载程序需要从数据库配置表中获取配置信息,并不断更新相关的状态,表3-2列出了自动加载程序需要的所有配置表. 表3-2 自动加载程序的配置表 表 名 中文名称 用 途 file_settings 数据文件信息表 存储数据文件名称.日期等配置信息 file_status 数据文件状态表 存储数据文件的状态 load_config 加载配置信息表 存储数据库中表的相关信息 ftp_server 数据缓冲区信息表 存储数据缓冲区文件服务器的相关信息

大数据与机器学习:实践方法与行业案例.2.1 数据闭环

第2章 数 据 体 系 迟序之数,非出神怪,有形可检,有数可推.事类相推,各有攸归,故枝条虽分而同本干知,发其一端而已.又所析理以辞,解体用图,庶亦约而能周,通而不黩,览之者思过半矣. -刘徽<九章算术注> 管理就是决策. -赫伯特·西蒙 数据存在于生产环境.数据缓冲区以及分析环境的各个节点中,并且由各种技术手段支撑着数据的存储和计算.通常,在企业中,生产环境由开发部门负责,而分析环境和数据缓冲区则由数据部门负责,物理环境分离以及管理上的隔离会让人们产生一种错觉:数据是数据部门的事情,应用系统

大数据与机器学习:实践方法与行业案例.3.5 本章小结

3.5 本章小结 本章使用Java实现了数据闭环中的关键环节,使数据能够自动且高效地批量导入分析环境.为了便于程序实现,首先定义了数据缓冲区的文件存储规则.命名规则和清理规则.相对于代码上的实现,深刻理解这些方法论则更为重要. 依据数据缓冲区的基本规则,分别设计了扫描文件.下载文件.解压文件和加载文件的相关流程,并进一步设计了相关的数据库配置表. 最后,根据上述设计,使用Java多线程实现了数据的整个加载过程.