👉👉👉 哈喽!大家好,我是【大数据的奇妙冒险】的作者 ,具有 Java 以及大数据开发经验,目前是一位大数据领域项目经理。
擅长 Java、大数据开发、项目管理等。持有 PMP 和 系统架构设计师证书,可以说是持证上岗了😀
如果有对【大数据】感兴趣的朋友,欢迎关注 公 众 号【大数据的奇妙冒险】
数据湖,它是保留了原始数据格式的存储,源端是啥,数据湖就保存啥。
它把各业务系统的结构化数据和非结构化数据抽取到数据湖,保留原始状态,提供数据用于处理、分析、挖掘等。
可能有朋友会说:这不就是数仓贴源层嘛,它和数据仓库有啥区别?
由于数仓有清晰的架构,一般是根据业务去建模,因此对于贴源层的数据,是有一定的目的性的,需要根据下层模型的需求去获取;
而数据湖则不然,数据湖的数据没有定义,基本上用到的或者没用到的数据都可能存入数据湖,等待进一步的挖掘。
数仓一般是结构化数据,一般需要先建模后取数存储;而数据湖则没有限制,可以是结构化、非结构化、半结构化数据,可能在需要用的时候再建表分析。
数据仓库是按设计构建的,难以访问和操作。数据湖几乎没有限制,并且易于访问和更改,数据支持快速更新。
数据原始性。数据湖中对于业务系统中的数据都会存储一份“一模一样”的完整拷贝。
与数仓贴源层不同的地方在于,数据湖中必须要保存一份原始数据,无论是数据格式、数据模式、数据内容都不应该被修改。
数据存储能力高。由于存储的数据比较多且复杂,对存储能要要求高。同时可以对不同数据使用不同的存储介质,比如冷热数据分离。
丰富的计算引擎。数据湖需要提供批处理、流数据处理、数据挖掘、机器学习等,有较高的计算引擎要求。
数据治理能力。不管是数据仓库还是数据湖,都需要数据治理。如果数据没有做好数据治理,有可能变成“数据沼泽”。
集成性。能够挖掘分散数据的价值,一定程度解决数据孤岛问题。虽然这也是和数据仓库共同的地方。
灵活性。数据仓库需要先设计好模型再取数据;数据湖则更加灵活,因为业务不确定性,取得数据可能随时根据需求变化。
因此,数据仓库更适合成熟规范的公司,而数据湖则更灵活,适合初创型公司,当然也不绝对,这完全取决于各公司的战略。
实际上,数据湖这个概念也是从国外传进来的。
在国内有部分企业的大数据平台和数据湖的用法类似,往里存放各种数据,提供存算能力,用于数据探索和机器学习等。
当然现在也有湖仓一体的概念,基本上也是基于大数据平台,因此也可以理解为大数据平台为数据湖提供了基础。
在笔者看来,只要满足业务需求和公司战略发展,具有较成熟的数据管理规范,叫法什么的不用太在意。
希望这篇文章对你有所帮助,转载请注明出处:【大数据的奇妙冒险】 CSDN和公z号同名。