数据仓库是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。
数据仓库,英文名称为 Data Warehouse,可简写为 DW 或 DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。
发展历程
数据仓库是决策支持系统(dss)和联机分析应用数据源的结构化数据环境。数据仓库研究和解决从数据库中获取信息的问题。数据仓库的特征在于面向主题、集成性、稳定性和时变性。
数据仓库 ,由数据仓库之父比尔·恩门(Bill Inmon)于 1990 年提出,主要功能仍是将组织透过资讯系统之联机事务处理(OLTP)经年累月所累积的大量资料,透过数据仓库理论所特有的资料储存架构,做有系统的分析整理,以利各种分析方法如联机分析处理(OLAP)、数据挖掘(Data Mining)之进行,并进而支持如决策支持系统(DSS)、主管资讯系统(EIS)之创建,帮助决策者能快速有效的自大量资料中,分析出有价值的资讯,以利决策拟定及快速回应外在环境变动,帮助建构商业智能(BI)。
数据仓库之父比尔·恩门(Bill Inmon)在 1991 年出版的“Building the Data Warehouse”(《建立数据仓库》)一书中所提出的定义被广泛接受——数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。
特点
1、数据仓库是面向主题的;操作型数据库的数据组织面向事务处理任务,而数据仓库中的数据是按照一定的主题域进行组织。主题是指用户使用数据仓库进行决策时所关心的重点方面,一个主题通常与多个操作型信息系统相关。
2、数据仓库是集成的,数据仓库的数据有来自于分散的操作型数据,将所需数据从原来的数据中抽取出来,进行加工与集成,统一与综合之后才能进入数据仓库;
数据仓库中的数据是在对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企业的一致的全局信息。
数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一旦某个数据进入数据仓库以后,一般情况下将被长期保留,也就是数据仓库中一般有大量的查询操作,但修改和删除操作很少,通常只需要定期的加载、刷新。
数据仓库中的数据通常包含历史信息,系统记录了企业从过去某一时点(如开始应用数据仓库的时点)到当前的各个阶段的信息,通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。
3、数据仓库是不可更新的,数据仓库主要是为决策分析提供数据,所涉及的操作主要是数据的查询;
4、数据仓库是随时间而变化的,传统的关系数据库系统比较适合处理格式化的数据,能够较好的满足商业商务处理的需求。稳定的数据以只读格式保存,且不随时间改变。
5、汇总的。操作性数据映射成决策可用的格式。
6、大容量。时间序列数据集合通常都非常大。
7、非规范化的。Dw 数据可以是而且经常是冗余的。
8、元数据。将描述数据的数据保存起来。
9、数据源。数据来自内部的和外部的非集成操作系统。
数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源、为了决策需要而产生的,它并不是所谓的“大型数据库”。数据仓库的方案建设的目的,是为前端查询和分析作为基础,由于有较大的冗余,所以需要的存储也较大。为了更好地为前端应用服务,数据仓库往往有如下几点特点:
1.效率足够高。数据仓库的分析数据一般分为日、周、月、季、年等,可以看出,日为周期的数据要求的效率最高,要求 24 小时甚至 12 小时内,客户能看到昨天的数据分析。由于有的企业每日的数据量很大,设计不好的数据仓库经常会出问题,延迟 1-3 日才能给出数据,显然不行的。
2.数据质量。数据仓库所提供的各种信息,肯定要准确的数据,但由于数据仓库流程通常分为多个步骤,包括数据清洗,装载,查询,展现等等,复杂的架构会更多层次,那么由于数据源有脏数据或者代码不严谨,都可以导致数据失真,客户看到错误的信息就可能导致分析出错误的决策,造成损失,而不是效益。
3.扩展性。之所以有的大型数据仓库系统架构设计复杂,是因为考虑到了未来 3-5 年的扩展性,这样的话,未来不用太快花钱去重建数据仓库系统,就能很稳定运行。主要体现在数据建模的合理性,数据仓库方案中多出一些中间层,使海量数据流有足够的缓冲,不至于数据量大很多,就运行不起来了。
从上面的介绍中可以看出,数据仓库技术可以将企业多年积累的数据唤醒,不仅为企业管理好这些海量数据,而且挖掘数据潜在的价值,从而成为通信企业运营维护系统的亮点之一。
广义的说,基于数据仓库的决策支持系统由三个部件组成:数据仓库技术,联机分析处理技术和数据挖掘技术,其中数据仓库技术是系统的核心,在这个系列后面的文章里,将围绕数据仓库技术,介绍现代数据仓库的主要技术和数据处理的主要步骤,讨论在通信运营维护系统中如何使用这些技术为运营维护带来帮助。
4.面向主题
操作型数据库的数据组织面向事务处理任务,各个业务系统之间各自分离,而数据仓库中的数据是按照一定的主题域进行组织的。主题是与传统数据库的面向应用相对应的,是一个抽象概念,是在较高层次上将企业信息系统中的数据综合、归类并进行分析利用的抽象。每一个主题对应一个宏观的分析领域。数据仓库排除对于决策无用的数据,提供特定主题的简明视图。
用途
信息技术与数据智能大环境下,数据仓库在软硬件领域、Internet 和企业内部网解决方案以及数据库方面提供了许多经济高效的计算资源,可以保存极大量的数据供分析使用,且允许使用多种数据访问技术。
开放系统技术使得分析大量数据的成本趋于合理,并且硬件解决方案也更为成熟。在数据仓库应用中主要使用的技术如下:
并行
计算的硬件环境、操作系统环境、 数据库管理系统和所有相关的数据库操作、查询工具和技术、应用程序等各个领域都可以从并行的最新成就中获益。
分区
分区功能使得支持大型表和索引更容易,同时也提高了数据管理和查询性能。
数据压缩
数据压缩功能降低了数据仓库环境中通常需要的用于存储大量数据的磁盘系统的成本,新的数据压缩技术也已经消除了压缩数据对查询性能造成的负面影响。
技术发展
从数据库到数据仓库
企业的数据处理大致分为两类:一类是操作型处理,也称为联机事务处理,它是针对具体业务在数据库联机的日常操作,通常对少数记录进行查询、修改。另一类是分析型处理,一般针对某些主题的历史数据进行分析,支持管理决策。
两者具有不同的特征,主要体现在以下几个方面。
1、处理性能
日常业务涉及频繁、简单的数据存取,因此对操作型处理的性能要求是比较高的,需要数据库能够在很短时间内做出反应。
2、数据集成
企业的操作型处理通常较为分散,传统数据库面向应用的特性使数据集成困难。
3、数据更新
操作型处理主要由原子事务组成,数据更新频繁,需要并行控制和恢复机制。
4、数据时限
操作型处理主要服务于日常的业务操作。
5、数据综合
操作型处理系统通常只具有简单的统计功能。
数据库已经在信息技术领域有了广泛的应用,我们社会生活的各个部门,几乎都有各种各样的数据库保存着与我们的生活息息相关的各种数据。作为数据库的一个分支,数据仓库概念的提出,相对于数据库从时间上就近得多。美国著名信息工程专家 WilliamInmON 博士在 90 年代初提出了数据仓库概念的一个表述,认为:“一个数据仓库通常是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,它用于对管理决策过程的支持。”
这里的主题,是指用户使用数据仓库进行决策时所关心的重点方面,如:收入、客户、销售渠道等;所谓面向主题,是指数据仓库内的信息是按主题进行组织的,而不是像业务支撑系统那样是按照业务功能进行组织的。
集成,是指数据仓库中的信息不是从各个业务系统中简单抽取出来的,而是经过一系列加工、整理和汇总的过程,因此数据仓库中的信息是关于整个企业的一致的全局信息。
随时间变化,是指数据仓库内的信息并不只是反映企业当前的状态,而是记录了从过去某一时点到当前各个阶段的信息。
数据库安全
计算机攻击、内部人员违法行为,以及各种监管要求,正促使组织寻求新的途径来保护其在商业数据库系统中的企业和客户数据。
您可以采取八个步骤保护数据仓库并实现对关键法规的遵从。
1. 发现
使用发现工具发现敏感数据的变化。
2.漏洞和配置评估
评估数据库配置,确保它们不存在安全漏洞。这包括验证在操作系统上安装数据库的方式(比如检查数据库配置文件和可执行程序的文件权限),以及验证数据库自身内部的配置选项(比如多少次登录失败之后锁定帐户,或者为关键表分配何种权限)。
3. 加强保护
通过漏洞评估,删除不使用的所有功能和选项。
4. 变更审计
通过变更审计工具加强安全保护配置,这些工具能够比较配置的快照(在操作系统和数据库两个级别上),并在发生可能影响数据库安全的变更时,立即发出警告。
5. 数据库活动监控(DAM)
通过及时检测入侵和误用来限制信息暴露,实时监控数据库活动。
6. 审计
必须为影响安全性状态、数据完整性或敏感数据查看的所有数据库活动生成和维护安全、防否认的审计线索。
7.身份验证、访问控制和授权管理
必须对用户进行身份验证,确保每个用户拥有完整的责任,并通过管理特权来限制对数据的访问。
8. 加密
使用加密来以不可读的方式呈现敏感数据,这样攻击者就无法从数据库外部对数据进行未授权访问。
如何应对监控需求
数据,作为企业核心资产,越来越受到企业的关注,一旦发生非法访问、数据篡改、数据盗取,将给企业带来巨大损失。数据库作为数据的核心载体,其安全性就更加重要。
面对数据库的安全问题,企业常常遇到以下主要挑战:数据库被恶意访问、攻击、甚至遭到数据偷窃,而您不能及时地发现这些恶意的操作; 不了解数据使用者对数据库的访问细节,从而不能保证您对数据安全的管理;
信息安全同样会带来审计问题,当今全球对合规/ 审计要求越来越严格,由于不满足合规要求而导致处罚的事件屡见不鲜。美国《萨班斯法案》的强制性要求曾导致 2007 年 7 月 5 日中国第一家海外上市公司—华晨中国汽车控股有限公司从美国纽约证券交易所退市。
有关信息安全的合规/审计要求,中国政府也进行了大量的强化工作,例如,为了加强商业银行信息科技风险管理,银监会出台了《商业银行信息科技风险管理指引》规则,中国政府——财政部、证监会、银监会、保监会及审计署等五部委会联合发布“中国版萨班尼斯-奥克斯利法案(以下简称‘C-SOX 法案’)”——《企业内部控制基本规范》。
面对合规/审计要求,企业往往面临以下挑战:
·不能做到持续性审计
用户审计主要是针对数据库、应用系统日志做审计,这些日志内容非常庞大,DBA(数
据库管理员)和信息安全审计人员的审计工作就只能做事后分析,分析时间也长。不能做到持续性审计。
·审计并不规范
用户审计的内容和表格主要是根据外部审计人员要求和内部安全管理要素来考虑,这些
审计工作的好坏基本上取决于 DBA 和信息安全审计人员的经验和技能,这些不能有效成为公司规范和满足外部审计要求。
·数据库管理员权责没有完全区分开,导致审计效果问题
数据库管理和审计原始数据的收集实际上都是由 DBA 来做的,这就导致了 DBA 的权责不明确,DBA 没办法客观审计自己所做的工作,尽管用户设置了信息安全审计人员,但该角色的审计工作的部分证据建立在 DBA 初步审计基础上,因此审计效果与可靠性存问题。
·审计并不完整
人工审计需要面对海量的日志,不可能对所有数据进行细致审计;审计报告就未必能满足
100%可见性。
为了满足企业的信息安全、合规、审计等需求,IBM 公司推出了“CARS”企业信息架构,该架构主要从“法规遵从”(Compliance)、“信息可用”(Availability)、“信息保留”(Retention)、“信息安全”(Security) 四个方面进行了全面的满足和保护。不仅如此,IBM Guardium 数据库安全、合规、审计、监控解决方案的推出,针对了“法规遵从”和“信息安全”进行了专项治理和加强。
Guardium 数据库安全、合规、审计、监控解决方案,以软硬件一体服务器的方式,大大增强数据库安全性,满足并方便审计工作,提升性能,并简化了安装部署工作。可以防止对数据库的破坏、恶意访问、偷窃数据,可帮助判断客户关键敏感的数据在什么地方;谁在使用这些数据;控制对数据库中数据的访问,并可监控特权用户;帮助企业强制执行安全规范;检查薄弱环节、漏洞,防止对数据库配置的改动;满足合规/审计的要求,并可简化内部和外部审计、合规的过程并使其自动化,增强运作效率;管理安全的复杂性。
主要案例
Agrofert
农业、食品和化工集团 Agrofert 发现,随着企业的快速发展,旗下子公司已经有 160 多个不同的系统在运行。很难提供统一的报告,而且支持和许可成本也不断上升。如果每新购一个系统就扩大一次基础架构,显然不是一种可以扩展的战略。Agrofert 采用 SAP ERP 应用程序作为其部分子公司的共享服务,目的是将其逐渐推广到整个企业,这些应用程序在两个地点的 IBM Power Systems 服务器上集中管理。公司从混合数据库环境(包括 Oracle 和 Microsoft SQL Server)迁移到 IBM DB2,将 IBM DB2 作为其标准数据库,同时还为关键的业务数据部署集中的存储系统。迁移后,不再需要本地系统,能够极大地降低管理、支持和许可成本;借助 IBM DB2 可降低许可费用,简化管理并减少员工教育及培训;整合的存储有助于降低成本,而 IBM DB2 深度压缩将会降低总体存储需求;总成本估计减少 20%。
迪斯尼乐园
Disney 每年都有 10 亿美元商品销售收入,而建立一个 ERP 系统来处理这些信息是极具挑战性的。
最新的集中式 ERP 系统是设计用来处理商品管理、存货管理和相关业务过程的。但是 Disney 也希望平衡财务和业务智能(BI)报告和业务分析系统,这意味着建立一个新的数据仓库。Disney 在该项目中所使用的一些产品包括 SAS 分析软件和 Teradata 数据仓库技术。最新的集中式 ERP、数据仓库和分析系统正帮助 Disney 更好地管理存货、分析销售额和预报特定领域的商品需求。
构造设计
数据仓库具有改变业务的威力。它能帮助公司深入了解客户行为,预测销售趋势,确定某一组客户或产品的收益率。尽管如此,数据仓库的实现却是一个长期的、充满风险的过程。由 DM Review 发布的一项网络调查显示, 51% 受访者认为创建数据仓库的头号障碍是缺乏准确的数据。而其中最重要的一点是无法实时更新所有的数据。
有六项指导原则可帮助企业快速实现数据仓库计划并评估其过程:
·简化需求收集和设计。
公司通常会难以确定,哪些数据重要,哪些使得他们无法利用有价值的非结构化信息来驱动关键业务流程。组织应该检查一下 IT 经理是否深入理解业务计划以及支持计划所需的信息。例如源数据在哪里?需要怎样的转换能让其为关键应用程序所用?
·支持业务和 IT 用户协作。
不完整、过时或不准确的数据会导致可信信息的缺乏。要注意公司是否有一个业务术语表供用户查看、用于协作并根据他们集体业务视角进行调整?
·避免代价高昂的低级错误和返工。
明确公司是否拥有一个包含界定完善的数据模型的实施策略,应用程序提供信息?
·识别匹配信息,创建单一视图。
同一事实的多个版本会导致在管理用户、产品和合作伙伴关系方面出现问题——增加违反法规遵从性的风险。
·使用最快的、最具伸缩性的方法进行转换和发布。
明确公司是否有能够利用并行处理并重用之前转换成果的自动化过程?公司系统能否及时按需将数据发布给用户和应用程序?
·通过信息服务扩展信息可访问性。
明确企业是否能真正将信息用作共有财产?IT 专家能否保存好这些财产并让被授权者使用?信息能否在合适的时间发布到合适的地方和合适的场景下?
实现方式
数据仓库是一个过程而不是一个项目。
数据仓库系统是一个信息提供平台,他从业务处理系统获得数据,主要以星型模型和雪花模型进行数据组织,并为用户提供各种手段从数据中获取信息和知识。
从功能结构划分,数据仓库系统至少应该包含数据获取(Data Acquisition)、数据存储(Data Storage)、数据访问(Data Access)三个关键部分。
企业数据仓库的建设,是以现有企业业务系统和大量业务数据的积累为基础。数据仓库不是静态的概念,只有把信息及时交给需要这些信息的使用者,供他们做出改善其业务经营的决策,信息才能发挥作用,信息才有意义。而把信息加以整理归纳和重组,并及时提供给相应的管理决策人员,是数据仓库的根本任务。因此,从产业界的角度看,数据仓库建设是一个工程,是一个过程。
体系结构
数据源
是数据仓库系统的基础,是整个系统的数据源泉。通常包括企业内部信息和外部信息。内部信息包括存放于 RDBMS 中的各种业务处理数据和各类文档数据。外部信息包括各类法律法规、市场信息和竞争对手的信息等等;
数据的存储与管理
是整个数据仓库系统的核心。数据仓库的真正关键是数据的存储和管理。数据仓库的组织管理方式决定了它有别于传统数据库,同时也决定了其对外部数据的表现形式。要决定采用什么产品和技术来建立数据仓库的核心,则需要从数据仓库的技术特点着手分析。针对现有各业务系统的数据,进行抽取、清理,并有效集成,按照主题进行组织。数据仓库按照数据的覆盖范围可以分为企业级数据仓库和部门级数据仓库(通常称为数据集市)。
OLAP 服务器
对分析需要的数据进行有效集成,按多维模型予以组织,以便进行多角度、多层次的分析,并发现趋势。其具体实现可以分为:ROLAP(关系型在线分析处理)、MOLAP(多维在线分析处理)和 HOLAP(混合型线上分析处理)。ROLAP 基本数据和聚合数据均存放在 RDBMS 之中;MOLAP 基本数据和聚合数据均存放于多维数据库中;HOLAP 基本数据存放于 RDBMS 之中,聚合数据存放于多维数据库中。
组成
数据抽取工具
把数据从各种各样的存储方式中拿出来,进行必要的转化、整理,再存放到数据仓库内。对各种不同数据存储方式的访问能力是数据抽取工具的关键,应能生成 COBOL 程序、MVS 作业控制语言(JCL)、UNIX 脚本、和 SQL 语句等,以访问不同的数据。数据转换都包括,删除对决策应用没有意义的数据段;转换到统一的数据名称和定义;计算统计和衍生数据;给缺值数据赋给缺省值;把不同的数据定义方式统一。
数据库
是整个数据仓库环境的核心,是数据存放的地方和提供对数据检索的支持。相对于操纵型数据库来说其突出的特点是对海量数据的支持和快速的检索技术。
元数据
元数据是描述数据仓库内数据的结构和建立方法的数据。可将其按用途的不同分为两类,技术元数据和商业元数据。
技术元数据是数据仓库的设计和管理人员用于开发和日常管理数据仓库使用的数据。包括:数据源信息;数据转换的描述;数据仓库内对象和数据结构的定义;数据清理和数据更新时用的规则;源数据到目的数据的映射;用户访问权限,数据备份历史记录,数据导入历史记录,信息发布历史记录等。
商业元数据从商业业务的角度描述了数据仓库中的数据。包括:业务主题的描述,包含的数据、查询、报表;
元数据为访问数据仓库提供了一个信息目录(informationdirectory),这个目录全面描述了数据仓库中都有什么数据、这些数据怎么得到的、和怎么访问这些数据。是数据仓库运行和维护的中心,数据仓库服务器利用他来存贮和更新数据,用户通过他来了解和访问数据。
数据模型
有别于一般联机交易处理(OLTP)系统,数据模型设计是一个数据仓库设计的地基,当前两大主流理论分别为采用正规方式(normalized approach)或多维方式(dimensional approach)进行数据模型设计。 数据模型可以分为逻辑与实体数据模型。逻辑数据模型陈述业务相关数据的关系,基本上是一种与数据库无关的结构设计,通常均会采用正规方式设计,主要精神是从企业业务领域的角度及高度订出 subject area model,再逐步向下深入到 entities、attributes,在设计时不会考虑未来采用的数据库管理系统,也不需考虑分析性能问题。而实体数据模型则与数据库管理系统有关,是建置在该系统上的数据架构,故设计时需考虑数据类型(data type)、空间及性能相关的议题。 实体数据模型设计,则较多有采用正规方式或多维方式的讨论,但从实务上来说,不执著于理论,能与业务需要有最好的搭配,才是企业在建置数据仓库时的正确考量。
数据仓库的建制不仅是资讯工具技术面的运用,在规划和执行方面更需对产业知识、行销管理、市场定位、策略规划等相关业务有深入的了解,才能真正发挥数据仓库以及后续分析工具的价值,提升组织竞争力。
设计步骤
1)选择合适的主题(所要解决问题的领域)
2)明确定义事实表
3)确定和确认维
4)选择事实表
5)计算并存储事实表中的衍生数据段
6)转换维表
7)数据库数据采集
8)根据需求刷新维表
9)确定查询优先级和查询模式。
硬件平台:数据仓库的硬盘容量通常要是操作数据库硬盘容量的 2-3 倍。通常大型机具有更可靠的性能和和稳定性,也容易与历史遗留的系统结合在一起;而 PC 服务器或 UNIX 服务器更加灵活,容易操作和提供动态生成查询请求进行查询的能力。选择硬件平台时要考虑的问题:是否提供并行的 I/O 吞吐?对多 CPU 的支持能力如何?
数据仓库 DBMS:他的存储大数据量的能力、查询的性能、和对并行处理的支持如何。
网络结构:数据仓库的实施在那部分网络段上会产生大量的数据通信,需不需要对网络结构进行改进。
建模划分
数据仓库的数据建模大致分为四个阶段:
1.业务建模,这部分建模工作,主要包含以下几个部分:
划分整个单位的业务,一般按照业务部门的划分,进行各个部分之间业务工作的界定,理清各业务部门之间的关系。
深入了解各个业务部门内的具体业务流程并将其程序化。
提出修改和改进业务部门工作流程的方法并程序化。
数据建模的范围界定,整个数据仓库项目的目标和阶段划分。
2.领域概念建模,这部分得建模工作,主要包含以下几个部分:
抽取关键业务概念,并将之抽象化。
将业务概念分组,按照业务主线聚合类似的分组概念。
细化分组概念,理清分组概念内的业务流程并抽象化。
理清分组概念之间的关联,形成完整的领域概念模型。
3.逻辑建模,这部分的建模工作,主要包含以下几个部分:
业务概念实体化,并考虑其具体的属性
事件实体化,并考虑其属性内容
说明实体化,并考虑其属性内容
4.物理建模,这部分得建模工作,主要包含以下几个部分:
针对特定物理化平台,做出相应的技术调整
针对模型的性能考虑,对特定平台作出相应的调整
针对管理的需要,结合特定的平台,做出相应的调整
生成最后的执行脚本,并完善之。
建立步骤
步骤
1)收集和分析业务需求
2)建立数据模型和数据仓库的物理设计
3)定义数据源
4)选择数据仓库技术和平台
5)从操作型数据库中抽取、净化、和转换数据到数据仓库
6)选择访问和报表工具
7)选择数据库连接软件
8)选择数据分析和数据展示软件
9)更新数据仓库
效益
每一家公司都有自己的数据。并且,许多公司在计算机系统中储存有大量的数据,记录着企业购买、销售、生产过程中的大量信息和客户的信息。通常这些数据都储存在许多不同的地方。
使用数据仓库之后,企业将所有收集来的信息存放在一个唯一的地方——数据仓库。仓库中的数据按照一定的方式组织,从而使得信息容易存取并且有使用价值。
已经开发出一些专门的软件工具,使数据仓库的过程实现可以半自动化,帮助企业将数据导入数据仓库,并使用那些已经存入仓库的数据。
数据仓库给组织带来了巨大的变化。数据仓库的建立给企业带来了一些新的工作流程,其他的流程也因此而改变。
数据仓库为企业带来了一些“以数据为基础的知识”,它们主要应用于对市场战略的评价,和为企业发现新的市场商机,同时,也用来控制库存、检查生产方法和定义客户群。
通过数据仓库,可以建立企业的数据模型,这对于企业的生产与销售、成本控制与收支分配有着重要的意义,极大的节约了企业的成本,提高了经济效益,同时,用数据仓库可以分析企业人力资源与基础数据之间的关系,可以用于返回分析,保障人力资源的最大化利用,亦可以进行人力资源绩效评估,使得企业管理更加科学合理。数据仓库将企业的数据按照特定的方式组织,从而产生新的商业知识,并为企业的运作带来新的视角。
发展前期
计算机发展的早期,人们已经提出了建立数据仓库的构想。“数据仓库”一词最早是在 1990 年,由 Bill Inmon 先生提出的,其描述如下:数据仓库是为支持企业决策而特别设计和建立的数据集合。
企业建立数据仓库是为了填补现有数据存储形式已经不能满足信息分析的需要。数据仓库理论中的一个核心理念就是:事务型数据和决策支持型数据的处理性能不同。
企业在它们的事务操作收集数据。在企业运作过程中:随着定货、销售记录的进行,这些事务型数据也连续的产生。为了引入数据,我们必须优化事务型数据库。
处理决策支持型数据时,一些问题经常会被提出:哪类客户会购买哪类产品?促销后销售额会变化多少?价格变化后或者商店地址变化后销售额又会变化多少呢?在某一段时间内,相对其他产品来说哪类产品特别容易卖呢?哪些客户增加了他们的购买额?哪些客户又削减了他们的购买额呢?
事务型数据库可以为这些问题作出解答,但是它所给出的答案往往并不能让人十分满意。在运用有限的计算机资源时常常存在着竞争。在增加新信息的时候我们需要事务型数据库是空闲的。而在解答一系列具体的有关信息分析的问题的时候,系统处理新数据的有效性又会被大大降低。另一个问题就在于事务型数据总是在动态的变化之中的。决策支持型处理需要相对稳定的数据,从而问题都能得到一致连续的解答。
数据仓库的解决方法包括:将决策支持型数据处理从事务型数据处理中分离出来。数据按照一定的周期(通常在每晚或者每周末),从事务型数据库中导入决策支持型数据库——既“数据仓库”。数据仓库是按回答企业某方面的问题来分“主题”组织数据的,这是最有效的数据组织方式。
市场分析
有关决策支持型数据库的数据集市是面向企业中的某个部门或是项目小组的。一些专家顾问将数据集市的建造描述为建立数据仓库全过程中的一步。首先,一个储存企业全部信息的数据仓库被创建,其中,数据均具备有组织的、一致的、不变的格式。数据集市随后被创立,其目的是为不同部门提供他们所需要的那部分信息。数据仓库聚集了所有详细的信息,而数据集市中的数据则是针对用户们的特定需求总结而出的。
而另外一些专家则认为数据集市的建立并不需要首先建立一个数据仓库。在这个模型中,数据直接由事务型数据库转入数据集市中。一个公司可能建立有多个数据集市,而彼此之间毫无联系。
这种不在建立数据仓库的基础上创建数据集市的方式会更便宜、更快速,因为它的规模更加易于管理。
第二种观点的缺陷在于无法实现最初创建数据仓库的最主要的目的——将企业所有的数据统一为一致的格式。现有的事务处理系统的数据往往是不一致、冗余的。如果首先建立起一个全公司范围的数据仓库,组织就能够获得一个统一关于企业的活动和客户的知识库。如果先建立起一个个独立的数据集市,那么数据仓库的诸多优势都能够得以实现,但是企业远远无法做到对数据的一致的储存。
关系内容
二者的联系:
数据仓库的出现,并不是要取代数据库。大部分数据仓库还是用关系数据库管理系统来管理的。可以说,数据库、数据仓库相辅相成、各有千秋。
二者的区别:
1、出发点不同:数据库是面向事务的设计;数据仓库是面向主题设计的。
2、存储的数据不同:数据库一般存储在线交易数据;数据仓库存储的一般是历史数据。
3、设计规则不同:数据库设计是尽量避免冗余,一般采用符合范式的规则来设计;数据仓库在设计是有意引入冗余,采用反范式的方式来设计。
4、提供的功能不同:数据库是为捕获数据而设计,数据仓库是为分析数据而设计,
5、基本元素不同:数据库的基本元素是事实表,数据仓库的基本元素是维度表。
6、容量不同:数据库在基本容量上要比数据仓库小的多。
7、服务对象不同:数据库是为了高效的事务处理而设计的,服务对象为企业业务处理方面的工作人员;数据仓库是为了分析数据进行决策而设计的,服务对象为企业高层决策人员。
代表作品
Sybase – IQ
Oracle – Oracle Database / Oracle Exadata
TeraData – TeraData
IBM – Red Brick
Netezza – Netezza TwinFin
NEC – InfoFrame DWH Appliance
Microsoft – Microsoft SQL Server
Pivotal – Greenplum