夜鹰教程网-程序员的加油站
 当前位置:文章中心 >> sql2016_sql2012_sql2015_sql2008
BI通用流程适用于报表方案
夜鹰教程网 来源:www.yyjcw.com 日期:2016-10-29 22:19:25
相对国内的BI来说,报表是很容易获得的,因为大多数项目都是上BI之前,先把用户手头上的报表给解决了------即使你不想要用户也会塞给你,是啊,一大堆报表看上去挺头疼的,管它呢,还是看看能发觉出什么先吧。
此图是根据个人经验总结出的一个BI通用流程,适用于报表方案,多维分析方案,但不适用于数据挖掘的方案。



BI项目关键资源:业务专家,BI开发人员,业务开发人员。

业务专家的参与有助于提高需求的准确性,BI开发人员主要负责BI过程相关资源的组织和管理,业务开发人员配合BI开发人员确认数据及业务的相关工作。

下面对这个开发流程做一个解释:

首先,从报表下手可以很容易的掌握用户所关注的东西,结合业务系统以及数据结构可以有助于对主题有个大体的印象,同事对一些用户比较关注的维度和度量才能有个概念。

但是理解业务是个需要经验和理解能力的过程,不同行业都会有不同的特点,所以这里需求人员和业务专家的参与就比较重要。另外同样也不可忽视掉包括项目相关的文档的重要性。

前四个步骤要求一定是有BI经验人参与的。这样看过报表以及系统后,对主题,度量维度等才能有个大体的规划。试想如果连主题,度量维度都不清楚为何物,那么此处根本无法进行,包括后续的维度建模。

闲话:相对国内的BI来说,报表是很容易获得的,因为大多数项目都是上BI之前,先把用户手头上的报表给解决了------即使你不想要用户也会塞给你,是啊,一大堆报表看上去挺头疼的,管它呢,还是看看能发觉出什么先吧。

模型验证,根据已建立的维度模型验证是否能满足所有的报表需求。同上,此步骤必须要有BI经验的人做。如果模型满足不了统计的要求则重新建模。这里是需要一个反复迭代的过程,每次迭代的结果都要沉淀下来并且形成文档。

反向确认数据仓库结构,手动或者系统自动均可,自动生成来说SQLServer从2005就已经支持了,不过为了命名规范,还是手动来生成数据仓库比较有必要。

分析数据来源及SSIS开发。最好是由相关模块的开发人员参与,因为开发人员是对数据结构比较了解的,并且有SQL功底,而且还掌握业务。这一步的目的是填充数据仓库。可能需要适当SSIS培训。不过,这一步公认是最耗时的。同时,不是所有的统计项就是能从业务那边解释的了的,比如某些统计概念,可能在业务系统从来就没出现过,但是通过基本数据组合都可以计算出来。所以类似概念,确认计算公式等就需要BI人员承担起需求的工作去确认。

同时,BI人员需要与业务开发人员协同制作开发数据增量的方案,以配合SSIS的开发。还有一种比较好的方法就是开发人员写SQL然后BI人员用BI的方法将其整合到方案中,总之方法很灵活,关键的就是跟开发人员的沟通。

SSAS开发,生成多维数据集,确认分区,增量等操作,建议这里一定要符合SSAS的规范,命名约定等,这样会给后续工作减少很多麻烦。

SSRS等其它开发。这一步需要参与的人员可以灵活来定,因为是需要一定的MDX经验,而且有可能需要对团队进行报表开发培训。需要指出的一点是,即使到目前的SQLServer版本,用Cube作为SSRS的数据源开发报表还不是很舒服,相关问题有时间会详细阐述,同时也希望有些问题能在下一个版本的SQLServer中解决。

数据验证,等同于测试的过程,观察统计出的数据是否有异常,比如通过单个SQL查询的方式对报表数据进行验证。如果出险问题,根据问题的实际情况再去确认是哪个环节出的问题。

最后生产环境的部署,没什么好说的了,注意管理好SSRS的报表资源就OK了,比如为了避免相互覆盖,我们可以要求报表开发人员不使用共享数据源等。

此方案还可扩展为SSAS支持的多维分析项目,相信之前通过对报表等的分析各大主题已经成型了,所以完全可以直接把Cube拿过来用。相信多维分析的方式会吸引住客户的眼球。前台分析工具很多,再次不一一做介绍。

