数据仓库的前世今生
数据仓库的起源可以追溯到计算机的发展初期,并且数据仓库是信息技术长期发展的产物,在以后也会一直发展。
一、文件系统
20世纪60年代初期,计算机领域的主要工作是创建运行在主文件上的单个应用。这些应用是以报表处理和程序为特征的,一般是以某种早期的程序设计语言如Fortran或COBOL编写的。主文件存储在廉价的磁带上面,其缺点是只能顺序访问。比如我们想得到磁带上第20分钟处的数据,那时必须顺序访问完前面的19分钟。磁带在提供廉价存储的同时,也带来了数据的大量冗余。20世纪60年代中期,大量的主文件带来了诸多问题,如:
更新数据时需要保持数据的一致性。 程序维护的复杂性。 开发新程序的复杂性。 支持所有主文件需要增加大量的硬件。 20世纪60年代 - General Mills 和Dartmouth College在一个联合研究项目中,制定了术语维度(dimensions)和事实(facts)。
二、DASD和DBMS的出现
到了1970年,出现了一种新的存储和访问技术,也就是磁盘存储器,或者称之为直接存取存储设备(Direct Access Storage Device,DASD)。磁盘存储与磁带存储的根本不同在于磁盘上的数据能够直接访问。DASD要访问第n+1条记录,不再需要顺序访问第1、2、3......n条记录,而是一旦知道了第n+1条记录的地址,就可以直接访问它。
随着DASD的发展,出现了一种称为数据库管理系统(Database Management System,DBMS)的新型系统软件。这种新型软件目的是使程序员可以方便的在DASD上面进行存储和访问。伴随着DBMS,出现了“数据库”的概念。
1975年 - Sperry Univac推出MAPPER(MAintain,Prepare,Produce Executive Reports),这是一个数据库管理和报告系统,其中包括世界上第一个第一个专为建设信息中心而设计的平台4GL(当代数据仓库技术的先驱)
三、数据仓库之父的出现
到了20世纪80年代,涌现了一些更为新颖的技术,比如个人计算机(PC)和第四代编程语言(Fourth-Generation Language,4GL)。随着PC和4GL的发展,除了高性能的在线事务处理之外,人们可以利用数据做更多的事情,比如早期的管理信息系统(Management InformationSystem,MIS),如今这种技术成为DSS。
1990年 - 由Ralph Kimball创立的Red Brick Systems推出了Red Brick Warehouse,这是一个专门用于数据仓库的数据库管理系统。
四、多个单独数据库
随着大型在线事务处理系统问世不久,出现了数据抽取技术,可以实现把想要的数据从在线事务处理系统中分离出来,这样就可以解决数据分析性能方面的问题;抽取出来的数据,给人们在使用数据方面带来了极大的灵活性,我们可以使用这些数据做各种分析。
起初,只是对在线事务处理系统中的数据进行抽取。慢慢的人们发现在抽取结果中,加上一些条件限制可以更方便的得到想要的数据。但此时的“数据仓库”是多个单独的数据库,在使用过程中慢慢出现了如下问题:
数据时间不统一 抽取程序的差异 外部数据加载问题 无公共起始数据源
以上问题就会有可能导致,不同部门抽取数据的差异,从而到时分析结果的不同。
五、数据仓库
当人们意识到无休止的抽取带来诸多问题后,开始思考是否可以建立成体系的机构化环境,以减少数据的差异,这也就是数据仓库出现的原因。数据仓库从操作型数据库中抽取数据,通过规范的加工过程,得到粒度化数据,并且这些数据时面向主题、集成、不易失、随时间变化的数据。在数据仓库的基础上,可以建立不同分析角度的BI报表系统。
随着大数据的出现,阿里大数据技术人的宣传,加上出版的一些书籍(大数据之路)对此数据仓库的传播都有着巨大的推动。