企业数据仓库详细设计说明书-DSS详细设计分册_第1页
企业数据仓库详细设计说明书-DSS详细设计分册_第2页
企业数据仓库详细设计说明书-DSS详细设计分册_第3页
企业数据仓库详细设计说明书-DSS详细设计分册_第4页
企业数据仓库详细设计说明书-DSS详细设计分册_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、XXXX 企业数据仓库概要设计说明书DSS 详细设计分册OM-BIDW-C008 )(版本01.00.000)未经许可,不得以任何形式抄袭xxxx 版权所有,翻板必究OM 数据仓库短彩技术部数据组2009年 3月文档变更历史日期版本作者修改内容评审号变 更 控 制 号发布日期2009-04-2701.00.000黄浩建立初始版本2009-04-271 1 概述DSS( Dispatch Supervisor System)调度监控系统贯穿了整个数据仓库,是数据仓库数据处理的控制中心,是数据仓库中粒度建立的技术支撑,它控制着数据的流向,一切与数据处理有关的进程(存储过程)都将由DSS 来调度启动

2、。与其他业务型系统相比,前者的绝大部分的进程都是由系统用户手工触发(比如点击按钮),系统显式启动对应的预设进程;而在数据仓库中,尤其是数据处理过程中,绝大部分的进程(存储过程)都是由DSS隐式启动,不需要人工干预。DSS 功能模块DSS系统主要包括调度模块和监控模块三大功能模块:调度、 监控及用户权限管理DSS系统模块逻辑图调度:调度模块主要是完成调度数据的配置及调度的具体实施配置调度数据:录入调度所必须的配置数据,比如程序名、参数、依赖关系等,该功能模块通过WEB 页面录入调度实施:调度实施是整个系统的核心模块。它根据调度配置数据完成“生成程序参数”、 “判断程序执行条件”以及“执行程序”三

3、个步骤的功能。监控:监控模块主要是负责对系统调度过程及结果的监控日常调度查询:包括查询 “程序的完成情况”、 “程序依赖数据”、“程序执行的条件”等信息监控例行报警:主要是将调度失败的程度显示出来,便于及时的处理失败的调度。用户权限管理:因为调度监控系统关系到整个数据仓库的运作,因此在该模块中必须要加强权限的管理,一旦调度关系紊乱,整个系统可能会崩溃。用户权限主要是控制“调度配置数据”模块中的权限系统约定与假设调度对象调度的对象是存储过程。因为调度实施是由ORACLE 作业结合ORACLE 存储过程来完成的,因此, 我们将调度对象统一抽象为存储过程,即任何的执行动作都必须要封装在存储过程中。事

4、件我们约定,每个存储过程每执行一次,就完成了一次事件。周期在 DSS 系统中,任何的调度都是周期性的,而不是任意的。即每个存储过程都是按照固有周期来执行,每个周期执行的参数值会随着周期数而变化。比如以天为周期的存储过程,每天都会被调度执行,每天执行的参数值会不同。目前DSS系统中的调度周期有:Day:天,以天为周期调度执行存储过程,每次执行的参数值为对应的周期值Mon:月,以月为周期调度执行存储过程,每次执行的参数值为对应的周期值Week: 周, 以周为周期调度执行存储过程,每次执行的参数值为对应的周期值Qrt: 季度, 以季度为周期调度执行存储过程,每次执行的参数值为对应的周期值表与存储过程

5、我们约定DW 中的所有表都有对应的存储过程,命名上也必须要符合一定的规则:存储过程名=PRO_+表主体名。表主体名即完整的表名省略掉_yyyymmdd 或 _yyyymm 等扩展字符串一一对应。每个表有且仅有一个对应的存储过程,每个存储过程仅对应唯一一个表对于通过加载数据的表,在调度配置数据中也必须要存在一条对应存储过程的记录因此,在DSS 中,表与存储过程在语义上是对等的。存储过程参数根据 DW 中数据存放的方式,存储过程存在两个参数:时间型参数和通道型参数时间型参数。必选参数,任何存储过程必须要有时间型参数,按照存储过 程 执 行 周 期 的 不 同 , 参 数 可 以 是 日 期 ( Y

6、YYYMMDD ) 、 月 份( YYYYMM ) 、周( WEEK) 、季度(QRT)等通道型参数。可选参数,通道参数值是各个通道的拼音简写,而且必须是大写,比如运博移动是YBYD ,由此类推依赖依赖是调度之所以存在的原因。在数据仓库中,粒度是其中核心之一,设计粒度的一个原因是使数据统计更加高效化,也就是说当我们要获取某一个具体的统计指标的时候,我们其实并不是从最原始的数据开始的,我们往往是在某个中间粒度的物理表中统计的。这就构成了一个依赖,即要统计指标A,必须要依赖中间粒度物理表B;也就是说只有在表 B 的数据生成的时候,我们才能进行指标A 的统计。因此依赖有如下要素:依赖配置。即必须要配

