保留所有数据的数据湖,将为明天创造更多的可能

本文翻译自:dataversity

作者:Amber Lee Dennis

数据湖是一个同时可以存储非结构化数据和结构化数据的池子,以原始格式存储,没有特定目的。白皮书《数据湖是什么和为什么它会流行?》中称:数据湖可以“建立在多种技术之上,比如 Hadoop、 NoSQL、 Amazon 的 S3、关系数据库或他们之中的各种组合,数据湖允许多点数据采集和多点数据访问。Pentaho Corp 的创始人詹姆斯·迪克逊(James Dixon)在2010年创造了 “数据湖” 一词,他将这个概念与数据集市进行了对比:

“如果你把数据集市想象成一个瓶装水的商店——经过清洁、包装和结构化后便于消费——那么数据湖就是一大片处于更自然状态的水域。数据湖的内容从一个源头流入,填满整个湖,湖的各种用户可以来这里查询、探索或取样。”

在《数据湖vs数据仓库:关键区别》一文中,SAS 研究所新兴技术主管塔玛拉·杜尔(Tamara Dull)将数据湖定义为“以原始格式存储原始数据的仓库,它包括了结构化、半结构化和非结构化数据”。

杜尔(Dull) 接着说,“与数据仓库相比,数据湖存储数据的成本相对较低。这样做有两个主要原因:首先,Hadoop 是开源软件,所以许可和社区支持是免费的。其次,Hadoop 的设计目标是安装在低成本的商业硬件上。

Hortonworks 公司战略副总裁肖恩·康诺利(Shaun Connolly),在他的博客文章《企业Hadoop 和数据湖之旅》中定义了数据湖:

数据湖的三个特点
第一,应收尽收。数据湖包含所有数据,包括经过长时间处理的原始数据源和任何已处理的数据。

第二,在任意地方探索。数据湖允许跨多个业务单元的用户根据自己的条件对数据进行细化、探索和丰富。

第三,灵活的访问。数据湖支持跨共享基础设施的多种数据访问模式:批处理、交互式、实时计算 、搜索、内存计算和其他处理引擎。

《数据湖首席信息官需要了解的五件事》一书的作者 Bob Violino认 为,数据湖并不是解决所有问题的灵丹妙药。他认为:“我们不能买一个现成的数据湖。虽然供应商将数据湖当作大数据项目的灵丹妙药进行营销,但这是非常荒谬的。他引用了高德纳(Gartner)研究总监尼克•赫德克(Nick Heudecker)的话:“数据湖就像数据仓库一样,是一个概念,而不是一种技术。数据湖的核心是数据存储策略。”

数据湖诞生于社交媒体巨头
普华永道(PriceWaterhouseCooper)杂志在《数据湖与孤岛数据的前景》一文中总结了数据湖概念的起源:

Hadoop 背后的基本概念是谷歌为了满足其对灵活、高成本效益的数据处理模型的需求而设计的,该模型可以随着数据量的增长而扩展。雅虎(Yahoo)、Facebook、Netflix 等公司的商业模式也建立在管理庞大数据量的基础上,它们快速采用了类似的方法。成本是其中一个因素,因为 Hadoop 的部署成本可能比传统的数据仓库要低 10 到 100 倍。另一个驱动因素是可以将劳动力密集型的架构开发和数据清理推迟到组织确定清晰的业务需求之后。数据湖更适合这些需要处理非结构化数据的公司。”

对前后数据及时分析
在预测这些数据需求是什么之前,数据湖允许为未来的需求收集数据。因此,它具有巨大的潜力。数据抓取时不受当前思考范围的限制,但可以自由回答我们尚不知道的问题。“数据本身不再受初始模式决策的约束,可以更自由地被利用。”硅谷数据科学公司战略副总裁埃德·邓比尔(Edd Dumbill)在《数据湖之梦》中写道。ThoughtWorks 数据博客的马丁·福勒(Martin Fowler)在题为“数据湖”的帖子中说:“数据湖应包含所有数据,因为你不知道今天或几年后人们会在数据中发现什么有价值的东西。”

微软 BlueGranite 博客主兼云数据解决方案架构师克里斯·坎贝尔(Chris Campbell)说,

“数据湖保留的数据不仅仅是今天正在使用的数据,还有可能是以后会被使用的数据,甚至是那些现在看来永远不会被使用的数据,因为在不确定的未来它仍然存在被使用的可能性。数据也会永久保存,这样我们就可以对过去的数据进行分析。”

塔玛拉·杜尔(Tamara Dull)补充说,”数据湖缺乏结构,使开发人员和数据科学家能够轻松地动态配置和重新配置他们的模型、查询和应用程序”。

