说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

对话Spark核心作者Ion Stoica:我的编程之路从2KB内存开始

HTML文档下载 WORD文档下载 PDF文档下载
Ion Stoica是UC Berkeley计算机教授,AMPLab共同创始人,弹性P2P协议Chord、集群内存计算框架Spark、集群资源管理平台Mesos都出自他。CSDN与英特尔中国研究院首席工程师吴甘沙共同完成了对Ion的对话。

大约一个月前, Ion Stoica和他创立的创新公司 Databricks再次成为大数据行业关注的焦点:Databricks获得了来自Andreessen Horowitz 1400万美元投资,Cloudera宣布联合Databricks提供Spark企业级服务。

Databricks由Ion Stoica与麻省理工学院计算机科学助理教授Matei Zaharia、UC Berkeley计算机科学教授Scott Shenker等共同创办,Scott还是知名SDN公司Nicira的联合创始人及CEO。Databricks专注于Spark技术的产品化。

一个月前,CSDN向Ion Stoica发出采访邀请。在漫长的等待回复期间,Databricks完成了以上两项里程碑式的演进。

图:Databricks团队成员

后排从左向右依次为:Andy(Spark Summit的组织者)、Arsalan(曾在麦肯锡主管大数据以及IT策略管理咨询)、Matei Zaharia、Ion Stoica、Scott Shenker、Mike Franklin(AMPLab director)

前排从左向右依次为:Ali( 分布式系统、分布式算法以及调度系统专家)、辛湜(Shark的作者,Spark核心成员)、Patrick(Sparrow的作者之一,也是Spark其中一个最重要的贡献者)、Aaron(Databricks工程师)

对话中,Ion Stoica强调了Spark和Mesos与Hadoop软件堆栈的合作关系,Saprk的演进方向和数据挖掘的强化,以及BDAS的远大目标。对话全文如下:

CSDN:Spark已经显示出相对于Hadoop的优势,在你看来,Spark还需要哪些方面的完善?

Ion Stoica:Spark相对于Hadoop的主要优势是高性能和易用性。Spark的高性能源于其采用内存储存数据,应用可以以内存的速度进行运算。它的易用性在于通用的API,使用户可以编写复杂的并行计算程序,使之看上去就像串行程序。这让Spark程序更容易开发和读懂。

未来,我们将在几个方面完善Spark。我主要谈谈两个主要方面:

  1. 开发强大的库,方便用户开发复杂的应用。目前,Spark提供了MLlib,这是一个机器学习(ML)的核心算法集。我们会继续扩展MLlib,并发布其它库。另一个库是将马上发布的GraphX,它将支持高效的大规模图算法。
  2. 提升性能。我们希望在以下几个方面提升性能:a. 允许多个Spark环境(context)可靠地共享内存中的数据;b. 支持更快的key-value查找;c. 支持细粒度读,如果可能的话,还包括细粒度写。

此外,我们正致力于更好地集成和支持Python生态系统,因为我们注意到用户对Python编程有着强烈需求。

CSDN:你创立了Databricks,接下来有哪些计划?

Ion Stoica:Databricks还处在隐身状态,所以很遗憾,我现在不能谈太多。不过,Databricks的使命很简单——“建立最好的计算平台,致力于数据的价值挖掘”。这一平台基于Spark、Shark和其他一些我们过去几年中在Berkeley AMPLab开发的组件。另外,我强调,Databricks坚定地建立开源的Apache Spark平台。

CSDN:Mesos是你们开发的另外一个项目,这个项目有哪些特别之处?

Ion Stoica:Mesos是第一个支持多种集群计算框架的资源管理平台,支持Hadoop、Spark及Storm等共享同一数据中心的资源。这将带来两方面的好处,首先能提升资源利用率,计算框架能够获得其他框架不用的资源。同时,能提升性能,不同的计算框架可以共享同一集群的数据(不需要在不同的集群之间移动数据)。

