什么是数据湖?用于大数据分析的大规模可扩展存储
发布时间:2022-08-25 12:58:56 所属栏目:大数据 来源:互联网
导读:时任商业智能开发商Pentaho公司首席技术官的James Dixon创造了数据湖这一术语。他将数据湖与当时流行的数据集市的典型信息孤岛进行了对比:如果将数据集市视为销售瓶装水的商店(经过清洁和包装处理以便于饮用),那么数据湖就是处于更自然状态的大片水体。
|
时任商业智能开发商Pentaho公司首席技术官的James Dixon创造了“数据湖”这一术语。他将数据湖与当时流行的数据集市的典型信息孤岛进行了对比:如果将数据集市视为销售瓶装水的商店(经过清洁和包装处理以便于饮用),那么数据湖就是处于更自然状态的大片水体。数据湖的内容从一个源头流入,填满湖泊。采用数据湖,用户可以来检查、潜入或采集样本。 从那时起,数据湖技术不断发展,现在正在与数据仓库争夺大数据存储和分析的市场份额。各种工具和产品支持数据湖中更快的SQL查询,而全球三个主要云计算提供商都提供了数据湖存储和分析。甚至还推出了将治理、安全性和分析与成本更低的存储结合起来的数据湖屋的概念。本文将深入探讨数据湖是什么、如何使用数据湖以及如何确保数据湖不会成为数据沼泽。 对数据湖的解释 数据湖本质上是一个单一的数据存储库,它保存用户的所有数据,直到准备好进行分析,或者可能只保存不适合数据仓库的数据。通常情况下,数据湖以其原生文件格式存储数据,但可以将数据转换为另一种格式以提高分析效率。拥有数据湖的目标是从数据中提取业务或其他分析的价值数据。 数据湖可以托管二进制数据(例如图像和视频)、非结构化数据(例如PDF文档)和半结构化数据(例如CSV和JSON文件)以及结构化数据(通常来自关系数据库)。结构化数据对分析更有用,但半结构化数据可以很容易地导入结构化形式中。非结构化数据通常可以使用智能自动化转换为结构化数据。 数据湖vs数据仓库 问题不在于是否需要数据湖或数据仓库。很可能两者都需要,但其目的不同,也可以将它们组合起来。首先了解数据湖和数据仓库之间的主要区别: 数据源:数据湖的典型数据源包括日志文件、来自点击流的数据、社交媒体帖子以及来自互联网连接设备的数据。数据仓库通常存储从事务数据库、业务线应用程序和操作数据库中提取的数据以供分析。 模式策略:数据湖的数据库模式通常在分析时应用,称之为读模式。企业数据仓库的数据库模式通常在创建数据存储之前设计,并在数据导入时应用于数据,这称之为写模式。 存储基础设施:数据仓库通常采用大量价格高昂的内存和SSD硬盘,以便快速提供查询结果。数据湖通常在计算机集群上使用价格较低的机械硬盘进行存储。数据仓库和数据湖都使用大规模并行处理(MPP)来加速SQL查询。 原始数据与精选数据:数据仓库中的数据应该被整理到可以将数据仓库视为企业的“单一事实来源”的程度。数据湖中的数据可能会或可能不会被管理:数据湖通常从原始数据开始,然后可以过滤和转换以进行分析。 谁使用它:数据仓库用户通常是业务分析师。数据湖用户通常是数据科学家或数据工程师,至少在最初是这样。数据在经过整理之后,业务分析师就可以访问这些数据。 分析类型:数据仓库的典型分析包括商业智能、批处理报告和可视化。对于数据湖,典型的分析包括机器学习、预测分析、数据发现和数据剖析。 什么是数据集市? 数据集市是仅限于来自单个部门或业务单位数据的分析数据库,这与数据仓库相反。数据仓库将企业的所有关系数据组合成适合分析的形式,而数据集市通过仅包含与部门相关的数据来提供有效的分析。因此,它们本质上是孤立的。有人声称孤岛无关紧要,因为业务部门不需要排除的数据。在现实生活中,这通常很重要——总有一些企业高管需要基于来自多个业务部门的组合数据的报告。这就是目前看到有很多数据湖和数据仓库而很少看到数据集市的原因之一。 数据湖上更快的SQL查询 当企业将原始数据存储在数据池中时,在数据工程师或数据科学家对数据进行处理之前,这些数据可能对业务分析师毫无用处。除了过滤和数据转换之外,数据湖还需要数据目录、数据安全性和模式定义。对于没有这些功能的数据湖来说,就是数据沼泽。 幸运的是,有很多工具可以帮助过滤和组织数据湖中的数据。例如,企业可以通过创建ORC格式的Hive元存储来满足对模式的需求。在设置完成之后,元存储通过Presto等大规模并行SQL引擎支持快速SQL查询(优化的行-列格式是一种压缩的列存储,针对Hive进行了优化,并与Presto配合使用)。 ApacheSpark是另一个大规模并行SQL引擎。虽然它可以使用ORC格式,但它更适用于另一种压缩的列式存储Parquet。Spark可以对Parquet文件执行垂直和水平分区,生成只需要读取必要数据,并可以跳过不相关数据的查询计划。 数据湖屋 Spark和MLflow背后的Databricks公司提供了他们所谓的数据湖屋(Data Lakehouse)。根据Databricks公司的介绍,数据湖屋结合了数据仓库和数据湖的最佳特性:数据湖屋将数据仓库和数据湖统一在一个简单的平台中,以处理其所有数据、分析和人工智能用例。它建立在开放且可靠的数据基础之上,可以有效处理所有数据类型,并在其所有数据和云平台上应用一种通用的安全和治理方法。 Databricks公司开源发布的DeltaLake通过直接为数据湖中的数据保证了可靠性和高性能,这构成了数据湖屋的基础。Databricks Lakehouse平台还包括Unity Catalog,它为数据和人工智能提供细粒度的治理。Databricks声称其数据湖库的性价比是数据仓库的12倍。 (编辑:南昌站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |



