初识DataLake数据湖

夙愿已清 提交于 2019-12-06 06:43:18

维基百科对Data lake的解释数据湖是一种在系统或存储库中以自然格式存储数据的方法,它有助于以各种模式和结构形式配置数据,通常是对象块或文件。数据湖的主要思想是对企业中的所有数据进行统一存储,从原始数据(这意味着源系统数据的精确副本)转换为用于报告、可视化、分析和机器学习等各种任务的转换数据。湖中的数据包括结构化数据从关系数据库(行和列),半结构化数据(CSV、XML、JSON的日志),非结构化数据(电子邮件,文档,PDF)和二进制数据(图像、音频、视频)从而形成一个集中式数据存储容纳所有形式的数据。
数据湖的核心思想是把不同结构的数据统一存储,使不同数据有一致的存储方式,在使用时方便连接,真正解决数据集成问题。
数据湖泊和数据仓库的区别,主要就是数据仓库的数据进入这个池之前是预先分类的,这可以指导其后面如何进行数据的分析。但在大数据时代,这些都是素材而已,你根本不知道以后如何用它。也就是数据湖泊给后面的数据分析带来了更大的弹性。因此,这个放大数据的仓库,专家建议叫数据湖泊,以区别于数据仓库。

数据湖泊是包含下面两个特征的信息系统:
可以保存大数据的并行系统;
能够在数据不移动的情况下进行计算的系统。

数据湖泊的成熟度分为四个级别:
1、第一级是在没有用Hadoop之前,这个时候各个大型应用都有自己的数据库,也有自己的数据仓库来做数据分析。
2、第二级是企业引入了Hadoop。企业的应用数据和Hadoop有交互。
3、第三级是数据湖泊的成长期。新的系统直接支持Hadoop,Hadoop成为缺省配置,而数据仓库只在某些特定场景下使用,外部的数据也引入数据湖泊中。
4、第四阶段就是数据湖泊和应用云阶段。Hadoop大量采用,并且加强其可靠性、安全性。
看来,数据湖泊是构造企业差异化竞争的很好思路,而Hadoop是目前流行的实现手段。


那么,Hadoop和数据湖泊又有何关系呢?
当前,Hadoop是实现数据湖泊的最常用技术手段,但以后也许有更好的方式。也就是说,数据湖泊是一个概念,而Hadoop是实现这个概念的技术手段。


难道数据湖不是数据仓库吗?
数据湖和数据仓库都是数据存储库,这一点没有区别。数据湖以其本机格式保存大量原始数据,包括结构化的、半结构化的和非结构化的数据。在需要数据之前,没有定义数据结构和需求。
数据:数据仓库是存储数据,进行建模,存储的是结构化数据;而数据湖不在乎数据,它存储所有的结构化、半结构化和非结构化。
处理:在我们可以加载到数据仓库中的数据,我们首先需要定义好它,这叫做写模式。对于数据湖,您只需加载原始数据,然后,当您准备使用数据时,就给它一个定义,这叫做读模式。两种截然不同的方法。
存储:像Hadoop这样的大数据技术的主要特点之一是与数据仓库相比,存储数据的成本相对较低。这有两个关键原因:首先,Hadoop是开源软件,因此许可和社区支持是免费的。第二,Hadoop被设计成安装在低成本的硬件资源上。
敏捷性:根据定义,数据仓库是高度结构化的存储库。改变结构并不是技术上的困难,但是考虑到所有与之相关的业务流程将会非常耗时。另一方面,数据湖缺乏数据仓库的结构,这使得开发人员和数据科学家能够轻松地配置和重新配置他们的模型、查询和应用程序。
安全:数据仓库技术已经存在了几十年,而大数据技术(数据湖的基础)是相对较新的。因此,在数据仓库中保护数据的能力比在数据湖中保护数据要成熟。
用户:因为BI和分析的原因,用户可能已经建立了数据仓库,并邀请“每个人”来使用,但平均来说只有20%到25%的使用者。所以这些人怀疑对数据湖来说也是这样吗?当我们建立了数据湖,大家会不会来用。所以从用户差异上来看,数据仓库适合企业专业人士,而数据湖最适合数据科学家。

通过以上5点的对比,数据湖并不是数据仓库,它们有各自的目标,为实现你的业务做最好的选择。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!