Delta Lake

深入剖析 Delta Lake:详解事务日志

落爺英雄遲暮 提交于 2021-02-13 23:46:51
事务日志(Transaction log)是理解 Delta Lake 的一个关键点,很多 Delta Lake 的重要特性都是基于事务日志实现的,包括 ACID 事务性、可扩展元数据处理、时间回溯等等。本文将探讨什么是事务日志,如何在文件层面实现,以及怎样优雅地解决并发读写的问题。 什么是事务日志? Delta Lake 的事务日志(简称 DeltaLog)是一种有序记录集,按序记录了 Delta Lake 表从生成伊始的所有事务操作。 事务日志有何作用? 单一信息源 Delta Lake 基于 Apache Spark 构建,用来支持多用户同时读写同一数据表。事务日志作为单一信息源——跟踪记录了用户所有的表操作,从而为用户提供了在任意时刻准确的数据视图。 当用户首次访问 Delta Lake 的表,或者对一张已打开的表提交新的查询但表中的数据在上一次访问之后已发生变化时,Spark 将会检查事务日志来确定该表经历了哪些事务操作,并将更新结果反馈给用户。这样的流程保证了用户所看到的数据版本永远保持与主分支一致,不会对同一个表产生有冲突的修改。 Delta Lake 原子性实现 原子性,作为 ACID 四个特性之一,保证了对数据湖的操作(例如 INSERT 或者 UPDATE)或者全部完成,或者全部不完成。如果没有原子性保证,那么很容易因为硬件或软件的错误导致表中的数据被部分修改

Dive into Delta Lake | Delta Lake 尝鲜

ⅰ亾dé卋堺 提交于 2021-01-21 14:04:44
点击上方 蓝色字体 ,选择“ 设为星标 ” 回复”资源“获取更多资源 大数据技术与架构 点击右侧关注,大数据开发领域最强公众号! 大数据 真好玩 点击右侧关注,大数据真好玩! Delta Lake 是一个存储层,为 Apache Spark 和大数据 workloads 提供 ACID 事务能力,其通过写和快照隔离之间的乐观并发控制(optimistic concurrency control),在写入数据期间提供一致性的读取,从而为构建在 HDFS 和云存储上的数据湖(data lakes)带来可靠性。Delta Lake 还提供内置数据版本控制,以便轻松回滚。 为什么需要Delta Lake 现在很多公司内部数据架构中都存在数据湖,数据湖是一种大型数据存储库和处理引擎。它能够存储大量各种类型的数据,拥有强大的信息处理能力和处理几乎无限的并发任务或工作的能力,最早由 Pentaho 首席技术官詹姆斯迪克森在2011年的时候提出。虽然数据湖在数据范围方面迈出了一大步,但是也面临了很多问题,主要概括如下: 数据湖的读写是不可靠的。数据工程师经常遇到不安全写入数据湖的问题,导致读者在写入期间看到垃圾数据。他们必须构建方法以确保读者在写入期间始终看到一致的数据。 数据湖中的数据质量很低。将非结构化数据转储到数据湖中是非常容易的。但这是以数据质量为代价的。没有任何验证模式和数据的机制

Data + AI Summit 欧洲2020全部超清 PPT 下载

爷,独闯天下 提交于 2020-12-07 08:19:28
Data + AI Summit Europe 2020 原 Spark + AI Summit Europe 于2020年11月17日至19日举行。由于新冠疫情影响,本次会议和 六月份举办的会议 一样在线举办,一共为期三天,第一天是培训,第二天和第三天是正式会议。会议涵盖来自从业者的技术内容,他们将使用 Apache Spark ™、Delta Lake、MLflow、Structured Streaming、BI和SQL分析、深度学习和机器学习框架来解决棘手的数据问题。会议的全部日程请参见: https://databricks.com/dataaisummit/europe-2020/agenda 。 和今年六月份会议不一样,这次会议的 KeyNote 没什么劲爆的消息,不过会议的第二天和第三天还是有些干货大家可以看下的。在接下来的几天,本公众号也会对一些比较有意思的议题进行介绍,敬请关注本公众号。 本次会议的议题范围具体如下: 人工智能用户案例以及新的机会; Apache Spark™, Delta Lake, MLflow 等最佳实践和用户案例; 数据工程,包括流架构 使用数据仓库(data warehouse)和数据湖(data lakes)进行 SQL 分析和 BI; 数据科学,包括 Python 生态系统; 机器学习和深度学习应用 生产机器学习(MLOps)

Spark Summit North America 202006 高清 PPT 下载

