什么是数据湖?

大湖,背景是群山

作者

Matthew Kosinski

Staff Editor

IBM Think

什么是数据湖?

数据湖是一种低成本数据存储环境,旨在处理任何格式的海量原始数据,包括结构化、半结构化和非结构化数据。大多数数据湖使用基于云的对象存储,例如 AWS S3、Google Cloud Storage 或 IBM Cloud Object Storage。

数据湖出现在 2000 年代末和 2010 年代初,目的是帮助组织处理由连接互联网的应用程序和服务产生的大数据,其中大部分是非结构化数据。

与传统数据库和数据仓库不同,数据湖不要求所有数据都遵循一个定义的模式。相反,数据湖可以在一个集中的存储库中存储不同改格式、不同类型的数据。数据湖还利用云计算的优势,让数据存储更具可扩展性,也更加经济实惠。

数据湖是当今许多组织数据架构的核心组件。根据 IBM CDO 研究,75% 的一流首席数据官 (CDO) 正在投资数据湖。

数据湖凭借其灵活的存储方式,可以帮助企业打破数据孤岛,构建整体数据结构。数据湖对于数据科学家和数据工程师也很有用,他们经常使用数据湖来管理人工智能 (AI) 和机器学习 (ML) 工作负载所需的大量非结构化数据集

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

数据湖的演变

长期以来,众多组织都依赖关系型数据库(开发于 20 世纪 70 年代)和数据仓库(开发于 20 世纪 80 年代)来管理其数据。这些解决方案仍然是许多组织的 IT 生态系统的重要组成部分,但它们主要是为结构化数据集设计的。

随着互联网的发展,尤其是社交媒体和流媒体的到来,组织发现自己需要处理更多的非结构化数据,例如自由格式的文本和图像。由于严格的架构和相对昂贵的存储成本,数据仓库和关系数据库无法处理大量涌入的数据。

2011 年,时任 Pentaho 首席技术官的 James Dixon 创造了“数据湖”一词。Dixon 将数据湖视为数据仓库的替代方案。数据仓库为目标业务用例提供经过预处理的数据,而 Dixon 将数据湖设想成以其自然格式存储的大量数据。用户可以随意从这个湖中提取并使用所需的数据。

许多最早的数据湖都是基于 Apache Hadoop 构建的,后者是一个用于分布式处理大型数据集的开源软件框架。这些早期的数据湖托管在本地,但随着数据量持续激增,这一情况很快就变成了一个问题。

云计算提供了一种解决方案:将数据湖转移到更具可扩展性的云对象存储服务。

数据湖至今仍在不断发展。现在,许多数据湖解决方案不仅提供廉价、可扩展的存储,还提供数据安全和治理工具、数据目录和元数据管理等功能。

数据湖也是湖仓一体的核心组件,湖仓一体是一种相对较新的数据管理解决方案,结合了数据湖的低成本存储和仓库的高性能分析功能。(更多信息,请参阅“数据湖与湖仓一体”)。

AI Academy

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

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

数据湖架构

虽然最早的数据湖是基于 Hadoop 构建的,但现代数据湖的核心是云对象存储服务。常见的选项包括 Amazon Simple Storage Service (Amazon S3)、Microsoft Azure Blob Storage、Google Cloud Storage 和 IBM Cloud Object Storage。

云对象存储让组织能够将所有不同类型的原始数据存储在同一个数据存储中,其可扩展性和成本效益通常也高于本地存储。云存储提供商让用户能够按需启动大型集群,只需为所使用的存储付费。

存储和计算资源在数据湖架构中相互分离。要处理数据,用户必须连接外部数据处理工具。Apache Spark 是一个热门的选择,它支持 Python、R 和 Spark SQL 等接口。

将存储和计算解耦有助于降低成本并提高可扩展性。组织可以添加更多存储,而无需同时扩展计算资源。

中央数据湖存储通过摄取层连接到各种数据源,例如数据库、应用程序、物联网 (IoT) 设备和传感器。

大多数数据湖使用提取、加载、转换 (ELT) 而不是提取、转换、加载 (ETL) 流程来摄取数据。当数据湖摄取数据时,数据将保持其原始状态,直到需要时才会进行转换。这种方法(仅在访问数据时应用模式)称为“读取时模式”。

除了这些核心组件之外,组织还可以在其数据湖架构中构建其他层,使其更安全、更实用。这些层可以包括:

  • 多个不同的存储层,以适应数据处理的不同阶段。例如,数据湖可能有一层用于原始数据,一层用于已清理的数据,一层用于受信任的应用程序数据。

数据湖、数据仓库和湖仓一体

数据湖、数据仓库和湖仓一体都是数据管理工具类型,但也存在重要的区别。它们通常在集成数据架构中一起使用,以支持各种用例。

数据湖与数据仓库

与数据湖类似,数据仓库可将来自不同数据源的数据聚合到单个存储中,通常是一个关系数据库系统。主要区别在于,数据仓库会清洗和准备其采集的数据,以便将其用于数据分析。

数据仓库主要用于支持高性能查询、实时分析和商业智能 (BI)。因此,它们针对结构化数据进行了优化,并与分析引擎、仪表板和数据可视化工具紧密集成,以实现高性能。

与数据湖相比,数据仓库往往具有更昂贵、灵活性更低且可扩展性更差的存储。组织通常将数据仓库用于特定分析项目,同时依靠数据湖进行大规模、多用途存储。

