助推智能体企业 观看 Think 主题演讲

什么是数据仓库?

什么是数据仓库?

数据仓库将来自各种来源的数据汇总到针对查询和分析进行优化的中央数据存储中。它通常使用提取、转换和加载 (ETL)  或提取、加载和转换 (ELT) 流程来清理、准备和组织商业智能 (BI) 和其他数据分析用例的数据。
 

数据仓库系统可以 集成来自各种源系统(包括操作数据库、交易系统客户关系管理 (CRM) 平台)的大量数据。自助服务分析工具使业务用户能够深入了解和分析这些数据以获得洞察。

数据仓库的概念出现于 20 世纪 80 年代,旨在将异构的数据集成为一致的格式以供分析。随着万维网、社交媒体和物联网 (IoT) 等新数据源数量的激增,对更大存储容量和更快分析的需求也随之增长。

数据仓库针对近乎实时的分析进行配置和优化,这意味着它们通常不适合存储大量原始的、非结构化的大数据。随着仓库中数据量的增加,存储空间的成本和复杂性也随之增加。还可能出现延迟和性能问题。

为此,出现了更灵活的替代方案,包括云原生数据仓库和湖仓一体。有关更多信息,请参阅“数据仓库与湖仓一体”。

数据仓库如何运作?

数据仓库通常使用三层架构,旨在转换数据以进行分析:

  • 底层
  • 中层
  • 顶层

底层

数据从多个源系统流入数据仓库服务器并存储在那里。传统上,数据通过提取、转换、加载 (ETL) 数据整合过程移动,该过程使用自动化来清理和组织数据,然后再将其加载到仓库中。

由于数据仓库主要存储结构化数据,因此数据转换发生在数据加载之前。一些现代仓库改用“提取、加载、转换 (ELT)”流程,即在转换数据之前将数据加载到仓库中。这种方法通常用于数据湖,它可以存储非结构化和半结构化数据,而不需要标准化格式。

中层

该层包含 Analytics Engine,通常由在线分析处理 (OLAP)  系统提供支持。虽然传统的关系数据库 (包括许多数据仓库)可以存储多维数据(销售数据可能有多个维度,如位置、时间和产品),但它们并未针对多维查询进行优化。

OLAP 系统专为对大量数据进行高速、复杂查询和多维分析而设计。它们使用“多维数据集”(基于数组的多维数据结构)来实现跨多个维度的更快、更灵活的分析。常见用例包括数据挖掘、财务分析、预算和预测规划

OLAP 多维数据集结构示意图 包含商品、销售地区和季度维度的 OLAP 多维数据集

OLAP 与 OLTP: 在线事务处理  (OLTP) 系统捕获并更新来自许多用户的大量实时事务。相比之下,OLAP 系统分析已经捕获的数据。

人们可以在数据仓库中使用三种类型的 OLAP:

  • 多维在线分析处理(MOLAP):直接使用多维 OLAP 立方体,通常是最快、最实用的多维数据分析类型。

  • 关系型在线分析处理(ROLAP):执行多维数据分析,直接对关系表中的数据进行操作,而无需先将其重组为立方体。

  • 混合联机分析处理(HOLAP):在单个 OLAP 架构内创建关系数据库和多维数据库之间的最佳分工的功能。

顶层

数据仓库的最后一层提供一个前端用户界面,用于业务数据的报告、仪表板和临时数据分析。这些自助式商业智能工具允许用户在没有技术数据工程专业知识的情况下根据历史数据生成报告、可视化趋势并确定工作流程瓶颈。

数据仓库部署模型:本地部署、云和混合

数据仓库已经发生了重大变化,从专门的内部部署系统转变为灵活的云和混合模型。

传统数据仓库

从历史上看,数据仓库是使用商品硬件进行本地部署的。这些系统采用大规模并行处理 (MPP)对称多处理 (SMP) 架构进行组织。它们也作为独立设备交付。这些部署需要大量投资。不过,对于合规性、数据安全数据隐私 标准严格的行业组织来说,它们可能是一个不错的选择。

