为什么要建立数据仓库?

通常我们为应用程序建立数据库就好了,为什么还要建立数据仓库呢?它比我们通常建立的数据库好在哪里呢?

首先看一下什么是商务智能BI?

商务智能(Business Intelligence)指的是用于支持制定业务决策的技能、流程、技术、应用和实践。核心是通过数据提取、整理、分析,最终通过分析结果制定有关策略、规划,帮助企业了解新的趋势、抓住新的市场机会、发现潜在的威胁,达到资源的合理配置,节约成本提高效益。

那么商务智能和数据仓库有什么关系呢?

数据仓库是指整个商务智能环境中数据存储的核心基础设置。

也就是说数据仓库是商业智能的基础,它为OLAP、数据挖掘提供分析和决策支持。

为什么不直接访问源业务系统,而要创建一个新的数据仓库系统呢?

通常情况下,业务系统不会保留所有的历史数据。因此,必须创建一个新的商务智能环境,确保能捕获历史上所有版本的数据。

现在的系统已经捕获并存储了所有的历史数据,那为何还要创建数据仓库呢?

1.源系统中的数据一般是为具体应用而做了优化处理,其数据结构是为某个目的专门设计的,而且没有出于分析需要把系统中的各个组件关联在一起。为了分析,必须拉数据,即把数据结构化,然后合并导入到数据仓库系统中,这样就可以分析和使用数据了。

2.此外,很多源系统已经关闭。预购的软件包通常不包含关于基础表、列以及他们之间如何相关联的文档。这使得对于数据上下文的理解变得几乎不可能。有了数据仓库,可以很容易地理解数据及其之间的关系。

现有的数据源是开源的,包含所有的文档,而且一直保存所有的数据,那为何还要创建数据仓库?

如果是这样,那么目前可能不需要创建数据仓库系统。检查是否有数据质量问题;如果有,必要的话对数据进行清洗,然后像以前那样查询数据。

如果系统响应时间很慢,那么最好的方式是创建一个新的系统,根据需求从源系统中拷贝数据。

通常来说,在商务智能系统中使用了多个数据源,数据仓库环境是合并这些不同系统以及汇总全部数据的最佳环境,允许查询在一个共同的企业环境中运行。

当前,以上问题听起来很不错,为什么不用数据仓库取代当前的业务系统?

针对业务系统设计的数据库响应时间快,一般是秒级或秒级以下;而数据仓库在多年间积累和收集的数据有数百万甚至数十亿的记录,因此响应时间可能变成数分钟或更长。

原文地址:https://www.cnblogs.com/JaneZSS/p/6678548.html