試著忘記壹切 提交于 2020-10-21 20:31:52
为期五天的 Spark Summit North America 2020在美国时间 2020-06-22 ~ 06-26 举行。由于今年新冠肺炎的影响,本次会议第一次以线上的形式进行。这次会议虽然是五天,但是前两天是培训,后面三天才是正式会议。本次会议一共有超过210个议题,一如既往,主题也主要是 Spark + AI,在 AI 方面会议还深入讨论一些流行的软件框架,如 Delta Lake、MLflow、TensorFlow、SciKit-Learn、Keras、PyTorch、DeepLearning4J、BigDL 和 deep learning pipeline等。会议的全部日程请参见: https://databricks.com/sparkaisummit/north-america-2020/agenda 这次会议带来了几点比较重要消息:数砖收购 Redash 公司,发布 Delta Engine等,不过目前 KeyNote 会议的 PPT 还没有发布,感兴趣的可以看下相关视频。过往记忆大数据也在前几天发了几篇这次会议 KeyNote 的介绍,感兴趣的同学可以看这里。另外,在接下来的几天,本公众号也会对一些比较有意思的议题进行介绍,敬请关注本公众号。 如果想及时了解 Spark 、Hadoop或者Hbase相关的文章,欢迎关注微信公共帐号: iteblog

大部分人都不知道!原来今天不只是中秋节,还是程序员节

…衆ロ難τιáo~ 提交于 2020-10-14 10:57:18
今天不但是大家熟知的中秋节,其实也是我们程序员的节日! 程序员节是一个国际上被众多科技公司和软件企业承认的业内人士节日。日期是在每年的第256( 十六进制 为0x100,或28)天,也就是 平年 的9月13日或 闰年 的9月12日。 它是 俄罗斯 的一个官方 节日 ,其他国家的程序员社群也庆祝这个节日。 之所以选择256(28),是因为它是一个被程序员们所熟知的8 比特 基数。用1个 字节 (等于8 比特 )最多能表示256个数值,而且在 平年 中,256是2的最大幂中小于365的值。与此同时,也有人提出象征2的10次方的10月24日才是程序员日。 也有人提出将10月10日作为程序员日,因为在计算机世界中,文件都是由1和0这两个二进制数字组成的。中国有人定10月24日为程序员节,因2的10次方 = 1024。 祝大家中秋节和程序员节快乐。 新福利: 从9月11日开始至10月15日截止,一共五周时间,每周二我会从公众号底部留言互动最多的读者中抽取一名读者,免费包邮送实体新书《HBase原理与实践》,留言互动起来吧~ 猜你喜欢 1、 七问Redis,才知道我与技术大牛的差距在哪里 2、 这可能是学习 Spark Delta Lake 最全的资料 3、 基于 MySQL Binlog 的 Elasticsearch 数据同步实践 4、 大数据面试知识图谱 扫码关注我们 过往记忆大数据

SPARK + AI SUMMIT 2020 中文精华版线上峰会—7月5日议题

时光怂恿深爱的人放手 提交于 2020-08-11 06:30:56
Spark中文峰会第二日,就在本周日上午杭州会场,错过悔十年的压轴好戏来了~ SPARK + AI SUMMIT 2020 中文精华版线上峰会 ,十四位来自北京、上海、杭州、硅谷的PMC和意见领袖,一一还原英文现场的经典分享。 除 Databricks、Facebook、阿里巴巴、Intel 、领英等一线厂商的经典应用场景外,还有Ray、SQL、Structured Streaming、 MLflow、Koalas、K8s、Delta lake、Photon等新奇议题及社区生态的最新落地。 点击 详细议程 7月5日上午议题: 利用闪存优化在Cosco基础上的Spark Shuffle 吴一 Databicks开源项目组软件工程师,主要参与开源社区Spark和公司产品Databricks Runtime的研发。最近两年专注于Spark及大数据技术领域 来源: oschina 链接: https://my.oschina.net/u/4343506/blog/4332580

Delta Lake 如何帮助云用户解决数据实时入库问题

梦想与她 提交于 2020-07-29 10:14:56
嘉宾简介:辛现银,花名辛庸,阿里巴巴计算平台事业部 EMR 技术专家,Apache Hadoop,Apache Spark contributor,对 Hadoop、Spark、Hive、Druid 等大数据组件有深入研究。目前从事大数据云化相关工作,专注于计算引擎、存储结构、数据库事务等内容,今天为大家介绍Delta Lake 如何帮助云用户解决数据实时入库的问题。 直播回放: https://developer.aliyun.com/live/2894 以下是视频内容精华整理。 一、CDC简介 CDC是Change Data Capture的缩写,也就是改变数据捕获。比如在最开始的时候我们用工具将业务数据导入数据仓库、数据湖当中,之后导入数据的时候我们希望反映数据的动态变化,进行增量导入,并且能够尽快的捕获这些变化数据,以便更快地进行后 来源: oschina 链接: https://my.oschina.net/u/4274636/blog/4334809

