千家信息网

如何进行数据湖deltalake的分析

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,本篇文章给大家分享的是有关如何进行数据湖deltalake的分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1.delta特性简介De
千家信息网最后更新 2024年09月22日如何进行数据湖deltalake的分析

本篇文章给大家分享的是有关如何进行数据湖deltalake的分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

1.delta特性简介

Delta Lake是Spark计算框架和存储系统之间带有Schema信息数据的存储中间层。它给Spark带来了三个最主要的功能:

第一,Delta Lake使得Spark能支持数据更新和删除功能;

第二,Delta Lake使得Spark能支持事务;

第三,支持数据版本管理,运行用户查询历史数据快照。

核心特性

  1. ACID事务:为数据湖提供ACID事务,确保在多个数据管道并发读写数据时,数据能保持完整性。

  2. 数据版本管理和时间旅行:提供了数据快照,使开发人员能够访问和还原早期版本的数据以进行审核、回滚或重现实验

  3. 可伸缩的元数据管理:存储表或者文件的元数据信息,并且把元数据也作为数据处理,元数据与数据的对应关系存放在事务日志中;

  4. 流和批统一处理:Delta中的表既有批量的,也有流式和sink的;

  5. 数据操作审计:事务日志记录对数据所做的每个更改的详细信息,提供对更改的完整审计跟踪;

  6. Schema管理功能:提供自动验证写入数据的Schema与表的Schema是否兼容的能力,并提供显示增加列和自动更新Schema的能力;

  7. 数据表操作(类似于传统数据库的SQL):合并、更新和删除等,提供完全兼容Spark的Java/scala API;

  8. 统一格式:Delta中所有的数据和元数据都存储为Apache Parquet。

Delta的特性实现是基于事务日志,比如ACID事务管理、数据原子性、元数据处理和时间旅行等功能。

Delta Lake 说白了就是一个lib库

Delta Lake 是一个lib 而不是一个service,不同于HBase,他不需要单独部署,而是直接依附于计算引擎的。目前只支持Spark引擎。这意味什么呢?Delta Lake 和普通的parquet文件使用方式没有任何差异,你只要在你的Spark代码项目里引入delta包,按标准的Spark datasource操作即可,可谓部署和使用成本极低。

Delta Lake真实内容幕

Parquet文件 + Meta 文件 + 一组操作的API = Delta Lake.

所以Delta没啥神秘的,和parquet没有任何区别。但是他通过meta文件以及相应的API,提供众多特性功能的支持。在Spark中使用它和使用parquet的唯一区别就是把format parquet换成detla。

上图可以看出,数据湖目的实一站式提供各种数据服务。

2.delta测试

采用的Spark 3.0版本,delta是0.7版本进行测试,首先是导入依赖:

  io.delta  delta-core_2.12  0.7.0

spark使用delta也很简单,就如使用json,csv等数据格式一样,只需要在format函数传入delta字符串就可以了。比如创建一张表,scala的表达如下:

val data = spark.range(0, 5)data.write.format("delta").save("tmp/delta-table")

schema信息,他自己会从dataframe中推断出来。

读取一张表

spark.read.format("delta").load("tmp/delta-table").show()

delta lake的api对于spark来说基本是一致的,没啥变动。delta底层是完全基于spark的,而且可以支持实时和离线,对于多读少更新,多批次更新的场景也是可以的。

以上就是如何进行数据湖deltalake的分析,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

数据 事务 支持 功能 文件 版本 更新 管理 信息 特性 存储 就是 日志 处理 分析 引擎 快照 数据处理 时间 更多 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 我的世界粘液科技服务器 中兴数据研究所软件开发部 教师提升网络技术 慈溪手机游戏软件开发怎么样 饥荒专用服务器模组怎么自动更新 计算机论文网络技术 兴化多功能网络技术价目表 云顶之弈怎么查自己的服务器排名 网络技术岗位说明书 奥林软件开发有限公司 sql数据库配置管理路径 做软件开发工程师的资格是什么 如何上传阿里云服务器 网络安全的态度感知 软件开发人员工作辛苦吗 福州扫码洗车软件开发 国家网络安全面临的主要威胁 高中学生网络安全教育知识竞赛 工业物联网网络技术相关视频 贵州省公安厅网络安全局 软件开发难不难 服务器域名可以访问我的网页吗 数据库中长度字段名 服务器系统管理员密码忘记了 网络安全 杜绝网瘾ppt 家庭普查数据库 实用计算机网络技术结课作业 数据库分布式系统实例 服务器出现故障需要多久才能修好 服务器搭建视频云点播
0