深度数据分析现已成为企业不可或缺的一项工作。为了保持竞争优势,所有规模的企业都要利用数据分析工具从多样化的数据中捕获洞察、监控 KPI和创建报告,为做出明智决策提供支持。而所有这些工作的底层基础就是数据仓库。数据仓库是一种专门的计算机系统,旨在高效存储数据,安全、快速、同步地向数据分析师和企业决策者交付查询结果。
什么是数据仓库?
数据仓库是一种计算机系统,用于存储和分析大规模的结构化或半结构化数据。它作为一个中央信息库,供所有授权业务用户访问数据,进而开展分析,做出更明智的决策。数据仓库是大多数商务智能 (BI) 战略的关键一环。
来自各种事务系统、关系数据库以及其他来源的数据定期经过转换后加载到数据仓库。随后,数据工程师、数据科学家、业务分析师和决策者使用 BI 工具(或机器学习等其他分析应用)访问这些数据,利用它们“填充”仪表盘和生成报告。
要点
- 要保持竞争优势,企业必须以数据为基础制定决策;而要想真正实现这个目标,数据仓库必须提供强大的数据分析支持。
- 数据仓库用于分析大规模历史数据并从中捕获业务洞察。
- 如今的数据仓库支持多种数据源,是对关系数据库的一个有力补充。
- 数据仓库的未来在于云技术。
数据仓库详解
数据仓库是一种计算机系统,用于存储大规模历史数据(通常有多种来源),并对其执行查询和分析。在运行过程中,它会构建一个对于数据科学家和业务分析师具有重要价值和意义的历史记录。同时,由于进入数据仓库的数据会经过一系列清洗和准备操作,存储的这些数据都属于高质量数据,因此数据仓库中的记录也通常被视为一个组织的最终准确数据源。
数据仓库通常包括:
- 安全、自动化的数据管道 — 用以连通管理系统和数据仓库
- 清洗和准备数据的软件
- 数据和元数据管理工具
- 一个语义层 — 用以重构数据,满足复杂的快速分析和查询需求
- 从基本到高级的一系列分析与报告软件
- 用于有效展示信息的多个选件
视频:什么是数据仓库?
数据仓库的工作原理
出于分析需要,数据仓库会将关系数据和其他来源的数据转换为多维数据。在转换过程中,系统会创建元数据以加快查询和搜索速度。数据层之上的语义层会组织复杂数据并将其映射为业务语言,例如“产品”和“客户”,因此分析师无需了解数据库表名就能快速构建分析。最后,授权用户通过语义层之上的分析层来访问数据、执行数据可视化和解释数据。
数据仓库的用途
数据仓库用于在一个非生产环境中分析多种类型的业务数据。利用数据仓库,运营数据库可持续记录事务,为业务提供支持。企业可使用数据仓库来探索经营过程中积累的数据中的模式、趋势、异常值以及其他关系。
数据仓库的其他重要优势还包括:分析多种来源的数据,以及从多种类型的存储系统中提取数据。它还支持业务用户查询数据,而不会以任何方式意外更改或中断生产环境,从而确保企业数据的完整性不受破坏。
何时使用数据仓库
企业会出于很多原因使用数据仓库,以下 4 个最为典型:
-
需要分析多种来源的数据。以跟踪最有价值客户的活动为例,企业可能需要整合来自信用卡支付处理服务商的支付信息、来自自己会计系统的财务信息,以及客户在使用产品或服务过程中生成的其他数据。而数据仓库支持在一个位置集中存储和处理所有这三种来源的数据,大大简化这一过程。
-
需要分离分析数据和事务数据。举例来说,分析师可能希望采集和分析生产应用生成的活动日志数据,但为了避免业务运营中断,不直接在应用的数据库中执行操作。对此,通过自动将数据发送到旨在用于复杂查询作业的数据仓库并在数据仓库中执行操作,这一问题可轻松解决。
-
原始数据源不适合查询作业。例如,大多数 BI 工具不能很好地与 NoSQL 数据库结合使用。要处理此类数据,分析师必须首先将数据传输到数据仓库,然后使用 BI 应用访问。
-
需要加快查询速度。当对数十万行事务数据运行标准查询时,查询速度将极其缓慢。而通过使用数据仓库创建汇总表,聚合数据,查询速度将大大加快,查询效率将得到极大提升。此外,这种做法还能减轻事务数据库的负担,优化其性能。
数据仓库与数据湖对比
数据仓库可以分析多种来源(包括事务系统、运营数据库和业务线应用)的海量关系数据,最高可达数百 GB 乃至 PB(数万亿字节)规模。由于数据仓库中的数据经过了深度审编,它们可视为企业数据的最终数据或金标准。常见的数据仓库应用包括 BI 分析应用和图形可视化应用。
相比之下,数据湖可用于分析所有类型的数据,包括结构化数据(如关系数据库中的数据)和非结构化数据(如视频、文本或社交媒体数据),甚至还包括未经一致性检查、去重或审编处理的原始数据。常见的数据湖应用包括机器学习、数据发现、大数据分析以及数据剖析。
数据仓库与数据库对比
数据库旨在用于在事务发生时创建事务记录。它能够从单一来源(例如信用卡支付处理系统)“原样”捕获,而且是随着事务处理实时、持续地捕获数据。
数据仓库则旨在用于对多种来源的大规模数据执行分析。它并非以最高速度注册数据条目,而是针对快速查询海量数据进行了优化。
数据仓库与数据集市对比
数据集市可视为数据仓库的一个子集,专门用于满足特定职能部门或业务单元(例如财务、营销或销售)的需求。与全面型数据仓库相比,数据集市规模更小,但更为专业,只聚合较少来源的数据。它可以单独部署,也可以作为更大规模数据仓库的一部分进行部署。
数据仓库、数据库和数据湖如何协同运行?
很多企业综合使用数据库、数据湖和数据仓库来存储和分析数据。例如,在运营数据库中记录数据,然后将数据传输到数据仓库做进一步分析。
然而,企业数据并不仅仅来自以扁平格式存储数据的结构化数据库。
一些应用(如大数据分析、全文搜索和机器学习)会使用非结构化数据(如电话通话和手写便签)。企业会捕获并将这类非结构化数据输入数据湖,在数据湖中执行数据准备操作,供用户在数据仓库中做进一步分析。