云数据仓库

如今,许多数据仓库都是为在云中运行而构建的。它们提供云计算的优势,如 PB 级的数据存储、高度可扩展的计算和存储以及即用即付的定价。基于云的数据仓库通常以完全托管的软件即服务 (SaaS) 产品形式交付,无需对硬件或软件进行前期投资。

这种服务交付还减少了基础设施管理所需的资源,因此组织可以专注于分析和洞察。 随着组织寻求灵活扩展 并减少其内部数据中心 占用空间和传统基础设施成本,基于云的数据仓库越来越受欢迎。

混合方法

一些组织可能会采用混合模型,该模型结合了本地部署和云数据仓库的优点。这种方法使他们能够利用云的可扩展性和灵活性,同时保持对必须保留在本地的敏感工作负载的控制权。

数据仓库中的三个架构是什么?

在数据仓库中,模式 定义了数据的组织方式。存在三种常见的模式结构:星型模式、雪花模式和星系模式(也称为事实星座模式)。

这些模式都是维度数据模型 ,旨在优化 OLAP 系统中的数据检索速度。维度模型可以增加冗余度,使报告和检索信息更容易定位,并提高查询性能。

这些模式包含事实表和维度表,定义如下:

  • 事实表:存储定量数据,例如产品销量或收入金额

  • 维度表:存储与事实相关的上下文描述信息,例如销售日期和产品类别

星形架构

星型架构由一个中心事实表及其周围的维度表组成。在图表中,事实表通常出现在星形图案的中心。星型模式被认为是最简单和最常见的模式类型,有助于提升用户的查询速度。

描绘星型架构的图形 星形架构示例

雪花模式

雪花模式将一个中心事实表置于核心,大量规范化的维度表向外辐射,并且这些维度通过多对一关系进一步延伸到其他维度表。这种复杂的分支图案就像雪花一样。雪花模式的数据冗余度低,但这种好处是以较慢的查询性能为代价的。

雪花型架构示例 雪花型架构示例

星系模式

正如星系包含众多恒星,星系模式也包含多个星型模式。这些模式共享经过 规范化以减少冗余的维度表。 星系模式最适合高度复杂的数据仓库,但用户可能会体验到较低的性能。

星系模式示例 星系模式示例

数据仓库架构的组件

典型的数据仓库架构有几个组件,它们协同工作以存储、管理、处理和传递数据以供分析。

  • ETL/ELT 工具
  • API 层
  • 数据层(或中央数据库)
  • 元数据
  • 沙盒
  • 访问工具

ETL/ELT 工具

ETL 工具从源系统中提取数据,在暂存区域中进行转换,然后将其加载到数据仓库中。在 ELT 中,数据在加载到仓库后会进行转换。数据处理框架工具(例如 Apache Spark )可以帮助管理数据转换。

API 层

应用程序编程接口 (API) 连接层可以帮助数据仓库从运营系统中提取数据并与这些系统实现集成。API 还可以提供对可视化和高级分析工具的访问。

数据层(或中央数据库)

数据层(或中央数据库)是数据仓库的核心。在这里,系统集成并存储了来自各种来源的数据,例如业务应用程序、电子邮件列表、网站或其他数据库。 ETL 或 ELT  数据管道支撑这一层,而关系数据库管理系统 (RDBMS) 或云数据仓库平台为其提供动力。 内置的数据治理 和安全功能可以对数据进行分区,确保用户访问所需的内容。

元数据是关于数据的数据,用于描述系统中存储的数据,使其能够被搜索并用于分析。包括技术性元数据(如表结构和数据类型)和描述性元数据(如作者、创建日期或文件大小)。元数据是实现高效数据治理数据管理的关键。

沙盒

一些数据仓库提供了沙盒,这是一个隔离的测试环境,其中包含生产数据的副本和相关的分析工具。 数据分析师和数据科学家可以在沙盒中测试新的分析技术,而不会影响实时仓库的运行。

访问工具

