数据湖仓一体是一种混合数据管理架构,它将数据湖和数据仓库的最佳功能结合到一个数据管理解决方案中。
数据湖是一个集中式存储库,允许以原生原始格式存储大量数据。另一方面,数据仓库是一个存储库,用于存储来自多个来源的结构化和半结构化数据,用于分析和报告目的。
数据湖仓一体旨在通过将数据湖的灵活性、规模和低成本与数据仓库的性能和 ACID(原子性、一致性、隔离性、持久性)事务相结合,弥合这两种数据管理方法之间的差距。这样就可以在单一平台中对所有数据进行商业智能和分析。
跳转到:
数据湖仓一体利用数据存储库的可扩展性、灵活性和成本效益,使组织能够摄取大量数据,而无需施加严格的架构或格式要求。
与数据湖仓一体相比,数据湖本身缺乏分析和报告所需的治理、组织和性能能力。
数据湖仓一体也不同于数据仓库。数据仓库使用提取、加载和转换 (ELT),或者使用提取、转换和加载 (ETL) 过程将结构化数据加载到关系数据库基础设施中 – 数据仓库支持企业数据分析和商业智能应用程序。然而,数据仓库在处理非结构化和半结构化数据时效率低下,因此受到限制。此外,随着数据源和数量的增长,它们的成本可能会很高。
数据湖仓一体通过将数据湖的灵活性和成本效益与数据仓库的治理、组织和性能功能相结合,解决了数据仓库和数据湖的限制和挑战。
以下用户可以利用数据湖仓一体:
我们已经确定,数据湖仓一体是数据仓库和数据湖能力的产物。它支持高效且高度灵活的数据摄取。让我们更深入地了解一下它们是如何比较的。
数据仓库是数据湖仓一体中的“房子”。数据仓库是一种专门为数据分析而设计的数据管理系统;它促进和支持商业智能 (BI) 活动。典型的数据仓库包括几个元素,例如:
数据湖是数据湖仓一体中的“湖”。数据湖是一个灵活的集中式存储库,允许您存储任何规模的所有结构化、半结构化和非结构化数据。数据湖使用读取时模式方法,这意味着在存储之前,没有必须将数据放入的预定义模式中。
此图表比较了数据湖仓一体、数据仓库和数据湖概念。
参数 | 数据湖仓一体 | 数据仓库 | 数据湖 |
---|---|---|---|
数据结构 | 结构化、半结构化和原始 | 结构化数据(表格、关系) | 非结构化、半结构化和原始 |
数据存储 | 结合结构化数据和原始数据,读取时架构 | 使用预定义的架构以高度结构化的格式存储数据 | 以原始形式(例如 JSON、CSV)存储数据,不强制执行架构 |
图式 | 合并了 schema-on-read 和 schema-on-write 的元素 | 使用称为 Star、Galaxy 和 Snowflake 架构的固定架构 | Schema-on-read,这意味着数据可以在没有预定义架构的情况下存储 |
查询性能 | 结合数据仓库和数据湖的优势,实现均衡的查询性能 | 使用索引和优化技术针对快速查询性能和分析进行了优化 | 查询性能较慢 |
数据转换 | 通常包括架构演进和 ETL 功能 | ETL 和 ELT | 内置 ETL 功能有限;在分析之前,数据通常需要进行转换 |
数据治理 | 因具体实现而异,但通常比数据湖更好 | 强大的数据治理,可控制数据访问和合规性 | 数据治理能力有限;数据可能缺少治理功能 |
使用案例 | 分析工作负载,结合结构化数据和原始数据 | 商业智能、报告、结构化分析 | 数据探索、数据引入、数据科学 |
工具和生态系统 | 利用基于云的数据平台和数据处理框架 | 通常使用传统的关系数据库系统和 ETL 工具 | 利用 Hadoop、Spark 和 NoSQL 数据库等大数据技术 |
成本 | 高性价比 | 贵 | 比数据仓库便宜 |
采用 | 在需要结构化和半结构化数据的现代分析工作负载中越来越受欢迎 | 在企业中常见于结构化数据分析 | 在大数据和数据科学场景中很常见 |
数据湖仓一体的 IT 架构由五层组成,具体如下:
数据引入是数据湖仓一体架构中的第一层。该层从各种来源收集数据,并将其传送到存储层或数据处理系统。引入层可以使用不同的协议来连接内部和外部源,例如:
引入层可以按单个、大批量或小比特执行数据提取,具体取决于数据源和数据的大小。
数据湖仓一体存储层接受所有数据类型作为经济实惠的对象存储(如 AWS S3)中的对象。
此层以开源文件格式(如 Parquet 或优化行列式 (ORC))存储结构化、非结构化和半结构化数据。数据湖仓一体可以使用分布式文件系统(如 Hadoop、分布式文件系统 (HDFS))或基于云的存储服务(如 Amazon S3)在本地实施。
这是测试文本,单击 “编辑” 按钮更改此文本。
这一层非常重要,因为它是数据湖仓一体的原点。元数据是提供有关其他数据片段的信息的数据 – 在此层中,它是一个统一的目录,其中包含数据湖对象的元数据。元数据层还为用户配备了一系列管理功能,例如:
元数据层使用户能够实施预定义的架构,以增强数据治理并启用访问控制和审计功能。
API 层是数据湖仓一体中尤为重要的组件。它允许数据工程师、数据科学家和分析师访问和操作存储在数据湖仓一体中的数据,以进行分析、报告和其他用例。
消费层是数据湖仓一体架构的最后一层,它用于托管 Power BI 和 Tableau 等工具和应用程序,使用户能够查询、分析和处理数据。消费层允许用户访问和消费存储在数据湖仓一体中的数据,用于各种业务用例。
数据湖仓一体具有许多优势,使其成为独立数据仓库或数据湖的有价值的替代解决方案。数据湖仓一体将数据仓库的优质服务和性能与数据湖的经济性和灵活的存储基础设施相结合。数据湖仓一体帮助数据用户解决以下问题。
数据湖仓一体并不是解决所有与数据相关的挑战的灵丹妙药。数据湖仓一体的概念相对较新,其全部潜力和能力仍在探索和理解中。
数据湖仓一体是一个需要从头开始构建的复杂系统。您需要选择开箱即用的数据湖仓一体解决方案,其性能变化很大,具体取决于查询类型和处理它的引擎,或者投入时间和资源来开发和维护您的自定义解决方案。
数据湖仓一体是一个新概念,代表了一种现代数据管理方法。它不是传统数据仓库或数据湖的完全替代品,而是两者的结合。
尽管数据湖仓一体提供了许多使其令人向往的优点,但它并非万无一失。您必须采取积极措施来避免和管理在使用数据湖仓一体系统时可能出现的安全风险、复杂性以及数据质量和治理问题。