数据仓库的功能
数据仓库专为执行数据分析而设计。为了帮助企业探索数据中的各种趋势和关系,它通常会对多种来源的大规模数据进行排序操作。数据仓库的两个核心功能为:
-
处理和管理数据,使数据满足高级分析和报告工作要求
-
存储数据,以供各种 BI 和分析应用使用。
这两大基本功能支持广泛类型的分析工具集成各种来源、各种类型的数据,然后检验数据,用以探索问题解决方案、洞察业务趋势以及预测未来业务表现。
数据仓库的类型
最初,所有数据仓库都采用本地部署模式。如今,与其他信息技术一样,数据仓库也正快速迁移到云端。以下将为您介绍各种类型的数据仓库及其特点。
本地部署数据仓库。
对于本地部署数据仓库,企业需要购买所有必要的硬件和软件,获取许可,并负责部署和维护工作。目前,本地部署数据仓库仍未退出市场,它可为企业提供多重优势:
- 完整控制整个系统,包括授权哪些用户使用以及如何使用。
- 能够自定义和定制数据仓库,以满足特定需求并优化性能。
数据仓库一体机。
数据仓库一体机也属于本地部署数据仓库。这种自包含式(也被称为“自足”)硬件使企业能够随着业务发展和组织扩张更轻松地扩展数据仓库基础设施来满足业务分析需求。不过,如今这种数据仓库一体机及一般而言的本地部署数据仓库正被所有规模的企业所淘汰,企业正纷纷迁往新型数据仓库。
云数据仓库。
与所有云技术应用一样,云数据仓库不需要企业采购和维护任何硬件与软件。企业只需按照自己在特定时间的需求支付订阅、存储空间和算力费用即可。云数据仓库的容量扩展非常简单,只要按需添加更多云技术资源即可;企业无需雇佣相应人员来管理和维护底层技术基础设施,这些工作由云技术服务提供商负责处理。云数据仓库可为企业带来诸多优势,包括:
-
可扩展性:采用云数据仓库,企业可以根据业务需求变化轻松扩展或缩减系统规模。
-
降低成本:采用云数据仓库,企业无需购买和设置任何物理服务器,从而降低前期成本,甚至降低总拥有成本。企业只需为自己需要的存储和 CPU 资源付费。这种即用即付模式消除了所有资本支出,包括旨在应对尖峰需求的额外容量支出。此外,云技术提供商将负责所有系统维护、管理和升级工作,企业也将尽可能降低这些方面的成本。
-
丰富的应用:先进的云数据仓库提供丰富的相关云技术服务,例如身份和访问管理服务以及全套数据分析工具。这有助于降低企业的软件开发成本。
-
安全性:对于云迁移,很多企业担忧安全问题,而云数据仓库的更高安全性可直击痛点。如今,先进的云技术服务提供商都在安全控制领域大力投资,且投资力度远超大多数企业。
-
高可用性:云技术服务提供商还通过大力投资来加强云数据仓库的可用性。云数据仓库一般提供 99.9% 的可用性保证,支持跨地理区域复制数据,这意味着即使发生地区性系统故障,企业也能顺利访问数据。
-
加快市场投放速度:得益于以上优势,云数据仓库可以降低市场投放延迟和阻力。企业的业务分析师和数据科学家可以更快地捕获洞察,进而加快周转速度,缩短新产品和新服务的提前期。
数据仓库的架构
在设计(或架构)上,数据仓库一般分为 3 层:
-
分析层。
分析层是直面用户的前端,通过数据可视化工具向用户展示分析结果。
-
语义层。
语义层提供可访问和分析数据的分析引擎。
-
数据层。
数据层即数据库服务器,用于转换、加载、管理和存储数据。

