来自马铁大神的Spark10年回忆录
本篇分享来自Martei在Spark AI Submit 2020的开场分享。
马铁是谁
什么!你不知道马铁是谁?Martei Zaharia(说实话,不知道谁给起的中文名字叫马铁,跟着叫就是了),现任Databricks的CTO,也许Databricks你也不是很熟,Spark总是听过的吧?可以说Spark就出自Martei之手,项目开源后组了个公司专门基于Spark提供企业服务。
先来看看Martei大神在LinkedIn的简历,你就知道他的背景有多牛了:
- 2003-2007,就读于滑铁卢大学(加拿大前三的大学)
- 2007-2012,就读于加州伯克利读博,其中07年在google实习3个月,08年在facebook实习一年.
- 2015-2016,在MIT麻省理工任副教授。
- 2016-至今,在斯坦福任副教授。
- 从09年开始加入Apache,成为hadoop的commiter,14年开始成为apache spark的VP,13年开始担任Databricks的CTO。
可以说想要学习现在最先进的分布式知识,follow下马铁的twitter就行了。
Spark的过去10年
回头再来说说本次的分享,显示回忆了Spark的发展历程,然后介绍了当前Spark 3.0的主要特性,介绍Spark相关的生态组件。中间有美女介绍了koalas的使用以及3.0相关的特性展示。最后Martei推荐了《Learning Spark》第二版这本书。最后展望Spark的未来表示会持续优化 Spark 在探索数据分析和生产应用上的易用性,丰富Spark生态体系。
- 2007年Martei攻读博士,主要的研究方向是p2p系统。
- 2008年在雅虎和facebook开始接触数据中心,涉及到分布式与大数据计算。可惜当时的分布式计算主要是依赖于MapReduce,编写困难,缺乏交互式的查询,也不支持机器学习。
- 2009回到伯克利开始研究分布式机器学习框架,开始了Spark相关的工作。
- 2010年开源了第一版的Spark。
- 2010-2011年针对社区的需求,开始了交互式查询、Streaming流处理、R和SQL API的支持等工作。
- 2012-2015年,丰富了Spark的生态,支持更多的API,比如Python、R、SQL;支持更多的组件库,如机器学习、图计算、流计算;支持更高级的API,比如DataFrame、Spark SQL等。
至今为止,有68%的用户在notebook中使用Python操作Spark;超过90%的API通过Spark SQL来执行。
总结过去的Spark开源10年历程,得到最大的经验就是:
- 1 产品的易用性,无论是数据探索还是生产应用
- 2 API的最佳实践,比如组件、测试、模块化。
Spark 3.0
最近Spark发布了3.0版本,超过3400多次升级特性,46%与SQL相关:
最主要的特性有:
- 1 AQE,自适应查询计划。比如动态调整分区数、动态调整join算法、自动处理数据倾斜问题
- 2 动态分区裁剪
- 3 编译器速度优化
- 4 优化器代码提示
- 5 ANSI SQL的支持
- 6 Python API的优化
- 7 R API的优化
- 8 新的流处理UI、更易用的流指标统计、SQL使用文档、Data Source V2 API、GPU加速等。
相关的特性再上一篇也有介绍过,详情前一篇文章:Spark 3.0 新特性
Spark的生态
比如:
- 1 基于pandas API调用Spark的Koalas
- 2 支持批流一体化的Delta Lake
- 3 Sklearn、Hyperort、Joblib等基于Spark的分布式扩展方案
- 4 用于大规模基因分析的GLOW
- 5 用于GPU加速的python库rapids
- 6 用于可视化的tableau, qlik, looker, redash等
参考
- Martei的LinkedIn:https://www.linkedin.com/in/mateizaharia/
最后关注公众号,可以直接观看文中视频,回复 learning spark 就可以获得对应的电子书。
来自马铁大神的Spark10年回忆录的更多相关文章
- css3 斜切角/斜边的实现方式来自BAT大神的出品
设计图含有斜切角的效果时,我们一般想到的方法是切出四个角为背景,然后用border连起来,这样就能显示出该效果了,那么直接使用css呢?下面就整理css做斜边的效果. 1.方案一:利用linear-g ...
- 对话机器学习大神Yoshua Bengio(上)
Yoshua Bengio教授(个人主页)是机器学习大神之一,尤其是在深度学习这个领域.他连同Geoff Hinton老先生以及 Yann LeCun(燕乐存)教授,缔造了2006年开始的深度学习复兴 ...
- 对话机器学习大神Yoshua Bengio(下)
对话机器学习大神Yoshua Bengio(下) Yoshua Bengio教授(个人主页)是机器学习大神之一,尤其是在深度学习这个领域.他连同Geoff Hinton老先生以及 Yann LeCun ...
- 为何你跟着滴滴D8级前端大神撸代码,技术却依旧原地踏步?
引子 听说最近有很多小伙伴,热衷于在慕课网上学习各种前端实战教程,并以完成项目为奋斗目标.比如本文接下来要提到的<Vue2.0高级实战之开发移动端音乐App>,这门课程的传授者是来自滴滴D ...
- 大神都在看的RxSwift 的完全入坑手册
大神都在看的RxSwift 的完全入坑手册 2015-09-24 18:25 CallMeWhy callmewhy 字号:T | T 我主要是通过项目里的 Rx.playground 进行学习和了解 ...
- AlexeyAB大神版yolo 待完善
目录 darknet优化经验 1. AlexeyAB改进项 2. Linux下编译选项 3. 训练经验 4. 提升检测效果 5. 总结 6. AlexeyAB大神改进 darknet优化经验 主要来自 ...
- darknet优化经验-AlexeyAB大神经验
目录 darknet优化经验 1. AlexeyAB改进项 2. Linux下编译选项 3. 训练经验 4. 提升检测效果 5. 总结 6. AlexeyAB大神改进 darknet优化经验 主要来自 ...
- 大神的P图过程!快来偷窥!
来自美国的艺术家James(@jameasons) 平时我们总是能看到一些大神合成出这样的图片, 但是他们P图的过程是怎样的,很多人都是不知道的. 接下来再看看这位大神的其他作品, 如果你看了上面视频 ...
- 【转】hurry_liu 大神STM32移植contiki入门之一:系统介绍和开发环境搭建
前言: 由于项目的原因,需要在LPC1788(STM32 cortex-M3)上面跑contiki. 之前没有涉及到contiki,不知其为何物.不过这个不是难事,做IT的,每每遇到新事物,都不会处理 ...
随机推荐
- 查看Oracle当前用户下的(表视图,同义词...)
查看Oracle当前用户下的信息(用户,表视图,索引,表空间,同义词,存储过程函数,约束条件) 0.表空间 SQL>select username,default_tablespace from ...
- JavaScript基础使用parseInt()转换整数(005)
parseInt()可以把一个字符串格式的整数解析一个整数数值,如"32 days"将被解析为32.这个函数还接受第二个参数,指定整数的进制(当然,一般来说应该是十进制).一个好的 ...
- Java基础之Synchronized原理
思维导图svg: https://note.youdao.com/ynoteshare1/index.html?id=eb05fdceddd07759b8b82c5b9094021a&type ...
- Nginx功能详细介绍(大而全)
Nginx介绍 Nginx是C语言开发的. HTTP和反向代理Web服务器. Nginx ⼜能做什么事情(应⽤场景) Http服务器(Web服务器) 性能⾮常⾼,⾮常注重效率,能够经受⾼负载的考验. ...
- 正确卸载vs2015及以前版本方式
官网工具:https://github.com/Microsoft/VisualStudioUninstaller/releases 亲自测试过,很好用. (完)
- 一个神奇的SQL语句
题目是这样的: 分别往这两张表中添加3条数据... 查询营业额最高商家的商品总价与营业额最低商家的商品总价差是多少(5分)CREATE VIEW vm2 AS SELECT price*limit_n ...
- 状压DP之集合选数
题目 [HNOI2012]集合选数 <集合论与图论>这门课程有一道作业题,要求同学们求出{1, 2, 3, 4, 5}的所有满足以 下条件的子集:若 x 在该子集中,则 2x 和 3x 不 ...
- MYSQL 之 JDBC(一): 数据库连接(一)通过Driver接口获取数据库连接
通过Driver接口获取数据库连接 数据持久化 数据库存取技术分类 JDBC直接访问数据库 JDO技术 第三方O/R工具,如Hibernate,ibatis等JDBC是java访问数据库的基石 JDB ...
- hihoCoder 1052 基因工程 最详细的解题报告
题目来源:基因工程 解题思路:假设基因序列长度为N,则需要计算基因序列前K个和后K个相同所需要的最少改变次数sum. 假设基因序列为 ATACGTCT (即M=8),K=6:interval=M-K= ...
- md5加密密码
using System.Security.Cryptography; public string GetStrMd5(string ConvertString) { MD5CryptoService ...