支持多个用户
数据湖方法的另一个特性是,它满足了各种用户的需求,整个公司的用户都可以访问他们需要的从集中模式到更分布式模式的任何数据。“来自不同业务部门的用户存在改进、探索和丰富数据的潜力,” Hortonworks&Teradata 撰写的《将数据湖投入工作》中说到。

克里斯·坎贝尔(Chris Campbell)根据数据用户与数据的关系将其分为三类:只希望在电子表格上获取每日报告的用户;希望进行更多分析但又喜欢回到源头获取最初未包含的数据的用户;希望使用数据来回答全新问题的用户。他说:“ 数据湖方法同样为所有用户提供了良好的支持。”

经济高效的存储
坎贝尔(Campbell )还说,数据湖相对便宜且易于存储,因为存储成本很低,而且不需要预先格式化。“普通的、现成的服务器加上廉价的存储,就能将一个数据湖扩展到 TB 和 PB 级别相当经济划算。根据 Hortonworks & Teradata 的白皮书,数据湖的概念“为迎接大数据的挑战提供了一种具有成本效益和技术可行性的方法”。

当心“沼泽”
马丁·福勒(Martin Fowler)警告说:“人们对数据湖的普遍批评是,它只是一个质量参差不齐的数据倾倒场,更确切地说,它是一个‘数据沼泽’。”这些批评既有道理,又无关紧要。他接着说:

“原始数据的复杂性意味着有空间将数据整理成更易于管理的结构(并减少了大量数据)。不应直接访问数据湖。因为数据是原始数据,所以我们需要大量技巧才能理解它们。通常投入数据湖工作的人相对较少,当他们在数据湖中发现有用的数据视图时,他们可以创建一些数据集市,每个数据集市都有一个单一的有限背景的特定模型。”

对数据上下文的不同理解
最终用户可能不知道如何使用数据,或者在没有整理或组织数据时不知道他们在看什么,这使它的用处不大:“ 数据湖的根本问题,是它对信息用户做出了某些假设,” 尼克·海德克(Nick Heudecker)在《Gartner警告,数据湖:不要将它们与数据仓库混淆》中说到。

塔玛拉·杜尔(Tamara Dull)指出,尽管最初希望像以前的倡议那样,为全公司的每个人提供数据访问,但是全体成员参与的期望可能会令人失望:

“很长一段时间以来,人们一直在宣称'为所有人提供 BI 和分析服务!'我们已经建立了数据仓库并邀请'每个人'来,但是事实上只有 20-25% 的人会使用。数据湖也一样吗?我们会建立数据湖并邀请所有人参加吗?我认为不是。目前处于成熟状态的数据湖仍然最适合数据科学家。”

数据湖比数据仓库更好吗?
塔玛拉·杜尔(Tamara Dull)指出,数据湖不是“数据仓库2.0”,也不是数据仓库的替代品:“所以我对‘数据湖难道不就是升级版的数据仓库吗‘这个问题持否定意见”。Datameer 产品营销高级总监 John Morrell 也提供了有关数据湖的许多重要观点。这些不同的讨论解释如下:

数据仓库与数据湖
数据仓库中的数据是:结构化,已处理

数据仓库的处理方式是:写模式(数据进入仓库之前就得确定好schema)

数据仓库中的存储是:昂贵的大数据量

数据仓库中的敏捷性是:敏捷性较低,配置固定

数据仓库中的安全性是:成熟

数据仓库的用户为:业务专业人员

数据湖的数据是:结构化/半结构化/非结构化/原始

对数据湖的处理是:读取模式(数据进入数据湖前无需提前确定好schema)

在数据湖中的存储方式是:专为低成本而设计

数据湖中的敏捷性是:高度敏捷,根据需要配置和重新配置

数据湖中的安全性是:成熟

数据湖的用户是:数据科学家等

克里斯·坎贝尔(Chris Campbell)看到了两者之间的主要区别:

数据仓库:

它代表按主题领域组织的业务的抽象图片。

它是高度转换和结构化的。

在定义数据用途之前,数据不会加载到数据仓库中。

它通常遵循既定的方法。

数据湖:

所有数据都是从源系统加载的,任何数据都不会被拒绝。

数据以未转换或几乎未转换的状态存储在叶级别。

转换数据并应用模式来满足分析需求。

它支持所有用户。

它可以轻松适应变化并提供更快的洞察力。

尽管两者都有其支持者和反对者,但似乎都有余地,塔玛拉·杜尔(Tamara Dull)说:“ 数据湖不是数据仓库。它们都针对不同的目的进行了优化,目标是按照设计用途使用每个对象。换句话说,使用最好的工具来完成这项工作。”