数据仓库基础
首先,让我们了解一下基本的数据仓库定义。建立数据仓库是一个创建、维护和查询的过程。Ralph Kimball将数据仓库定义为“满足查询和分析的事务处理数据的拷贝的特定结构”。创建数据仓库的过程包括数据仓库的逻辑模型和物理数据库。维护的过程包括ETL过程,即将数据从OLTP系统中抽取到数据仓库。查询的过程是从数据仓库中收集信息。简单来说,数据仓库是一个从数据中获取信息的结构。
其次,我们需要区分信息和数据之间的差别。数据仅仅是简单的事实描述,分散的数据不存在有意义的信息。举例说明:A公司在2003年1月有1000件小商品位于北京地区的仓库中。尽管有几个事实包括what (小商品), where (北京地区的仓库) 和 when (2003年1月),数据中仍然没有带来有意义的信息。另一方面,信息是数据的含义,信息来源于数据。继续A公司的例子:在2003年2月,A公司在北京地区的仓库里有1500种小商品。当与前面的数据组合起来,2003年1月有1000种小商品,我们可以从数据集成中得到信息。其中一条是北京地区的仓库中的小商品的库存量从1月到2月增加了50%。这条信息让我们有一个疑问,为什么一个月中库存增加了这么多?一月和二月之间业务上有什么问题吗?…… 这条信息让我们采取相应的行动,比如开始控制库存。信息来源于数据,信息是继续提出问题和采取行动的开端。
实时vs.近似实时
实时vs.近似实时之间的区别可以下面一个词概括:反应时间。反应时间是指行为的完成时间和该行为的数据在数据仓库中可利用时间之间的延迟。实时情况下,反应时间是可以忽略不计的;在近似实时情况下,反应时间是一段时间,比如2小时。为了使系统变得更精确,一些人使用了"实时"这个概念。
实时OLTP
OLTP中的实时性指的是能通过OLTP系统的即时响应速度让数据同步。比如A公司有订单登记和订单处理的OLTP系统。对于有实时能力的OLTP系统,当销售记录在订单登记系统中,同时订单处理系统就已经有了销售记录。数据仓库和OLTP是不同特征的系统,不管他们是否具有实时性。
实时数据仓库的定义
实时数据仓库是两种事物的组合:实时行为和数据仓库。实时行为是一种即时发生的行为。行为可以是任何事情,如超市中小商品的销售行为。一旦行为完成,就有关于它的数据。数据仓库捕获有关商业行为的数据,而实时数据仓库在商业行为发生时就捕获数据。当商业行为完成时,相关数据就已经进入到数据仓库并且能立即使用。换句话说,实时数据仓库是这样一个系统,只要行为发生、数据变得可用时,就能从中获得信息。