什么是数据湖?它是 Archi结构:数据湖教程
什么是数据湖?
数据湖是一个存储库,可以存储大量结构化、半结构化和非结构化数据。它是以原生格式存储每种类型数据的地方,对帐户大小或文件没有固定限制。它提供大量数据以提高分析性能和原生集成。
数据湖就像一个巨大的容器,与真实的湖泊和河流非常相似。就像湖泊中有多个支流流入一样,数据湖中有结构化数据、非结构化数据、机器对机器数据、实时流经的日志。

数据湖使数据民主化,是一种经济高效的方式来存储组织的所有数据以供以后处理。研究分析师可以专注于寻找数据中的意义模式,而不是数据本身。
与等级制度不同 数据仓库 数据湖采用扁平架构,数据存储在文件和文件夹中。数据湖中的每个数据元素都被赋予一个唯一的标识符,并标有一组元数据信息。
为什么选择数据湖?
构建数据湖的主要目的是向数据科学家提供未精炼的数据视图。
使用数据湖的原因是:
- 随着存储引擎的出现 Hadoop的 存储不同的信息变得容易。无需使用数据湖将数据建模为企业范围的模式。
- 随着数据量、数据质量和元数据的增加,分析的质量也随之提高。
- 数据湖提供业务敏捷性
- 机器学习 并且人工智能可以用来做出有利可图的预测。
- 它为实施组织提供了竞争优势。
- 没有数据孤岛结构。数据湖可以360度查看客户,使分析更加可靠。
数据湖 Archi质地
该图显示了业务数据湖的架构。较低层表示大部分处于静止状态的数据,而较高层表示实时事务数据。这些数据在系统中流动时没有或几乎没有延迟。以下是数据湖中的重要层 Archi結構:
- 摄取层:左侧的层级表示数据源。数据可以批量或实时加载到数据湖中
- 洞察层: 右侧的层级代表使用系统见解的研究方面。 SQL、NoSQL 查询,甚至 Excel 都可以用于数据分析。
- 高密度文件系统 是结构化和非结构化数据的经济高效解决方案。它是系统中所有静态数据的着陆区。
- 蒸馏层 从存储轮胎中获取数据并将其转换为结构化数据以便于分析。
- 处理层 运行分析算法和用户查询,以不同的实时、交互式、批量的方式生成结构化数据,从而更容易进行分析。
- 统一操作层 管理系统管理和监控。它包括审计和熟练程度管理、数据管理、 工作流程管理.
关键数据湖 Concepts
以下是需要理解的关键数据湖概念,才能完全理解数据湖 Archi质地
资料撷取
数据提取允许连接器从不同的数据源获取数据并加载到数据湖中。
数据提取支持:
- 所有类型的结构化、半结构化和非结构化数据。
- 多种摄取,如批量、实时、一次性加载。
- 许多类型的数据源,如数据库、Web 服务器、电子邮件、 IoT和 FTP。
数据存储
数据存储应具有可扩展性,提供经济高效的存储并允许快速访问数据探索。它应支持各种数据格式。
数据治理
数据治理是管理组织中使用的数据的可用性、可用性、安全性和完整性的过程。
安全性
数据湖的每一层都需要实施安全性。从存储、挖掘和消费开始。基本需求是阻止未经授权的用户访问。它应该支持不同的工具来访问数据,并具有易于导航的 GUI 和仪表板。
身份验证、会计、授权和数据保护是数据湖安全的一些重要特征。
数据质量
数据质量是数据湖架构的重要组成部分。数据用于体现业务价值。从质量较差的数据中提取洞察将导致质量较差的洞察。
数据发现
数据发现是开始准备数据或分析之前的另一个重要阶段。在此阶段,标记技术用于通过组织和解释数据湖中摄取的数据来表达对数据的理解。
数据审计
两个主要的数据审计任务是跟踪关键数据集的变化。
- 跟踪重要数据集元素的变化
- 捕捉如何/何时/以及谁改变这些元素。
数据审计有助于评估风险和合规性。
数据沿袭
此组件处理数据的来源。它主要处理数据随时间流逝的去向以及发生了什么。它简化了从源头到目的地的数据分析过程中的错误更正。
数据探索
这是数据分析的开始阶段。在开始数据探索之前,识别正确的数据集至关重要。
所有给定的组件需要协同工作,在数据湖构建中发挥重要作用,轻松发展和探索环境。
数据湖的成熟阶段
数据湖成熟度阶段的定义在不同的教科书中有所不同。尽管关键是一样的。成熟度之后,阶段定义是从外行人的角度出发的。
第 1 阶段:大规模处理和提取数据
数据成熟度的第一阶段涉及提高转换和分析数据的能力。在此阶段,企业主需要根据自己的技能组合找到获取更多数据的工具并构建分析应用程序。
第二阶段:培养分析能力
这是第二阶段,涉及提高转换和分析数据的能力。在此阶段,公司使用最适合其技能的工具。他们开始获取更多数据并构建应用程序。在这里,企业数据仓库和数据湖的功能一起使用。
第三阶段:EDW 与数据湖协同工作
此步骤涉及将数据和分析交到尽可能多的人手中。在此阶段,数据湖和企业数据仓库开始联合工作。两者都在分析中发挥着作用
第四阶段:湖中的企业能力
在数据湖的成熟阶段,企业功能被添加到数据湖中。采用信息治理、信息生命周期管理功能和元数据管理。然而,很少有组织能够达到这种成熟度水平,但未来这一数字将会增加。
数据湖实施的最佳实践
- Archi结构组件、它们的交互和已识别的产品应支持本机数据类型
- 数据湖的设计应该由可用内容驱动,而不是由所需内容驱动。模式和数据要求只有在查询时才会定义
- 设计应该以与服务 API 集成的一次性组件为指导。
- 数据发现、提取、存储、管理、质量、转换和可视化应该独立管理。
- 数据湖架构应针对特定行业进行量身定制。它应确保该领域所需的功能是设计固有的一部分
- 更快地加入新发现的数据源非常重要
- 数据湖助力定制化管理挖掘最大价值
- 数据湖应该支持现有的企业数据管理技术和方法
构建数据湖的挑战:
- 在数据湖中,数据量更大,因此流程必须更加依赖于程序化管理
- 处理稀疏、不完整、易变的数据很困难
- 更广泛的数据集和来源需要更大的数据治理和支持
数据湖和数据仓库之间的区别
参数 | 数据湖 | 数据仓库 |
---|---|---|
时间 | 数据湖存储一切。 | 数据仓库仅关注业务流程。 |
机加工 | 数据基本未经处理 | 高度处理的数据。 |
资料类型 | 它可以是非结构化的、半结构化的和结构化的。 | 它主要采用表格形式和结构。 |
任务 | 共享数据管理 | 针对数据检索进行了优化 |
敏捷性 | 高度灵活,根据需要配置和重新配置。 | 与数据湖相比,它不太灵活并且具有固定配置。 |
用户 | 数据湖主要由数据科学家使用 | 商业专业人士广泛使用数据仓库 |
数据湖设计用于低成本存储。 | 使用具有快速响应时间的昂贵存储 | |
安全性 | 控制力较弱。 | 可以更好地控制数据。 |
EDW 的替代 | 数据湖可以作为 EDW 的来源 | 与 EDW 互补(而非替代) |
架构 | 阅读模式(无预定义模式) | 写入时模式(预定义模式) |
数据处理 | 有助于快速获取新数据。 | 引入新内容很耗时。 |
数据粒度 | 细节或粒度较低的数据。 | 摘要或聚合详细级别的数据。 |
工具 | 可以使用 Hadoop/ Map Reduce 等开源工具 | 大部分是商业工具。 |
使用数据湖的好处和风险
使用数据湖的一些主要好处如下:
- 充分帮助产品电离和高级分析
- 提供经济高效的可扩展性和灵活性
- 提供无限数据类型的价值
- 降低长期拥有成本
- 允许经济地存储文件
- 快速适应变化
- 数据湖的主要优势是 集权 不同内容源的
- 来自不同部门、分散在全球各地的用户都可以 灵活访问 数据
使用数据湖的风险:
- 一段时间后,数据湖可能会失去相关性和动力
- 设计数据湖时涉及的风险较大
- 非结构化数据可能导致无序混乱、数据不可用、工具分散且复杂、企业范围协作、统一、一致和通用
- 它还增加了存储和计算成本
- 无法从使用数据的其他人那里获得见解,因为没有考虑到以前分析师的发现的沿袭
- 数据湖的最大风险是安全性和访问控制。有时数据可以在没有任何监督的情况下放入数据湖,因为有些数据可能有隐私和监管需求
总结
- 数据湖是一个存储库,可以存储大量结构化、半结构化和非结构化数据。
- 构建数据湖的主要目的是向数据科学家提供未精炼的数据视图。
- 统一操作层、处理层、蒸馏层和 HDFS 是数据湖的重要层 Archi质地
- 数据提取、数据存储、数据质量、数据审计、数据探索、数据发现是数据湖的一些重要组成部分 Archi质地
- 数据湖的设计应该由可用资源而不是所需资源来驱动。
- 数据湖降低了长期拥有成本并实现了文件的经济存储
- 数据湖的最大风险是安全性和访问控制。有时数据可以在没有任何监督的情况下放入数据湖,因为有些数据可能有隐私和监管需求。