Mesos展示出两方面特性。首先,支持细粒度共享,在任务级别(而非作业级别)共享资源,而每个任务可能只有短短的几秒。其次,Mesos具备高度扩展性,它用C++开发并使用了模块化架构,让上层框架决定哪个任务被调度、何时被调度 (而Mesos调度器只决定哪些资源分配给那个上层框架,这是二层调度中的底层调度)。这让Mesos可以扩展到数万台物理机,同时运行数百万的任务。

CSDN:AMPLab更宏伟的一个愿景是BDAS(Berkeley Data Analytics Stack),您能描述一下BDAS吗?它能做什么?多久能够实现这样的愿景?

Ion Stoica:正如其名,BDAS是我们过去几年在Berkeley开发的一个大数据分析软件堆栈。BDAS的所有组件都是开源的,在社区的帮助下,我们希望它能在工业界、学术界和其他科研组织广泛使用。

BDAS由资源管理层(Mesos)和计算层(Spark)组成。Spark是BDAS的执行引擎,就像MapReduce与Hadoop的关系一样。在Spark之上,我们实现了几个组件来处理不同的工作负载,包括Shark——用于支持SQL API,SaprkStreaming——用于流计算,MLlib——高质量的机器学习算法库,以及 BlinkDB——一个采用近似技术的查询引擎,通过采样技术实现大规模的交互式查询。此外,我们还开发并建立了 Tachyon,一个支持多Spark实例高效共享内存数据的存储层。

BDAS的核心是支持那些Hadoop不能优化执行的工作负载,比如低延迟查询,流式和迭代计算。这将让用户更快速地分析数据并作出决策,最终将提升企业和组织的投资回报率。

好几个BDAS的组件已经可以获得。Spark、Shark和Mesos已经在一些企业中用于生产环境,包括Twitter、Yahoo!、苹果公司和Intel。例如,Mesos目前在Twitter运行了超过6000个节点,有数百个工程师在使用它。Mesos和Spark都是Apache项目,有活跃的开源社区做支撑。例如,Spark有来自23个公司的超过90个贡献者。

作为对Mesos、Spark和Shark的补充,我们发布了alpha版的SparkStreaming、Tachyon、MLlib和BlinkDB。展望未来,我们计划发布一个图计算引擎——GraphX,以及MLbase——一个机器学习框架,它提供了声明式接口(说明做什么而非怎么做),允许非专业人员使用复杂的机器学习算法。
非常重要的一点是,BDAS和Hadoop软件堆栈是互补关系(而不是竞争关系),两者在多个层次可以互操作。首先,BDAS并没有自己的文件系统,所以它可以使用Hadoop文件系统(HDFS)。其次,Spark可以运行在Hadoop YARN上,替代Mesos。第三,Hadoop也可以运行在Mesos上。第四,Shark兼容Hive,后者是Hadoop上面最流行的SQL解决方案。

图:Timex Sinclair 1000

CSDN:你从什么时候开始意识到,计算机科学是自己未来的工作?什么促使你作出这样的选择?

Ion Stoica:我在上高中的时候有了第一台属于自己的电脑—— Timex Sinclair 1000,它只有可怜的2KB内存和16KB扩展内存,不过我立即沉迷于探究通过几行BASIC代码我到底能做到什么。

CSDN:能否预告下您将在第七届中国大数据技术大会(Big Data Technology Conference 2013,BDTC 2013)上分享的话题?

Ion Stoica:我会聊聊BDAS。 

Ion Stoica:在回答以下这些技术问题前,我声明一下,最新的Spark发行版中的大多数代码贡献来自于AMPLab和Databricks之外,我们希望这种局面在未来能持续下去,因此我的回答只能代表未来Spark项目的一部分。

