BI建模原则和常见问题
BI建模的质量直接影响数据仓库项目的质量,所以在建模前,要对数据仓库的架构组成、大小以及模型功能有明确的定义。
影响BI数据仓库建模的因素众多,往往会随着项目的具体情况不同而变化。但有些原则是相通的,各种项目的实施过程都需要考虑,而一些常见的、项目人员容易不解的问题也同样需要重视。
BI建模原则
1、 围绕业务情况建模:业务需求是基础,数据仓库的数据组织是面向主题的,而不是面向报表的,是面向业务分析的主题领域的,比如常见的销售分析、合同尾款分析、客户关系分析等等。
2、 保证数据的一致性:要保证数据之间逻辑关系的正确性和完整性,数据仓库要实现对数据的集成与数据的同构性,和数据的相对稳定,为实现应用而进行实时读写操作。
3、 使用调度:数据仓库要有能反映历史变化与及时准确的数据处理能力,所以BI建模增量更新时必须使用调度,即对事实数据表进行增量更新处理。在使用调度前要考虑到实际的数据量,明确数据多久更新一次。数据量大的可以每天,那么数据可以按天抽取,或者像帆软商业智能FineBI那样,采用定时增量更新;变化不大的可以一周或是更久。如果有缓慢变化维度情况,调度时需要考虑到维度表更新情况,在更新事实数据表之前要先更新维度表。
4、 需求与现实的平衡:依据业务需求提供用户可接受BI方案,在进行BI建模时需要不断在用户需求和数据源事实之间进行平衡,不光是设计人员自身平衡,企业业务人员也同样要面对这样的现实。
常见问题
1、 模型的设计如何入手?
BI建模的目的无非是为了提升管理水平,这也是上BI项目的核心意义所在。前期一定要了解清楚业务需求、业务范围等内容,明确企业对商业智能的期望和需要分析哪些主题。协同分析客户目前的管理水平、企业架构和运作流程,管理过程的薄弱点和关键点是什么,来帮助企业人员认识自己的需求。
2、实施忽略确认过程
很多项目人员在确认过企业需求后就觉得可以大刀阔斧地设计实施了,但在实际过程中往往遇到各种对不上的问题。究其原因在前期商讨过程中总会有遗漏,一些人员对业务也并非有深刻的理解,造成后续不断调整,项目周期拖延。所以在建模过程中,一定要不断地确认业务分析模型,数据能否支撑。好的商业智能BI项目实施,通常会充分了解数据抽取对象的业务系统,和业务人员充分沟通,与领导反复确认,避免企业后续的重复工作,加重企业负担。
本文转载自帆软商业智能FineBI: http://www.finebi.com/bi/?p=3362
BI建模原则和常见问题的更多相关文章
- 一起学微软Power BI系列-官方文档-入门指南(3)Power BI建模
我们前2篇文章:一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍 和一起学微软Power BI系列-官方文档-入门指南(2)获取源数据 中,我们介绍了官方入门文档与获取 ...
- 132_Power BI之建模必备要素&Power Query之数据表字段名称管理
博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 近段时间比较忙,也没有看到很好的DAX素材,很久没有更新文章了,刚好有时间就来凑个热闹. 今天主题是Power ...
- 微软Power BI技术文章与资源目录
下面是本博客原创的微软Power BI技术相关文章,对于部分转载文章和资源,会注明出处. 本博客将发布基于微软Power BI相关的基础入门文章,视频教程等资源,敬请关注. 个人建立的Power BI ...
- 《驾驭Core Data》 第三章 数据建模
本文由海水的味道编译整理,请勿转载,请勿用于商业用途. 当前版本号:0.1.2 第三章数据建模 Core Data栈配置好之后,接下来的工作就是设计对象图,在Core Data框架中,对象图被表 ...
- Open Source BI Platform List
资源入口: awesome-business-intelligence https://github.com/thenaturalist/awesome-business-intelligence h ...
- 一文读懂商业智能(BI):企业数据分析的中枢
商业智能(BI)大家可能早已耳熟能详.从早期的报表自动化,到现在的复杂灵活分析,多平台支持,优秀的人机互动,多数据抽取,大数据整合,甚至和当下最火的人工智能都有结合点.可能一提到BI,大家都会自然而然 ...
- 2017.12.23 第二章 统一建模语言UML概述
第二章 统一建模语言UML概述 (1)为什么要建模 模型是某个事物的抽象,其目的是在构建这个事物之前先来理解它,因为模型忽略了那些非本质的细节,这样有利于更好的理解和表示事物: 在软件系统开发之前首先 ...
- 公用技术——面向对象领域——UML图——《The Unified Modeling Language User Guide》V2读书笔记——第一章节(建模的意义)
第一章节到第三章节介绍UML的基本概念.第一章节主要介绍了UML语言的历史,介绍了建模的重要性(狗窝,房子,大厦),介绍了UML要实现哪些目标,在最后介绍了在使用UML语言时应该遵循的一些原则或者是规 ...
- OLAP阵营又增一猛将,比肩Power BI不是说说而已!
说到大数据应用最多的技术,不得不提OLAP技术,在国内外,不论传统公司还是互联网公司,都开始利用OLAP技术分析挖掘大数据的价值.也许很多人对OLAP的概念还不是很清楚,简单来说,就把数据处理成数据立 ...
随机推荐
- Dapper一个轻量级的ORM库
相关阅读 http://stackexchange.github.io/dapper-dot-net/ https://github.com/StackExchange/dapper-dot-net ...
- 自己实现简单的AOP(五)使Demo适应webApi、亦可完成属性自动注入
在前文的Demo中,webApi的Controller是不能自动注入的,原因是 IHttpController 和 IController 是通过两个不同的途径进行激活的. IHttpControll ...
- WCF入门教程(一)简介
WCF入门教程(一)简介 1.WCF是什么? WCF( Windows Communication Foundation), 是Microsoft为构建面向服务的应用提供的分布式通信编程框架,是.NE ...
- 如何给Ubuntu12.10 安装Vmware Tools
众所周知在VMware虚拟机中安装好了VMware Tools,才能实现主机与虚拟机之间的文件共享,同时可支持自由拖拽的功能,鼠标也可在虚拟机与主机之前自由移动(而不再用按ctrl+alT释放),而且 ...
- [moka同学收藏]Vim升华之树形目录插件NERDTree安装图解
无意中看到实验室的朋友使用的vim竟然能在左边显示树形目录,感觉很方便,这样子文件夹有什么文件一目了然.她说是一个插件叫NERDTree,安装执行后的效果如下,不是你想要的效果就别安了.我的系统是Ub ...
- c中使用gets() 提示warning: this program uses gets(), which is unsafe.
今天在C代码中使用gets()时提示“warning: this program uses gets(), which is unsafe.”,然后这个程序还能运行,无聊的我开始查阅资料,为啥gets ...
- Jsp静态包含和动态包含的区别
1 <%@include file="xxx.jsp"%>为jsp中的编译指令,其文件的包含是发生在jsp向servlet转换的时期,而<jsp:include ...
- 怎么才能算大项目(Application),大的衡量?
最近在思考一个问题,就是怎么才算一个大型项目,大的衡量有哪些东西?为什么要搞清这个问题呢,是因为在实际的开发过程中,如果知道这是个多大的项目,那就有各种相应的解决方案(我们称之为套路的东西)就可以使用 ...
- angularJs
学了差不多一个礼拜,感觉这个库还是很不错的,在应用中一些小笔记,其实这些笔记现在来看确实很基础,但是把这个博客当成我自己的一个记录历程,所以我也把这点笔记拿上来: 1.是一个js框架,是一个以js语言 ...
- iOS tableView右滑显示选择
如何使用UITableViewRowAction实现右滑选择呢? 1.在iOS8以前,我们实现tableview中滑动显示删除,置顶,更多等等的按钮时,都需要自己去实现,在iOS8中系统已经写好了,只 ...