7、置调度对象(存储过程)的依赖对象。其实,当一个存储过程完成的时候,其依赖的对象也就随之明确了。依赖完成。判断依赖对象是否完成,实际上就是判断存储过程指定参数(或参数集)是否完成。依赖关系时 间依赖DW 系统中的周期有:日、周、月、季,各个周期间的依赖关系如下图所示:自身依赖满足每月30/31/28 天条件日月依赖日数据自身依赖季依赖日数据月满足每季度3个月条件自身依赖满足每月30/31/28 天条件日月依赖日数据自身依赖季依赖日数据月满足每季度3个月条件自身依赖季依赖月数据 季时间依赖关系图从上图我们可以看出各个时间周期之间的依赖类型:满足每周7天条件周依赖日数据自身依赖周满足每季度90/91

8、/92 天条件同周期依赖:即主存储过程与依赖存储过程的周期相同,比如都为日、 月、周、季等。 不同周期依赖:不同周期依赖必须满足大周期依赖小周期,且不能跨周期(比如周跨月,因此月不能依赖周),因此不同周期的依赖类型有:月依赖于日:当主存储过程的周期为月,依赖存储过程的周期为日。此时,判断依赖程序是否完成的时候,需要依赖存储必须满足当月所有日(28293031)完成季依赖于月:当主存储过程的周期为季,依赖存储过程的周期为月。此时,判断依赖程序是否完成的时候,需要依赖存储必须满足季度下的 3 个月全部完成季依赖于日:当主存储过程的周期为季,依赖存储过程的周期为日。此时,判断依赖程序是否完成的时候,

9、需要依赖存储必须满足季度下的 3 个月的所有日全部完成周依赖于日:当主存储过程的周期为周,依赖存储过程的周期为日。此时,判断依赖程序是否完成的时候,需要依赖存储必须满足周下的 7 日全部完成通 道依赖与时间依赖相比,通道依赖要简单些,只是通道间的对等依赖,不会存在其他类型的依赖2 2 调度2.1 整体流程DSS整体流程图2.2 调度数据配置数据录入调度的对象是存储过程,调度的实质就是执行存储过程;因此调度数据配置实际上就是配置存储过程的信息,与调度有关的基本信息有:存储过程名称:唯一标识调度对象,其命名满足PRO_+表主体名存储过程执行周期:即存储过程执行的频次,目前DSS 支持的周期有“天”

10、、 “周”、 “月”、 “季”状态:标识存储过程的状态,0:表示存储过程处于失效状态,即不再调度该存储过程参数:参数分必选(时间)参数和可选(通道)参数两种类型。时间参数格式为YYYYMM|WEEK|QRTDD ,其中 YYYY 代表年份,MM代表月份,WEEK 代表周(两位), QRT代表季度(两位), DD 为可选项,代表天;时间参数的读取必须要结合“存储过程执行周期”,比如参数值为“200901”可以代表三种含义: 2009 年 1 月份、 2009 年第一季度及 2009 年第一周;而如果周期确定,参数值业就确定了,比如如果周期为周,则200901 代表 2009年第一周依赖程序:该项

11、是多选的,即一个主存储过程可以依赖多个存储过程,这些依赖存储过程是在编写主存储过程的时候就已经确定依赖周期:存储过程的执行周期与依赖周期两者之间构成了时间依赖关系,具体的参见调度配置数据关系到整个DSS 系统的运作,因为DSS 实施调度就是根据上面的配置数据项进行的,因此如果配置数据紊乱,则会导致整个DSS系统崩溃。配置数据查询数据查询需要提供对录入数据的全信息查询,包括录入的所有信息。2.3 2.3 调度实施功能描述调度实施是DSS 系统的核心,DW 中的所有存储过程的运行都需要由DSS来调度, DSS 实施的实质就是:在什么时间运行什么存储过程?而运行一个存储过程就需要要有参数值,因此调度

12、实施模块大致可以分为三大子模块:生成参数模块,主要完成存储过程执行参数的动态生成依赖判断模块,主要判断主存储过程所依赖的存储过程在依赖周期下是否已经完成?存储过程执行模块,主要是从执行队列里面读取执行命令,并执行存储过程生成参数概 述在 DSS 系统中,所有调度对象(存储过程)的参数都是动态生成的,即存储过程的执行参数值不是一致性生成的(静态) , 而是在执行前动态生成参数的,这样设计是基于以下考虑:在 DSS系统中, 默认每个存储过程都至少存在时间周期参数,而且某些存储过程也会存在通道参数,时间周期参数可以根据执行周期一次性生成,但是通道参数会根据通道的实际情况而变化,因此为统一起见,所有的