吴甘沙:Spark是一个粗粒度数据并行计算框架,在一些机器学习和数据挖掘(MLDM)算法上表现并非最优,因为其需要细粒度异步更新(如图并行计算)。GraphX向图并行计算迈出了一步,但它并不像PowerGraph那么高效。鉴于BDAS跟机器学习密切相关(如MLBase/MLlib),Spark将如何演化以便更好地解决细粒度和异步更新问题? 

Ion Stoica:这是一个非常好的问题。是的,在其核心,Spark执行的是粗粒度的操作。这使得Spark可以限制世系(lineage)的长度,从而能在出错时有效地实现恢复。然而,正如你提到,有些机器学习和图算法在细粒度操作下可以获得显著提升。未来,你将看到Spark增加这方面的支持。首先,我们计划增加索引功能,这将用于细粒度读操作。在更下一步,我们希望支持增量更新,这可以显著地减少写操作的代价。 

吴甘沙:为了打破MLDM算法的并行障碍,人们正在讨论有限过期性(bounded staleness),Spark会在语言这层支持吗?

Ion Stoica:有限过期性是一种有趣的概念,我们发现它在key-value数据存储的语境中有用武之地。在更一般化的情形下,忽略“掉队者(执行异常地慢的任务)”,代价是计算精度上略有损失,这在提升性能上很有价值。我们正在Spark上调研这些想法,但并没有马上将其加入到Spark的计划。

吴甘沙:为了更好地移植复杂算法到Spark,开发者最好要去了解Spark底层实现的细节。Spark团队会提供设计模式或最佳实践吗?Spark会提供非常成熟的编译器(去替代调度程序)来自动化代码调优吗?

Ion Stoica:是的,我们期待一些设计模式的出现,在更多应用开发的过程中得到实用。我们也在开发一些高质量的库(如MLlib、GraphX),通过这些库用户将实现更高效、高度可扩展的算法。此外,我们正致力于把更多的性能度量指标开放给应用开发者,帮助他们优化应用。 

最后,我们正在优化Spark应用的执行计划,这也许最终将变成一个完整的编译器。 

吴甘沙:Spark现在还不能利用硬件层的数据并行性,Java代码生成器无法获知数据并行语义,因此其生成的代码不能使用单指令多数据流(SIMD)。Spark会把这个作为一个机会吗? 

Ion Stoica:是的,我们正在评估这个机会。不过,我们才刚刚起步,现在还没有太多可以分享的。 

吴甘沙:当Spark集群扩展到数千节点后,会遇到哪些主要的技术问题?

Ion Stoica:关于规模限制我想到了两点。首先,对于非常小的任务,调度器会成为瓶颈。其次,对大规模数据进行整个集群的shuffle操作,可能占据某些作业的绝大部分时间。我们正在努力消除,哪怕至少缓解这些扩展性的瓶颈。例如,我们最近开发了Sparrow——一个完全去中心化的调度器,它可以扩展到数万台物理机组成的集群。

(文/ 包研  技术审校/吴甘沙 责编/仲浩)

吴甘沙

本期特约 吴甘沙,英特尔中国研究院 首席工程师 

其主要研究方向包括大数据的计算范式和架构,软硬件协同设计,数据安全和权利,以及数据作为服务的应用模式和支撑环境。曾经参与和主持移动受控运行时(Managed Runtime)和并行编程等研究项目。发表学术论文10余篇,获得美国专利23项和国际专利数项,另有17项专利待审中。

欢迎关注 @CSDN云计算微博,了解更多云信息。

第七届中国大数据技术大会(Big Data Technology Conference 2013,BDTC 2013)将于2013年12月5日-6日在北京世纪金源大酒店召开。Spark核心设计者、Databricks创始人兼CEO Ion Stoica,Apache HBase项目管理委员会主席Michael Stack、百度大数据首席架构师林仕鼎、华为公司诺亚方舟实验室主任杨强、Apache Tez commiter Bikas Saha大数据技术专家领衔,来自腾讯、阿里巴巴、Hortonworks、LinkedIn、小米、Intel等50余位工程师带来近60场干货分享,更有《中国智能交通与大数据技术峰会》专场感受智能交通如何改变生活。

