详解BI系统中的任务调度
任务调度是一个通用的计算机概念,可以简单地理解为计算机基于一定时间频率,自动执行一项进程任务。任务调度是操作系统的重要组成部分,Windows系统中的定时任务和Linux的Crontab都是常用的系统级调度器,被广泛应用于各种定时执行程序的场景。在传统商业智能BI领域,系统的调度器也经常被作为ETL作业的调度器。作业任务会通过T+1或者更高的时间频率进行调度执行。
随着商业智能BI技术的发展,BI工具的调度功能也有了长足的发展。特别是伴随着大数据和实时数据的市场需求,处理能力更强、多线程作业,准实时调度等场景的应用越来越普遍。
具体到商业智能BI工具的调度功能,目前,主要可以概括为两类:
- 数据抽取的任务调度
- 通知、消息的任务调度
一、数据抽取的任务调度
商业智能工具的一大应用场景就是打破数据孤岛,将分布在不同系统中的异构数据进行整合,并抽取到数据仓库,形成分析模型,为可视化分析提供数据支撑。对于大数据量的历史数据分析,抽取基本采用的就是定时调度机制。从数据源到数据仓库,可以配置增量更新或者全量更新。
全量更新一般采用的机制是先Truncate Table,再进行Insert操作。增量更新则是基于主键列或者时间戳,只更新满足条件的数据。无论哪种方式,都是通过设置不同时间频率的定时调度任务来执行的。
任务的频率也是和前述两种更新方式密切相关的。对于实时性要求不高的数据,可以通过设置T+1来进行全量更新。对于频率相对较高的数据,可以设置以小时、分钟甚至秒级的频率来进行调度增量更新。
具体的调度频率要根据数据量、服务器配置,同时考虑对数据源系统的压力来综合考虑。
以Wyn为例,在数据接入方式上同时支持直连模型和抽取模型。对于抽取模型,可以设置调度运行计划。自动重载计划会在设定的时间自动刷新模型中的数据。
用户可以根据不同的业务需求制定不同的执行计划,以不同频率重载表中的缓存数据。若计划执行失败,会向填写的邮箱发送一封邮件通知。若成功,则没有提示。
创建自动定时的运行计划,设定后运行计划会周期性的自动刷新数据。
商业智能BI工具在任务计划设置上,也会考虑到其复用性。提供通过模板创建运行计划功能。运行计划可以手动或自动执行。运行计划的调度执行是数据抽取成功的重要技术保障。
二、通知、消息的任务调度
在商业智能的任务调度场景中,不仅要将数据抽取到数仓集中存储。对于报表、仪表板等分析结果,也需要支持定时推送功能。并不是每个报表数据的查看者都方面直接登录系统查看数据。例如,出差路上,或者遗忘时,通过定时推送功能,可以主动地将分析结果呈现给数据的使用者。在企业实践中,邮件推送是最常用的方式之一。
以Wyn为例,在任务计划模板中,可以使用邮件推送功能。发送对象支持邮件和邮件组。在运行报表运行计划时,不仅仅支持将报表作为邮件附件或链接的形式发送至目标邮箱,也支持将报表作为邮件正文,这样会更加方便用户查看。
将报表作为邮件正文显示的关键在于,在设置运行计划时,将导出格式设置为"HTML"或"Image"。而后,发送方式选择邮件通知时,"发送类型"中才可以选择"在邮件正文中显示报表"。
综上所述,任务调度作为商业智能工具的普遍需求,已经被广泛应用,为数据抽取提供了有效的支撑。随着软件开发技术的发展和市场需求的变化,数据实时性更高的分析场景将越来越多。但是,大数据量历史数据分析的场景也会一直存在。因此,可以预见的是,在未来一段时间内,基于任务调度的抽取模型和基于流式的、实时推送模型、直连数据源的直连模型将并存,并共同为企业的数据分析提供重要的技术支撑。
详解BI系统中的任务调度相关推荐
- 详解MTK系统中字符转换问题
详解MTK系统中字符转换问题 2011-09-05 19:02 佚名 互联网 字号:T | T MTK系统中字符转换问题是本文要介绍的内容,主要是来了解并学习MTK中一些小案例的应用,具体内容来看本文 ...
- find linux 目录深度_浪里淘沙,详解Linux系统中Find命令的实用技巧
知了小巷:浪里淘沙,详解Linux系统中Find命令的实用技巧. 啊哈,找到了! 当我们需要在Linux系统上定位某个文件或目录时,find命令通常是必备之选. 它使用起来非常简单,但有许多不同的可选 ...
- php执行md5sum,Linux_详解Linux系统中md5sum命令的用法,MD5算法常常被用来验证网络文 - phpStudy...
详解Linux系统中md5sum命令的用法 MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任 ...
- php ping icmp,Linux_详解Linux系统中ping和arping命令的用法,pingping 程序使用 ICMP 协议的强 - phpStudy...
详解Linux系统中ping和arping命令的用法 pingping 程序使用 ICMP 协议的强制回显请求数据报以使主机或网关发送一份 ICMP 的回显应答.回显请求数据报(" ping ...
- linux管道命令详解,Linux系统中的管道命令的用法详解
Linux系统中管道命令是linux系统的一个强大之处.下面由学习啦小编为大家整理了Linux系统中的管道命令的用法详解的相关知识,希望对大家有帮助! Linux系统中的管道命令的用法详解 管道命令操 ...
- linux所请求的操作需要超级用户权限,详解Linux系统中的root权限控制
在Linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者.普通用户无法执行的操作,root用户都能完成,所以也被称之为超级管理用户. 在系统中,每个文件.目录和进程,都归属于某一个用户 ...
- centos 卸载软件_一篇看懂!详解-Linux系统中安装软件的三种方法
Linux系统中安装软件的三种方法 注:本文主要以CentOS为例介绍常用的安装方式,其他版本linux在文章底部 Linux系统中怎么安装软件,首先说一下应用程序与系统命令的区别: 1.文件位置 系 ...
- linux info文件夹,详解Linux系统中查询文档的man和info命令
manUsage: man [OPTION...] [章节] 手册页... -C, --config-file=文件 使用该用户设置文件 -d, --debug 输出 ...
- linux ps-l命令详解,Linux系统中ps -l命令显示的英文含义
Linux系统中ps -l命令显示的英文含义 UID:启动这些进程的用户. PID:进程的进程ID. PPID:父进程的进程号(如果该进程是由另一个进程启动的). C:进程生命周期中的CPU利用率. ...
- 详解Linux系统中的软件管理及软件仓库
目录 一.Linux中软件包的类型 二.软件包的名称结构 三.rpm命令管理软件包 四.本地软件仓库的搭建 五.dnf软件管理命令 总结 一.Linux中软件包的类型 DEB UEBlinux DEB ...
最新文章
- VR社交应用程序vTime支持Oculus Touch
- Flutter 系列文章:Flutter Icon 控件介绍
- 一起学Android之Storage
- Httpd总结 :HTTPD的基本概念
- Linux网络属性及其配置
- Matlab学习小结
- 学以致提高学生操作计算机能力,学用结合,学以致用
- opencv 摄像头偏色问题 自动变亮问题 解决办法
- DOTA2新英霸更新日志
- css背景图片全屏_使用CSS3的全屏背景图片幻灯片
- pytorch是什么?解释pytorch的基本概念
- 转:用AutoCAD 系统变量编程
- 计算机上的游戏怎么不见了怎么办,电脑自带小游戏消失怎么找回?高手教你找回电脑自带小游戏...
- 在maven中的pom.xml配置ojdbc报错
- fragment重叠问题
- PHP利用CURL_MULTI实现多线程爆破
- ★★★阅读 v3.21.082719 | 免费开源网络文学阅读器★★★
- Firefox 设置
- 沙盘 Sandboxie Service 服务不能启动 SBIE2331 33/1056
- 关于PS选区的学习笔记
热门文章
- 51单片机倒计时蜂鸣器c语言,基于51单片机的倒计时器设计
- oracle创建只读视图语句,使用语句创建视图(6)——设置视图约束(check option)...
- Flutter 自定义CheckBox (用于兴趣爱好、风格选择)
- Matlab下载 安装 与 和谐教程
- 快手极速版自动评论脚本
- 用数据,创造下一个可能
- nginx源码安装及配置https自签名
- 基于JAVA SSM框架的酒店客房管理系统设计
- Skyline软件二次开发初级——6如何在WEB页面中的三维地图上进行坐标和方向计算...
- 【嵌入式模块】LCD1602LCD12864