访问工具连接到数据仓库,并提供可访问的前端。业务用户和数据分析师可以使用仪表板、应用程序和数据可视化工具 与数据交互并提取洞察。此类工具的示例包括 Tableau、Looker 和 Qlik。

AI Academy

数据管理是生成式 AI 的秘诀吗?

深入了解为什么高质量数据对于成功使用生成式 AI 至关重要。

数据仓库的类型

数据仓库主要分为三种类型:

  • Enterprise 数据仓库 (EDW)
  • 运营数据存储 (ODS)
  • 数据市场

企业数据仓库 (EDW)

企业数据仓库 (EDW) 是为整个企业提供服务的数据仓库。它是所有团队和学科领域历史数据的中央信息库。 企业数据仓库环境 还可能包括运营数据存储 (ODS) 和部门特定的数据市场。

运营数据存储 (ODS)

操作数据存储 (ODS) 包含最新的操作数据快照。ODS 更新频繁,可以实现近乎实时的快速访问数据。组织通常使用 ODS 进行日常运营决策和实时分析。它也可以是 EDW 或其他数据系统的数据源。

数据市场

数据市场 是现有数据仓库(或其他数据源)的子集,包含针对特定业务部门或团队(而不是整个企业)定制的数据。例如,一家公司可能有一个与营销部门一致的数据市场。这些用户无需浏览更广泛的企业数据集即可获得更聚焦的洞察,例如客户细分和营销活动表现。

数据仓库与其他类型的数据存储的对比

数据仓库、数据库、湖仓一体和数据湖这些术语有时可以互换使用,但存在重要区别。

数据仓库与数据库

数据库就像一个文件柜,主要用于自动数据采集和快速事务处理。它通常用作特定应用程序的重点数据存储。数据仓库存储来自组织中任意数量应用程序的数据,并针对预测分析和其他高级分析进行了优化。

数据仓库与数据湖

数据湖 是一种用于存储大量原始数据的低成本存储解决方案,它使用读时模式而不是预定义模式。数据湖可以存储结构化数据、非结构化数据和半结构化数据,例如文档、视频、IoT 日志和社交媒体帖子。

它们可以构建在 大数据 平台(如 Apache Hadoop )或 Cloud Object Storage 服务(如 Amazon Simple Storage Service (Amazon S3))上。它们通常不会像仓库那样清理、验证或规范化数据以进行分析。

湖仓 一体与数据仓库

 湖仓一体结合了数据仓库和数据湖的优势,提供数据湖的低成本灵活性以及数据仓库的高性能。 通过将数据湖和数据仓库的关键功能集成到单一数据平台中,湖仓可以加速处理大量结构化、 非结构化实时数据

它们还能更高效地支持机器学习、 数据科学 和 人工智能 (AI) 工作负载。 湖仓一体还可能添加共享元数据和分布式结构化查询语言 (SQL) 引擎等功能。

数据仓库的优点

数据仓库使组织中的用户能够获得洞察分析和信息,从而带来许多优点,例如:

  • 提高数据质量
  • 支持AI和机器学习
  • 增强的决策支持

提高数据质量

在将传入数据存储到仓库之前,数据仓库会通过 ELT 或 ETL 流程来准备这些数据。准备工作包括数据质量方法,如数据清理、标准化和重复数据删除。强大的数据治理策略和实践还有助于确保所有用户的数据准确性完整性

通过将高质量数据集成到单个存储中,组织可以创建一个全面可靠的单一可信信息源——这有助于消除数据孤岛。 该中央存储库使业务用户能够自信地访问组织的相关数据并将其用于业务决策。企业级数据仓库还可能包括对开源格式(如 Apache Iceberg、Parquet 和 CSV)的支持,以便在整个企业内实现进一步的数据访问和共享。

支持 AI 和机器学习

现代数据仓库可以提供干净、可靠的数据,支持各种 AI 和机器学习工作流程。数据科学家可以使用经过清理和验证的仓库数据来构建专有的生成式 AI 模型,或对现有模型进行微调,以更好地满足其独特的业务需求。