所有数据仓库在架构上都分为以上 3 层,但实践中企业一般会根据具体需求对数据仓库进行一些调整。以底层为例,所有数据仓库都提供一个用于存储元数据、汇总数据和原始数据的中央数据库,将其作为“吸纳”数据的信息库供企业决策者访问,进而执行分析工作。对于这一简单架构,一些企业进行了额外调整,包括:
-
暂存区(简单调整):一些数据仓库添加了一个暂存区,利用其执行数据准备,随后数据才进入中央信息库。
-
中心辐射方法:中心辐射方法能够为企业的各个业务单元提供数据集市,供其存储各自的数据子集,这能够加快分析速度,提高分析效率。
-
沙箱:虚拟沙箱是一种允许企业安全地进行数据“演练”的安全计算空间。这里的所有数据都不必遵守针对数据仓库中央信息库的治理规则。
数据仓库的模式 (Schema)
所有数据仓库都基于某种模式运行。模式是一种关于数据组织方式的设计方法,或者说逻辑描述,包含对数据仓库中各种记录的名称和描述。数据仓库有 3 种基本模式:
星型模式。
在星型模式下,数据表只有一维,即每个表仅描述一个属性,如时间、位置或售出单位数量。

雪花模式。
雪花模式较为复杂,但占用存储空间较小且更易于维护。其数据表为多维,即一个数据表不止描述一个属性,可能会细分为多个描述相关属性的表。例如,当一个销售事实表含有位置属性信息时,位置数据条目会连接到一个提供更详细信息(如城市或街道)的位置维度表,而位置维度表中的城市数据条目可能进一步连接到一个描述州/省和国家/地区信息的城市维度表。

星系模式。
星系模式(又称为“星座模式”)兼具星型模式和雪花模式的特点,既使用一维表,也使用多维表。