至于是否可以继续在此基础上扩展数据挖掘的经验,aspnetx认为,这里会有资源可以继承,但是能否满足数据挖掘的需求不好说,所以还得根据具体需要解决的问题来出发。

此外,aspnetx总结的BI项目中四大“最”:

最关键的部分:维度建模,这里准确与否将决定整个项目的成败,这里也最需要经验。

最有难度的部分:主题确认。对于业务复杂的系统来说,这是一个需要时间的过程,而且需要反复迭代。

最累人的部分:SSIS开发。SQL脚本工作比较多,很累人,而且也需要耐心。

最需要的支持:客户最高领导,记住一定要是说话好使的,遇到问题能当机立断的,否则会死得很惨。

这个方案可能在不同人想法里不太一样,最常见的是认为应该先对报表进行分析,完后再针对报表内容直接分析数据来源,然后根据数据来源结果决定如何建模。个人不建议这样的方法,这样的分析工作会变得很繁琐而且重复劳动多,当然可以先对需要统计的东西汇总然后再一项一项的分析,但是你不认为按照维度建模的方式去分析是一个更好的汇总吗。

总之,仁者见仁,智者见智。还请各位高人提出更好的实施意见。
复制链接 网友评论 收藏本文 关闭此页
上一条: SSAS数据库处理速度慢的解决方案  下一条: 中字符串日期如何比较大小
夜鹰教程网成立于2008年,目前已经运营了将近 13 年,发布了大量关于 html5/css3/C#/asp.net/java/python/nodejs/mongodb/sql server/android/javascript/mysql/mvc/easyui/vue/echarts原创教程。 我们一直都在坚持的是:认证负责、一丝不苟、以工匠的精神来打磨每一套教程,让读者感受到作者的用心。我们默默投入的时间,确保每一套教程都是一件作品,而不是呆板的文字和视频! 目前我们推出在线辅导班试运营,模式为一对一辅导,教学工具为QQ。我们的辅导学科包括 java 、android原生开发、webapp开发、商城开发、C#和asp.net开发,winform和物联网开发、web前端开发,但不仅限于此。 普通班针对的是国内学员,例如想打好基础的大学生、想转行的有志青年、想深入学习的程序员、想开发软件的初学者或者业余爱好者等。 就业办针对即将毕业上岗的大四学生,或者打算转行的初级开发工程师。 留学生班针对的是在欧美、加拿大、澳洲、日本、韩国、新加坡等地留学的中国学子,目的是让大家熟练地掌握编程技能,按时完成老师布置的作业,并能顺利地通过考试。 详细咨询QQ:1416759661   夜鹰教程网  基于角色的权限管理系统(c-s/b-s)。
  夜鹰教程网  基于nodejs的聊天室开发视频教程
  夜鹰教程网  Git分布式版本管理视频教程
  夜鹰教程网  MVC+EasyUI视频教程
  夜鹰教程网  在线考试系统视频教程
  夜鹰教程网  MongoDB视频教程。
  夜鹰教程网 Canvas视频教程
  夜鹰教程网 报表开发视频教程
  热点推荐
牛人是怎样处理海量数据的
MYSQL与MSSQL UPDATE两表更新语法…
SQL SERVER常用日期函数的详解
随机查询ORDER BY NEWID()
批量插入数据 延时 SQL
用sql转换汉字为拼音
定时同步服务器上的数据
SQL Server 2008与SQL Server 200…
在XP下安装SQL Server2000 清除安…
SQL触发器实例
Mssql触发器学习例子之UPDATE触发…
两表连接的SQL语句
写一个HTML代码或C++代码分析器是…
分页存储过程!
普通行列转换 SQL(1)
  最近更新
SQL命令:增加字段、修改字段、修…
sql 中的 indexOf 与 lastIndexOf…
SQL中使用正则表达式提取或者过滤…
什么是BI?
Mongodb是一种比较常见的NOSQL数据…
SQL2008 提示评估期已过的解决方法…
存在属性(Directory, Compressed)…
属性不匹配directory,archive
sql2012安装图解教程
一条sql语句批量插入多条记录
sql2016下载
sql server2008 r2 密钥
sql2016安装密钥
sql2016安装图解教程
sql server 2012提示评估期已过的…

关于我们 | 网站建设 | 技术辅导 | 常见问题 | 联系我们 | 友情链接

夜鹰教程网 版权所有 www.yyjcw.com All rights reserved 备案号:蜀ICP备08011740号3