目录
一、数据湖是什么?
数据湖是一种既能够存下海量级别任意格式原始数据,且能够将其分析和处理的理念。
二、数据仓库与数据湖
1.数据仓库理念与特点
数据仓库理念就是要将所有数据统一规范在一起,然后为其他角色提供更加精准的数据服务。
数据仓库具有集成性、主题性、稳定性、时效性和分层性。
采集 清洗 /ODS层(缓冲)
存储 计算 /DWD层 (详细信息)
数据集市 数据应用 /DWS层(不可直接使用) ADS层(可直接使用)
2.数据仓库的好处和缺点
好处:数据仓库解决了数据孤岛的问题。
缺点:数据仓库没有保存原始数据;不支持非结构化数据。
3.数据湖的好处和缺点
好处:有更好的扩展性,因此更敏捷;能访问原始数据,方便于人工智能的高级分析
缺点:不方便与报表系统直接对接
4.数据仓库与数据湖的结合
数据湖和数据仓库的关系并不是取而代之,而是可以协同使用。
例如将数据湖当作数据仓库的ODS层来使用。
例如数据湖与数据仓库结合的应用:LakeHouse(湖仓一体)
三、数据湖的一些应用
1.Delta数据湖
最早出现的,功能不完善
2.Hudi
功能完善 应用广泛
支持cow(copy on write)
支持mor(merge on read)
Hudi即支持行式存储(Avro),也支持列式存储(Parguet),虽然不能同时使用,但可以根据具体场景灵活的选择来使用。
(行式存储更适合写,列式存储更适合读)
3.Iceberg
灵活、抽象程度高,但功能不完善,有很大的发展空间!
核心思想:快照(类似timeline)
支持Spark、Flink、Presto、Hive等分析引擎
有错误和不完善的地方欢迎指正和补充!谢谢!