13、参数(时间周期参数和通道参数)都由系统动态生成周期性是DSS系统的第一要素,即任何调度对象(存储过程)都是按照一定的周期来调度执行的。但是由于不可预计的原因,会导致某个周期值执行失败,这样就不能简单的用系统当前时间(或格式化)作为存储过程的执行参数。2.3.2.2 2.3.2.2 生 成参数流程2.3.3 依赖判断概 述在 DW 系统中,粒度设计为数据共享提供了数据支持,而依赖则为数据共 享提供了技术支撑。首先, DSS调度对象执行结果是将数据保存在对应的物理表中,既存储过程同一个参数值只要执行一次;如果其他存储过程需要调用该存储过程,其实是调用该存储过程对应表中的数据,而不是执行存储过程。这

14、样就会存在一个问题:DSS 如何知道访问的物理表的数据是否已经生成了?比如执行存储过程B(参数为20090301)需要访表A 中 20090301 的数据,此时,执行存储过程B(参数为20090301)的先决条件之一就是表A 对应的存储过程A(参数为20090301)已经成功执行。依赖判断模块的功能就是获取主存储过程所依赖的存储过程在依赖周期下是否已经成功完成。2.3.3.2 主 程序依赖判断主程序依赖判断2.3.3.3 2.3.3.3 判 断程序是否完成查询月执行情况: 0未完成,其它标示完成的天数参数错误否指定通道查询日执行情况:0未完成, 1 :完成查询日执行情况:所有通道查询日执行情况

15、:0未完成,其它标示完成的-1 未完成, 查询月执行情况: 0未完成,其它标示完成的天数参数错误否指定通道查询日执行情况:0未完成, 1 :完成查询日执行情况:所有通道查询日执行情况:0未完成,其它标示完成的-1 未完成, 0 :完成所有通道查询日执行情况: 0未完成,其它标示完否*天数)与查询周期有指定通道查询未完成,其它标示指定通道完成的天数0未完成,1 :完成所有通道查询月执行情况:0未完成,其它标示完成的通道个数(通道数查询月执行情况:未完成,0:完成成的通道个数通道个数判断程序是否完成2.3.4 执行存储过程在经过了“生成参数”、 “依赖判断”后,存储过程的执行命令串基本上已经形成。

16、 执行存储过程模块的内容就是从执行队列里面读取执行相关数据,拼凑成命令字符串,然后执行该命令字符串,并更新相关的状态。在目前的DSS 系统中,只有一个执行队列,在理想的情况下,执行是串行的。但是由于执行存储过程JOB 是周期性扫描执行队列,这样就会存在一个job还没有执行完,另外一个job 已经启动,这样就可能会造成进程堵塞、CPU 超负荷的后果。3 3 监控调度系统关系到整个数据仓库系统的正常运作,因此必须要提供一套完备的监控系统对其进行实时的全方位的掌控,以便对异常调度做出及时的调整修正。整个监控模块由WEB 页面支撑,主要完成“日常调度查询”及“调度异常报警”两个功能。日常调度查询日常调

17、度查询包括:执行日志查询。输入:程序名(或编号),如果不输入,则显式全部日志数据日期参数值,如果不输入日期参数,则显式近半年的日志通道参数值,如果有通道参数,则输入通道参数执行状态,下拉列表:成功、失败、成功后被覆盖输出:程序编号、程序名、程序作者、日期参数、通道参数、执行开始时间、执行结束时间、执行状态执行队列查询输入:程序名(或编号),如果不输入,则显式全部日志数据日期参数值,如果不输入日期参数,则显式近半年的日志通道参数值,如果有通道参数,则输入通道参数执行状态,下拉列表:已执行、未执行、执行中依赖状态,下拉列表:满足依赖,不满足依赖输出:程序编号、程序名、程序作者、日期参数、通道参数、

18、执行状态、依赖状态执行进度查询输入:查询方式。下拉列表:程序名、程序编号程序名(或编号),必填项,与“查询方式”结合日期参数值,必填项通道参数值,可选项查询周期,下拉列表,默认值为程序的执行周期输出:如果查询结果为“完成”,则显示一条记录,否则显示各个依赖存储过程的完成情况。调度异常报警失败异常报警显示所有执行失败的日志输入:开始时间结束时间存储过程作者失败原因输出:程序编号、程序名称、程序作者、失败原因时长异常报警显示执行时间超过一定时长的日志输入:开始时间结束时间存储过程作者执行时长执行状态输出: 程序编号、程序名称、程序作者、执行开始时间、执行结束时间、执行状态延时异常报警显示延时而未执行的程序信息输入:延时时长,单位为天输出:程序编号、程序名称、程序作者、依赖程序名称、程序周期4 用户权限管理4.1 概述管理上分四大权限模块:用户管理、数据查询、修改数据、录入数据如上图所示,DSS 系统用户用按权限分两类:管理员用户、普通用户。在权限权限管理逻辑图权限管理用户管理用户管理主要包括:新增用户。添加新的普通用户 冻结用户。将正常用户置为“冻结”状态,即使用户不可用 删除用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论