数据仓库的优势
数据仓库最主要或者说最重要的一项优势是支持企业分析各种类型的海量数据并构建和维护历史记录。具体而言,数据仓库的优势包括:
- 整合不同来源的数据。
- 确保数据质量、一致性和准确性。
- 在不中断事务数据库及相关业务运营的前提下执行数据分析。
- 执行历史数据分析。
- 基于以上优势助力企业做出更明智的决策。
数据仓库的不足
数据仓库具有众多优势,但也存在一些不足。主要包括:
-
数据仓库的扩展可能花费较高,在原始数据、非结构化数据和复杂数据上也表现欠佳。
-
数据仓库的运营可能给企业各部门带来额外负担。数据仓库中的数据通常由面向业务线或职能部门的 IT 团队生成。这一过程可能很简单(例如从现有数据库复制数据),也可能很复杂(例如从客户、员工或其他来源收集数据)。
-
某些情形下数据仓库属于大型 IT 项目,可能消耗大量资源。如果处理不当,数据仓库可能得不到充分利用,导致“得不偿失”。
-
在一个位置整合大规模的重要数据可能带来安全风险。例如,当数据仓库泄露客户数据时,企业可能身陷隐私信息合规和公共关系危机。
-
数据仓库的结构可能影响其灵活性和实用性。数据仓库中的数据集一般为静态数据集,通常存在数天或数周的延迟 — 相对于实际使用数据时。考虑到数据的组织方式,数据仓库可能只支持特定类型的查询作业。此外,数据仓库在调优(旨在加快处理和查询速度)上也非常复杂。
数据仓库的应用示例
以下是数据仓库在 3 个不同行业中为企业提供业务运营支持的常见状况:
-
在金融和保险行业,数据仓库用于分析客户和市场趋势。数据仓库发挥重要作用的两个业务领域是外汇交易和股票交易,因为在这些市场中,即使微小的变数也可能引发巨额损失。对于金融和交易应用,数据仓库一般采用实时数据流处理技术。
-
在零售行业,数据仓库主要用于为 BI 和预测应用提供支持。例如,跟踪产品绩效、确定最优定价、评估促销策略以及分析客户购买模式等。
-
在医疗卫生行业,数据仓库现已无处不在,广泛用于预测治疗结果、跟踪和分析人口趋势、与保险服务商共享数据以及采集和分析调查数据。
数据仓库的历史
随着计算机系统越来越普及、复杂,计算机处理的数据规模成倍增长,人们对数据存储、访问和分析的要求也越来越严苛。人们最初打造更高效的数据仓库就是为了解决这一问题,这一过程可追溯到基于微处理器的个人计算机尚未诞生,大型机包揽数据处理工作的年代。
以下是数据仓库发展过程中的一些重要里程碑:
-
1960 年 一 美国达特茅斯大学和 General Mills 在一个联合研究项目中提出了一些关于数据仓库数据表和模式的最初概念。
-
1970 年 一 Nielsen 和 IRI 推出面向零售业的数据集市。
-
1983 年 一 Teradata 推出了一个专用于提供决策支持的数据库管理系统。
现代数据仓库的概念出现于 20 世纪 80 年代,当时 IBM 员工 Paul Murphy 和 Barry Devlin 开发了 Business Data Warehouse。不过,真正被誉为“数据仓库之父”的是 William Inmon,他首次详细阐述了数据仓库的概念并使其成为了“企业信息工厂”的象征。
数据仓库的未来
数据仓库的未来在于云技术。如今,大数据和数据分析技术如火如荼,硕果累累,激起了企业对更多数据的渴求。利用云计算服务,企业可以更加经济高效地扩展数据仓库,满足日益增长的分析需求。
另外,使用基于云技术的数据仓库,企业再也不必担忧分析软件的更新问题 — 这对本地部署数据仓库而言是一大麻烦,而现在云技术提供商将负责这项工作。总之,出于种种优势,包括更高的安全性和更低的启动成本,基于云技术的数据仓库将成为未来企业的一个“必需品”。
专为当今以数据中心的企业研发的新型数据仓库
在今天,如果不能充分利用自身数据,任何企业都无法长期保持竞争优势。换言之,无论规模大小,也无论何等类型,当今所有企业都必须基于数据驱动的洞察来紧跟客户需求,提供符合最新市场趋势的产品和服务。要想充分利用数据来捕获所有洞察,企业需要一个成本更低、部署更简单且更加易用的云数据仓库。
Oracle NetSuite 分析仓库 (Oracle NetSuite Analytics Warehouse) 应运而生。它是一个新型云数据仓库,基于 Oracle Autonomous Data Warehouse 和 Oracle Analytics Cloud 技术构建,并针对 Oracle NetSuite 云技术业务应用进行了优化。Oracle NetSuite 分析仓库以预构建方式自动转换 Oracle NetSuite 应用数据并将其可视化为适用于数据仓库的适当格式,将这些数据与其他多种外部来源的数据相整合并进行分析,捕获更深入、更有意义的业务洞察。它还支持快速查询,允许数据分析师和企业决策者更加灵活地分割数据,满足各种需求。
如今,随着业务活动日渐数字化,企业必须利用数据洞察来“武装”整个组织,帮助从产品工程师到销售经理的每一个员工提高工作效能,利用数据分析来激发创新,进而驱动组织发展。否则,企业很快将落后于人。由此可见,能够为商务智能提供坚实基础的设计完善的数据仓库已成为所有规模的企业的“必需品”。
备受赞誉的仓库管理软件
预约方案演示(opens in a new tab)数据仓库常见问题解答
数据仓库的用途是什么?
数据仓库不受传统数据库的限制,可用于分析多种类型的业务数据。与大多数关系数据库不同,它可以分析多种来源的数据,以及从多种类型的存储系统中提取数据。它还支持用户查询数据,而不会以任何形式意外更改或干扰数据,从而确保企业数据的完整性不受破坏。
数据仓库的使用场景有哪些?
在零售行业,数据仓库用于预测和商务智能工作。使用场景包括追踪产品绩效、确定最优定价、评估促销策略以及分析客户购买模式等。
什么是数据仓库流程?
数据仓库会集中整合多种来源的大规模数据。在运行过程中,它会构建一个对于数据科学家和业务分析师具有重要价值和意义的历史记录。数据仓库中存储的数据为最高质量数据,数据仓库中的记录也通常被视为最终记录,这些数据构成一个企业的“单一信息源”。
很多企业综合使用数据库、数据湖和数据仓库来存储和分析数据。例如,在运营数据库中记录数据,然后将数据传输到数据仓库做进一步分析。