数据湖与湖仓一体

湖仓一体是一种数据管理解决方案,结合了数据湖的灵活数据存储和数据仓库的高性能分析功能。

与数据湖一样,湖仓一体可以以较低的成本存储任何格式的数据。湖仓一体还在云数据湖存储系统上构建了一个仓库式的分析基础架构,合并了两种解决方案的特性。 

组织可以使用湖仓一体来支持大量工作负载,包括 AI、ML、BI 和数据分析。湖仓一体也可以作为数据架构现代化的途径。组织可以将湖仓一体安置在现有的数据湖和数据仓库旁边,而无需进行成本高昂的淘汰和替换工作。

数据湖用例

多功能存储

许多组织将数据湖作为传入数据的通用存储解决方案,因为数据湖可以轻松容纳任何格式的 PB 级数据。

组织无需为不同类型的数据设置不同的数据管道,而是可以将所有传入数据放入数据湖存储中。用户可以直接从数据湖访问数据,也可以根据需要将其移动到数据仓库或其他数据平台

组织甚至可以使用数据湖来存储尚未定义用例的“以防万一”数据。由于数据湖价格低廉且可扩展,组织不必担心将资源花在他们可能还不需要的数据上。

备份、存档和非活动数据

高存储容量和低存储成本让数据湖成为备份和灾难恢复的常见选择。

此外,数据湖也能以低廉的价格存储冷数据或不活动数据。这对于归档旧数据和维护历史记录非常有用;旧数据和历史记录可能有助于合规审计、监管查询,甚至有助于后续的新分析。

AI 和 ML 工作负载

数据湖在 AI、ML 和大数据分析工作量中发挥着重要作用,例如,在构建预测性模型和训练生成式 AI 应用程序时。这些项目需要大量的非结构化数据,而数据湖可以低成本且高效地处理这些数据。

IBM CEO 研究表明,72% 业绩最好的 CEO 认为,拥有最先进的生成式 AI 工具可以给组织带来竞争优势。鉴于 AI 和 ML 的重要性,数据湖已成为许多组织的核心数据架构投资,这是非常合理的。

数据集成

数据湖可以帮助支持数据集成计划,旨在组合并协调来自多个来源的数据,以便将其用于各种分析、操作和决策目的。

根据 IBM 商业价值研究院 的基准数据,64% 的组织表示,打破组织数据共享的障碍是他们与人员相关的最大挑战之一。研究表明,多达 68% 的组织数据从未被分析过。如果人们无法在需要时使用数据,组织就无法实现其数据的全部优势。

数据湖为组织提供了一种方法,可以轻松将所有类型的数据存储在可访问的中央存储库中,从而方便数据访问和数据共享。

数据湖的优势

数据湖可以通过简化存储、共享和使用数据的方式,帮助组织从业务数据中获得更多价值。更具体地说,数据湖可以提供以下优势:

  • 灵活性:数据湖可以摄取结构化、半结构化和非结构化数据集。组织无需为不同类型的数据维护单独的存储系统,这有助于简化数据架构。

  • 成本低:数据无需经过成本高昂的清洗和转换过程即可存储,而且云对象存储通常比本地部署的替代方案更便宜。组织可以更有效地优化数据管理计划的预算和资源。

  • 可扩展性:由于数据湖可将计算与存储资源分离,而且它们通常使用云存储服务,因此与很多其他数据存储解决方案相比更易扩展或缩减。

  • 减少数据孤岛:根据 IBM 商业价值研究院的基准数据,61% 的企业表示数据孤岛是其面临的最大挑战之一。数据湖可以消除在不同地方存储不同类型数据的需要,从而助力打破数据孤岛。与分散在各业务部门的不同数据存储相比,一个中央数据湖或一组数据湖更易于访问。

数据湖带来的挑战

数据治理和质量

由于数据湖不强制执行严格的模式并接受来自多个来源的多种不同数据类型,因此可能会面临数据治理和数据质量的困境。如果没有适当的管理,数据湖很容易成为“数据沼泽”——不可靠数据的混乱泥沼,导致用户难以获得切实可行的洞察分析。

为了应对数据沼泽,组织可以投资元数据管理系统和数据目录等标记和分类工具,让导航变得更容易。

数据治理和安全解决方案,例如访问控制数据丢失预防工具以及数据检测和响应解决方案,可以帮助确保不会在未经授权的情况下访问、使用或更改数据。

性能

数据湖没有像许多数据仓库和湖仓一体那样的内置处理和查询工具。此外,随着输入数据湖的数据量增加,查询和分析性能可能会受到影响,尤其是在数据未针对检索进行优化的情况下。

使用正确的工具和配置(例如优化的存储空间格式和查询引擎),无论数据湖的规模如何,都有助于确保高性能。

相关解决方案
IBM watsonx.data

利用混合、开放的湖仓一体,无论数据位于何处,都能为 AI 和分析所用。

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

利用湖仓一体架构因应当今的数据挑战。可以在几分钟内连接数据,快速获得可靠的洞察分析,并降低数据仓库成本。

深入了解 IBM 数据湖解决方案
数据和分析咨询服务

通过 IBM Consulting 发掘企业数据的价值,建立以洞察分析为导向的组织,实现业务优势。

了解分析服务
采取下一步行动

设计数据战略,消除数据孤岛、降低复杂性并提高数据质量,以获得卓越的客户和员工体验。

深入了解数据管理解决方案 了解 watsonx.data