AI 就绪的数据仓库应该能够收集、清理、组织和构建数据,以及促进数据流向 AI 和机器学习平台。然而,并非所有现代数据仓库都针对 AI 工作负载进行了优化。湖仓一体正日益成为 AI 基础设施的首选数据平台。

增强的决策支持

数据仓库集中并清理不同来源的数据,以创建单一可信信息源,为组织提供全面、可靠的企业数据视图。自助服务 BI 工具使整个企业的用户能够访问这些聚合数据并运行分析查询。

通过这种方式,数据仓库使任何技术技能水平的业务用户都能发现并报告主题、趋势和汇总信息。从业务流程到财务管理和库存管理,业务领导者可以利用组织中几乎每个领域的确凿证据,利用这些洞察信息来做出更明智的决策和预测。

特定行业的数据仓库用例

数据仓库还可以用于特定行业,例如:

政府

政府:数据仓库的分析功能可以帮助政府更好地了解犯罪、人口趋势和交通模式等复杂现象。

医疗保健

集中和分析不同数据(例如账单和诊断代码、患者人口统计信息、药物和检查结果)的能力,可以为医疗保健提供者提供更深入的洞察。这些洞察有助于他们了解患者治疗效果、提高运营效率等等。

旅游和接待

组织可以利用与旅行和住宿选择相关的历史数据,更精确地向客户进行广告和促销。

制造业

产生大量数据的大型制造公司可以使用数据仓库解决方案,根据各部门的需求构建数据集市。

关于数据仓库的常见问题

我需要数据仓库吗?

如果贵组织要从多个业务系统(如业务应用程序  (BI)、网站和其他数据库)汇总大量数据,那么数据仓库可能是一个明智的选择。当您计划使用 BI 工具或仪表板进行复杂的历史分析时,它尤其有用。

如何优化数据仓库的成本?

对于成本优化,可以寻找将数据与计算资源分离的架构,这样您就能分别对它们进行扩展。 您还可以使用高性价比的  Cloud Object Storage 和基于 AI 的 工作负载管理来实现自动化资源分配。开放的数据格式可以更轻松地在数据仓库和数据湖仓之间共享数据,从而降低存储成本和复杂性。

如何处理数据仓库中的数据质量问题?

强大的 ETL/ELT 数据清洗和标准化流程、健全的数据治理策略以及能在问题出现时 发现它们的数据可观测性,都有助于解决数据质量问题。“左移”方法也有助于在更接近根因的地方发现并解决数据质量问题,而不是等到下游环节再处理。

数据仓库与数据库有何不同?

数据库主要构建用于快速事务处理,通常作为特定应用的数据存储。而数据仓库则汇总来自各种来源的大量数据,然后对其进行清洗和准备,用于商业智能、分析查询及其他高级数据分析。

数据仓库应由谁负责?

数据工程师 负责构建和维护基础设施, 首席数据官则制定 数据策略并监督 数据管理职能。商业智能团队管理 语义层和仪表板,跨职能的 数据治理团队则帮助确保 数据质量安全性

作者

Alexandra Jonker

Staff Editor

IBM Think

Jim Holdsworth

Staff Writer

IBM Think

Matthew Kosinski

Staff Editor

IBM Think

相关解决方案
IBM® watsonx.data

watsonx.data 支持您通过开放、混合和已治理数据,利用您的所有数据(无论位于何处)扩展分析和 AI。

了解 watsonx.data
数据湖解决方案

利用开放湖仓一体中的任何数据为您的应用程序、分析和 AI 提供支持

探索数据湖解决方案
数据和 AI 咨询服务

通过制定适当的战略、数据、安全和治理措施,成功实现 AI 的规模化应用。

深入了解数据和 AI 咨询服务
采取后续步骤

借助 IBM watsonx.data 统一所有数据,以用于 AI 和分析。利用混合、开放的湖仓一体,无论数据位于何处,都能为 AI 和分析所用。

  1. 了解 watsonx.data
  2. 深入了解 AI 解决方案的数据