Delta Lake 数据湖原理和实战.docx
《Delta Lake 数据湖原理和实战.docx》由会员分享,可在线阅读,更多相关《Delta Lake 数据湖原理和实战.docx(21页珍藏版)》请在第一文库网上搜索。
1、Delta Lake数据湖原理和实战导读:当下数据湖的概念越来越火,但到底什么是数据湖,你了解到什么程度了?好多小伙伴一直对数据湖没有一个很好的理解,今天我们将从概念和特点上,同你一起梳理下数据湖的核心知识点。数据湖这么火,到底是如何实现的,它是大数据架构的银弹吗?围绕这个问题为大家介绍数据湖的核心实现原理和实战。01我们得先知道数仓是个啥数据湖是从数据仓库的概念上发展而来的。因此在开启数据湖原理和实战之旅前,我们首先得再往前追溯一些很直接的、有强相关性的内容点,说到这就有必要回顾下数仓的基础知识了。咱就从数据仓库概念说起吧,它简称为数仓,英文名Data Warehouse,可简写为DW或DW
2、H。数据仓库是为企业决策提供所有类型数据支持的集合。企业建立数仓的主要目的是为分析性报告和决策支持目的而创建。简单介绍了数据仓库的概念,咱们看下数据有哪些特点。这将帮助我们进一步理解数仓。L数据是面向主题的:是在较高层次上对分析对象的数据的一个完整、一致的描述,能完整、统一地刻划各个分析对象所涉及的企业的各项数据,以及数据之间的联系。2 .数据是集成的:数据进入数据仓库之前,统一源数据中所有矛盾之处,如字段的同名异义、异名同义、单位不统一、字长不一致。3 .时间段内不可更新:无更新操作,不用考虑数据整性保护、并发控制;重点关注高性能查询;BI要求高。4 .数据随时间不断变化:数据仓库随时间变化
3、不断增加新的数据内容;数据仓库随时间变化不断删去旧的数据内容;数仓综合数据中很多跟时间有关。02何为数据湖及其核心要点首先我们看下数据湖的概念,数据湖指的是可以存储任意格式数据(结构化和非结构化)的存储中心。数据湖和数仓最大的区别是:数据湖对数据存储格式没有要求,可以将任何格式的感兴趣的数据轻松地放在数据湖中管理。数据湖是基于数仓概念基础上提出的,其范围比数仓更加广泛。为了便于大家更好地理解数据湖,咱们将通过数据湖与数仓的对比分析展开讲。这部分也是理解数据湖的核心,希望大家能够通过深入理解数据湖和数仓的区别,以辩证的思维方法对数据湖有个比较深入的了解,进而帮助大家实践过程中能够有更多看待问题的
4、视角,尤其是方案落地上的思考。(1)数据层面:数仓的数据大部分来自事务系统、运营数据库和业务线应用程序,有相对明确的数据结构;而数据湖的数据来自IoT设备、网站、移动应用程序、社交媒体和企业应用程序等,既包含结构化数据,也包含非结构化数据。(2) Schema层面:数仓的Schema在数据入库之前的设计阶段就产生了,而数据湖的Schema是在写入数据时实时分析数据结构而产生的。数据仓库模式是schemaon wri te,数据湖模式是 schema on reado(1)数据层面数仓的数据大部分来自事务系统(4)应用层面数据湖的数据既包含结构化数据,也包含非结构化数据数据仓库模式是schema
5、 on write(2) Schema层面数据湖模式是schema on read数据质量数仓数据质量方便比数据湖好数仓主要用于批处理报告、BI和可视化等 数据湖主要用于机器学习、预测分析、数据发现和分析(3)数据质量:因为数仓的数据数据具备完整的数据结构并且支持事务等操作,因此数据质量方面比数仓较好。(4)应用层面:数仓主要用于批处理报告、BI和可视化等;数据湖主要用于机器学习、预测分析、数据发现和分析。03数据湖面临的挑战前面通过数据湖和数仓的对比分析,大家可能会感觉数据湖真是个“好东西”,让我赶快实战起来吧。莫急,其实数据湖的概念,是随着业务对需求的变化在数仓不能满足要求的情况下提出来的
6、。不过要实现数据湖提出的愿景,其实还是面临很多具体的技术挑战。接下来咱们介绍下数据湖实现上的技术挑战。只有搞清楚了这些,我们才能对如何构建数据湖有个整体的思路,这些挑战也是数据湖要解决的核心问题。(1)对数据湖进行的读写操作不可靠。由于数据湖中数据动辄上TB,因此其读写相对耗时,不可能像关系型数据库那样以锁表加事务的方式保障数据的一致性。这样的话会引起数据写入的过程中有人读取数据,从而看到中间状态数据的情况,类似数据库中的幻读。在实际数据湖的设计中,可以通过添加版本号等方式解决。(2)数据湖的数据质量较差。由于数据湖对数据的结构没有要求,因此大量的各种非结构化的数据会存入数据湖,这样会对后期数
7、据湖中的数据治理,带来很大的挑战。(3)随着数据量的增加,性能变差。随着对数据湖中数据操作的增加,元数据也会不断增加,并且数据湖架构一般不会删除元数据信息,因此元数据湖不断膨胀,处理数据的作业在元数据的查询上会消耗大量的时间。图4(4)更新数据湖中的记录,非常困难。数据湖中的数据更新需要工程师通过复杂逻辑实现,维护困难。(5)数据如何回滚方面:数据处理过程中错误是不可避免的,因此数据湖要有良好的回滚方案保障数据的完整性。结合前面的分享,不难发现,要实现数据湖提出的愿景,还是有很多具体的技术难题需要解决。04copy-On-Write VS Merge-On-Read 模式基于数据湖的理念,有多
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Delta Lake 数据湖原理和实战 数据 原理 实战