Spark 背后的商业公司收购的 Redash 是个啥?

人走茶凉 提交于 2020-07-28 12:29:03
在2020年6月24日的 Spark AI summit Keynote 上,数砖的首席执行官 Ali Ghodsi 宣布其收购了 Redash 开源产品 的背后公司 Redash! 如果想及时了解 Spark 、Hadoop或者HBase相关的文章,欢迎关注微信公众号: iteblog_hadoop 通过这次收购,Redash 加入了 Apache Spark、Delta Lake 和 MLflow,创建了一个更大、更繁荣的开源系统,为数据团队提供了同类中最好的工具。为什么数砖会收购 Redash 公司? Redash 是什么? Redash 是一个可以协作的可视化和仪表盘平台,旨在让任何人,无论其技术水平如何,都可以在团队内部或跨团队共享见解。 一直使用 SQL 的用户可以利用Redash 来探索、查询、可视化和共享来自任何数据源的数据。世界各地每天有数千个组织的数百万用户使用 Redash 来做出数据驱动的决策。 Redash 主要包含以下特点: Query editor: 使用模式浏览器和代码提示来快速编写 SQL 和 NoSQL 查询。 可视化和仪表盘: 使用拖放创建漂亮的可视化界面,并将它们合并到单个仪表板中。 分享: 通过共享可视化仪表盘及其关联的查询,可以轻松实现协作,并支持对报告和查询的同行审查。 进度刷新: 在用户定义的间隔内自动更新图表和仪表板。 报警:

是时候改变你数仓的增量同步方案了

北城以北 提交于 2019-12-06 00:42:02
经过一段时间的演化,spark-binlog,delta-plus慢慢进入正轨。spark-binlog可以将MySQL binlog作为标准的Spark数据源来使用,目前支持insert/update/delete 三种事件的捕捉。 delta-plus则是对Delta Lake的一个增强库,譬如在Delta Plus里实现了将binlog replay进Detla表,从而保证Delta表和数据库表接近实时同步。除此之外,detla-plus还集成了譬如布隆过滤器等来尽快数据更新更新速度。更多特性可参考我写的专栏。 数据湖Delta Lake 深入解析 ​ zhuanlan.zhihu.com 图标 有了这两个库,加上Spark,我们就能通过两行代码完成库表的同步。 以前如果要做数据增量同步,大概需要这么个流程: 问题很明显,Pipeline长,涉及到技术多,中间转存其实也挺麻烦的,难做到实时。我们希望可以更简单些,比如最好是这样: 然后我可能只要写如下代码就可以搞定: val spark: SparkSession = ??? val df = spark.readStream. format("org.apache.spark.sql.mlsql.sources.MLSQLBinLogDataSource"). option("host","127.0.0.1").

delta-lake 系列一 数据架构发展趋势

爱⌒轻易说出口 提交于 2019-12-04 20:57:45
delta-lake的初衷 数据架构大势所趋 数据架构衍生(一)—— OLTP On-Line Transaction Processing联机事务处理过程(OLTP),也叫面向交易的处理过程,其基本特征是前台接收的用户数据(应用产生的各种业务数据)实时写入数据库中,并能够实时的进行数据结果查询返回。是大部分业务系统考虑的基本数据存储方式,比较典型的是关系型数据(Mysql、Oracle、Sqlserver等)。 这样做的最大优点是可以即时地处理输入的数据,及时地回答。也称为实时系统(Real time System)。衡量联机事务处理结果的一个重要指标是系统性能,具体体现为实时请求-响应时间(Response Time),即用户在终端上输入数据之后,到计算机对这个请求给出答复所需要的时间。OLTP是由前台、应用、数据库共同完成的,处理快慢以及处理程度取决于数据库引擎、服务器、应用引擎。 OLTP 特征 支持大量的并发用户增加修改和删除数据(ACID事务) bin log 反应事务transaction日志(数据变化) 架构复杂(强数据机构化(struct)) 可以通过transaction 对数据进行数据提交、回滚操作 OLTP 做数据分析 特点 使用试图 通过各种trigger 和存储过程完成数据清洗 开发方便,不需要特殊的其他知识,普通开发人员可以完成 E-R Model