FocusBI:《DW/BI项目管理》之SSIS执行情况
微信公众号:FocusBI
关注可了解更多的商业智能、数据仓库、数据库开发、爬虫知识及沪深股市数据推送。问题或建议,请关注公众号发送消息留言;
如果你觉得FocusBI对你有帮助,欢迎转发朋友圈或在文章末尾点赞[1]
《商业智能教程》pdf下载地址
链接:https://pan.baidu.com/s/1f9VdZUXztwylkOdFLbcmWw 密码:2r4v
在 FocusBI:SSIS体系结构、《SSIS开发案例》这两篇文章中讲到SSIS 开发完最终是要被执行的,但是被执行后会出现什么样的情况,如何去监控它的执行情况;这也是在BI实施中遇到的难题,当有上百个包我们应该如何管理这个SSIS的ETL 项目,虽然SSIS执行出错是有邮件通知出错了,但是它无法通知你具体是哪个地方出错,当一个项目有上百个包如何准确的定位出错和错误原因、如何清楚的知道这些包内部执行了哪些SQL 语句及包执行的时长起始时间等。
DW/BI项目管理:SSIS执行情况
这里我介绍《DW/BI项目管理》的第二个模块 SSIS执行情况,它能解决如何管理好上百个包及包内运行的状况等。
首先登录《DW/BI项目管理》 系统,单击SSIS执行情况 模块,在这个模块就会出现:SSIS执行包时间、SSIS执行的SQL、配置执行计划、配置邮件通知四个子模块,这里的配置执行计划就是把部署好的包选择好顺序会自动生成作业,这个功能在包比较少的情况下是没有多大意义的,只有当有上百个包,而且要迁移时才能帮你节省时间,如果要迁移也能做成存储过程一次性就迁移成功了,所以这个子模块就不在描述。配置邮件通知:这个子模块就是把SQL Server中的邮件模块引用进来我觉得没有多大意义,后面会取消这个模块。SSIS执行情况模块我重点讲一下执行包时间和执行的SQL 两个子模块。另外SSIS包执行错误和警告的信息在DW/BI项目管理 的首页 右侧 这个子模块是你一登录就会出现,为什么我要做成一登录就出现这些内容,即使有邮件通知SSIS的错误或警告但是毕竟是邮件有可能会遗漏。
DW/BI项目管理:SSIS执行包时间
单击 模块 SSIS执行情况中的子模块SSIS执行包时间 就会出现这个页面,页面有执行日期的查询,这里默认的是当天包执行的情况;每天只要打开这个子模块就能清晰的看到包和数据流组件运行的开始时间、结束时间、执行时长、受影响的行数。在表格中看到类型字段这个字段的内容是1代表数据流、0代表包。这里很明显是每个包中包含有多个数据流,这是很简单的业务才这么做,如果是复杂的业务就需要每一个包只包含一个数据流,这里也没有做增量包,所以在更加复杂的业务场景中需要考虑的因素更多,不管怎么复杂这个模块都能管理的很好;执行时长字段就是统计了这个包或数据流执行的时间,这个做性能优化时是非常重要的参考因素。行数字段行数很明显是显示出这个数据流处理的数据行数,这里做的是全量清除和全量抽取,没有做增量,所以这个字段对于做增量比较有意义一些。
DW/BI项目管理:SSIS执行的SQL
单击模块 SSIS执行情况中的子模块 SSIS执行的SQL 就会出现下面这个页面,包下面的某个数据流执行了什么样的SQL 语句一目了然,不管你是执行的存储过程这里也会把存储过程给显示出来,在BI实施的过程出于项目的交付需要给甲方使用可能会给甲方自己维护,所以在实施的过程中尽量都是SQL来处理较为简单的业务、存储过程处理复杂的业务,这样方便统一管理也对技术人员不要有太高深的了解SSIS的高级功能就能看懂和维护。执行的SQL字段后面的都是DBA使用的数据用于调优SQL参考的。
总结
把DW/BI项目管理中数据库表结构和SSIS执行情况两个模块结合起来使用对BI项目开发和维护非常的方便,能节约人力成本、提供开发速度、维护起来更加容易判断问题出在哪里。可以说离我的一个月只工作10天的梦想越来越近了,我需要更多系统化、智能化的思考BI项目的稳定和提前预防错误的方法。
历史文章:
FocusBI: 使用Python爬虫为BI准备数据源(原创)