《近匠》第8期:Unity——不再仅仅是游戏引擎 Colours:移动应用的开源“美颜相机” 微信红包活动:用户疯狂中的腾讯“阴谋” 预测2014年最热门的IT职位及年薪 智能手机有隐私?Facebook可阅读Android用户的短信内容 苹果2014年Q1财报:iPhone、iPad 销量创纪录 3D打印:鞋垫也玩私人订制 与Google Glass抗衡,三星将推Galaxy Glass 进军移动?任天堂欲推iOS、Android版超级玛丽 回顾2013:云计算的夏天 微软最终加入OCP阵营,开源其云服务器设计 Docker:集装箱式“运输”在软件上的实现 《近匠》第09期:ShareSDK——专注社交分享工具 苹果车载iOS系统iOS in the Car界面被曝光 支撑过万亿音乐事件的数据分析系统 Facebook运维内幕曝光:一人管理2万台服务器 《近匠》第10期:友盟——开发服务平台化 LinkedIn耗资1.2亿收购数据驱动招聘服务公司Bright 谷歌推视频会议硬件产品Chromebox 基于Chrome OS 文件上传组件导致Apache DoS安全漏洞 EA,你是来拉仇恨的吗? Beep:前Google员工打造的流媒体音乐控制器 有利于开发App的5款天气预测API 七问微软新CEO,你准备好了吗? Hadoop虽然强大,但不是万能的 Flappy Bird:萌贱游戏日进斗金的烦恼 IT技术支持:索契冬奥会背后的无名英雄 简单10招,让你的云计算事业锦上添花 微软、谷歌及苹果从哪赚钱? 高大上!5.5寸屏幕的iPhone 6概念机来袭 苹果CEO Tim Cook:我们是一家快速发展的公司 关于MFC中的Project Settings问题 两个编程的初级问题 谁能给我一个关于二叉树的完整的程序。 认识的进来聊天 , 我是东宝 (yeti_lee) 我是一名学生,学计算机(一个普通大学)。请教大家几个问题 大连成绩如何查??有人查到了吗?请聊聊 分是个累赘,我放完它~!来的就有,讲些凄惨的事情和遭遇,大家比谁惨,越惨的给分越多,兄弟我此举是为了找平衡。 怎样得到当前系统打印机的各项信息?????特别是打印纸张方向!!! 高分求救——我有几道C程序的编程题目,望各位高手帮忙解决!谢谢 哪位告诉我select语法,我忘了group by 的使用方法,谢谢! 请问哪儿有电子版的《COM编程精彩实例》,谢谢! 请问:要想学习vb和数据库的知识,哪些书比较好?请各位朋友帮忙推荐几本好书?谢了~! 请问有谁知道PB8编译后打包,PARADOX数据库驱动程序需那些啊????急!!!!!! 在oracle存储过程中怎么使用cursor作为返回值? [TIPS]Win9x和WinNT/2000下面都可以去掉OICQ广告的方法! 触发器问题 关于bdgrid的问题,高手请来,一定高分相送!!!!急 怎么建立WIN2000的域信任关系 用data控件连接DBf数据库时为什么出现“找不到可插入的ISAM”错误? 大家等会儿再吃饭!先看一看这里的送分大餐...... 他们怎么想的?居然没有bcb? 高手指教:如何在vc中控制刻录机和磁带机进行数据备份和恢复? 请问各位高手,怎样才能学好c语言。有没有什么好一点的网站和源码提供,多谢。 如何解决在向量位图背景下的窗口移动是的刷新置后问题?? 问一个问题!爱好or 程序员? 用VB如何设计好的报表,欢迎讨论! messagedlg能不能显示中文?例如显示“确定”,而不是“ok” 各位高手!!请教一个有关在oracle8i中建立表与表之间的关系? 请问哪里有无时间期限的Setup Factory 下载? 笨呆呆,拿分。 请问到那里可以下载uml工具,如果再有推荐的话是一定可以得分的 再次有请: playyuer 吴文智、袁飞、Jneu、Amoon、ttyp、icevi、progame、Jinesc 等各路高手 偶是初学者,问一个问题 SOS,很严重windows的问题,高手快进 复制Access数据库时出现的问题 如何动态添加TQuery的字段??? 编译一问 SOS,很严重windows的问题,高手快进 !!! 有人开发过基于winpcap的网络抓包程序么? SOS,很严重windows的问题,高手快进 ! 通过双网卡上网怎么设置? 一名初学者的问题? 各位老大,如何控制windows的资源管理器显示/不显示后缀名 问一下现在4000元可以买到大概什么配置的笔记本电脑 谁知道用VC++直接操作硬盘?告诉我一声,多谢了 请问考OCP的12本宝典在哪里下载?有人能介绍介绍经验吗?谢谢! Nobody can help me? 去考MCSD我合格吗? 怎样让程序自动修改IE中htm文件? !!!andyting!!!!过来拿分!!!!!! 请问各位大陆市场有没有<>? 求解释下列名词,1%100ml的葡萄糖溶液中1%是指什么、100ml是指溶剂水还是什么 在化学中的晶体和物理中的晶体是同一种吗?就是说化学里的晶体一定满足物理中的定义吗 配制100ML,0.2MOL/L Nacl溶液的 如右图所示,向烧杯内的溶液b中逐滴加入溶液a时,灵敏弹簧秤的读数先逐变小,然后又逐渐变大,则溶液a、b分别是A NaOH、H2SO4 B BaCl2、NaOHC BACL2 NA2SO4 D NH3・H2O、CH3COOH 物理上的晶体和化学上晶体的区别(初中上的)物理上说的晶体就是有一定熔点的,而化学上所谓晶体就是一种可溶物,溶于水后,降温或蒸干析出晶体.难道可溶物在溶解前就没有一定熔点,而 配置100ml 0.2mol/l氯化钠溶液的氯化钠质量如题 白糖溶解与水形成糖水是物理变化还是化学变化 工业晶体盐的物理和化学特性是什么 高中历史会考重点总结 请问 初中历史和高中历史 有区别吗? 物理意义上的晶体是否与化学意义上的晶体相矛盾物理意义上的晶体指有固定熔点的物质而化学意义上的晶体指有规则集合几何外形的固体二者是否矛盾 要全 一到化学题,解释为什么不选b我觉得二氧化碳和氢氧化钠反应了,那么试管的力的气体变少,那么在大气压的作用下,氢氧化钠就会上去. 全国初二会考地理都是开卷的吗? 高中历史会考问题关于洋务派和维新派.洋务派是什么,几几年的,维新是什么,几几年的.都是干吗的代表有啥,思想什么的.长篇大论不给分.要精华.要精辟. 由于预习阶段,有些概念还不懂,还请前辈们多多指教呢. 化学这题为什么选C求解释 昆山初二地理生物会考开卷吗 高中历史必修一复习提纲 人教版 请说明原因,我觉得它选B 09年长沙芙蓉区初二生物会考是不是开卷?如题..我听说地理MS是开卷... 融雪剂NaCl使冰雪融化是什么变化? 水能溶解五水硫酸铜吗 是什么变化物理还是化学 什么晶体要破坏共价键 融化氯化钠的颜色如果将氯化钠加热融化后是什么颜色的?氯化钠熔点800多度呢2l不可以吧 把什么物质分解是化学变化吗 知道的哥哥姐姐们,我怕升不上去,让我有个底,谢谢你们了. 化学有机选择题一题,麻烦详细讲解下,有图 全册的, 上海高中政治考是开卷还闭卷?RT NaCl熔化算不算化学键被破坏?为什么? 经典力学的主要内容是什么? 有没有开卷考? 为什么熔融NaCl会破坏化学键?不太,不太明白, 高中历史:罗马法的核心内容及影响速度 化学式是什么?就是饱和氯化钠溶液中析出的氯化钠晶体带结晶水么?把带结晶水的氯化钠晶体的化学式告诉我 关于熔化时破坏化学键的一道题现有 1.氯化钡 2.金刚石 3.氯化铵 4.硫酸钠 5.干冰 6.碘片 一 熔化时不需要破坏化学键的是熔化时需要破坏共价键的是熔点最高的是 最低的是 二 属于离子化合 古代中国的名门望族多“以商贾兴,以官宦显”.该现象A.反映了商人政治地位的提高 B.是“工商食官”的表现 C.制约工商业扩大再生产D.反映了重农抑商观念的弱化\x05《英国文化模式溯源》中 氯化钠晶体是分子吗 融化时破坏的化学键 氯化氢 蔗糖 为什么融化不会破坏化学键?怎么判断融化会不会破坏化学键?还有怎么判断溶解破不破坏化学键?氯化氢不是共价键吗?完全搞不清楚. 下列物质中,含分子数目由大到小的顺序为()A 0.5mol氧气B 6.02*10^23个氮气C 6.02*10^24个HClD 与0.12kgC-12含相同原子数目的氯气 化学中几道关于物质的量的题目1.相同物质的量,在300度十受热分解.放出气体体积最大的是A HgO B KCLO3 C KMnO4 D NH4HCO32.标准情况时,4.48L O2和O3混合气体通过松节油(只吸收03),称得松节油重了2.4g NaCl溶解在水中时,化学键有没有断? 铁为什么能与水反应? 以高高一物质的量化学题 不算难 请给位帮我解释清楚在硫酸铝和硫酸镁组成的混合物中 三价氯离子和二价镁离子的物质的量比为2比3 则在含有2mol 硫酸根离子的该混合物中 硫酸镁的质量是 盐撒在冰上,请问冰为什么能融化成水, 铁生锈是物理反应还是化学反应?为什么? 谁清楚天津市今年高中物理会考的范围及具体的时间?文理有没有不同?记住天津市的~ 磁流体是电子材料的新秀,它既具有固体的磁性,又具有液体的流动性.制备时将含等物质的量的FeSO4和Fe2(SO4)3的溶液混合,再滴人稍过量的氢氧化钠溶液,随后加入油酸钠溶液,即可生成黑色的、 请问铁矿石炼成铁是物理变化还是化学变化,为什么? 【高中化学实验】第4题中每个选项都能解释一下么还有第5题中的a和d为什么不对呀【谢谢!】 高中历史内容与初中联系大主要讲什么有必定接洽点然则高中汗青是从理论上开端分析初中纯感性熟悉 .至于内容大年夜体是差不多的但有些处所会加深外国史相对初中而言变多根本上就如 1题,化学解释 一道化学实验题.急.希望解释的清晰点.右图是同学们利用大可乐瓶设计的储气装置(铁架台未画出),以下说法不正确的是( )A.打开止水夹a、b.气体从d管倒入储存在下面的瓶子里,水被压 高中历史有哪几块内容? 溶解是物理现象还是化学现象 化学实验题(详细解释与过程)已知木炭粉(假设木炭粉中不含其他杂质)和Fe2O3,在加热条件下发生化学反应,兴趣小组同学对该实验进行如下探究. I 生成固体组成分析 (1)实验过程中可以 就是在有材料的简答题后回答的那种 关于化学上的晶体和物理上的晶体的问题晶体,在化学上把冷却热饱和溶液或者蒸发溶剂得到的东西叫做晶体.但是百度百科上说各种金属都算是晶体,但是部分金属不溶于水,那物理上所指的晶 2008年长沙初中地理会考是开卷吗?离会考只有一天半了,我想知道是不是开卷如果是长沙的朋友我请吃饭!
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn