分享

有什么关于 Spark 的书推荐?

 pgl147258 2015-01-30

【董飞的回答(100票)】:

Fei Dong | LinkedIn

Hadoop Spark学习小结[2014版]Hadoop

Hadoop社区依然发展迅速,2014年推出了2.3,2.4, 2.5 的社区版本,比如增强 Resource Manager HA, YARN Rest API, ACL on HDFS, 改进 HDFS 的 Web UI…

Hadoop Roadmap 根据我的观察,主要更新在Yarn,HDFS,而Mapreduce几乎停滞了,还有一些feature 属于安全,稳定可靠性一方面是比较稳定了,但也可以说是瓶颈了。

Apache Hadoop Project Members

这个是Hadoop project member and committee, 里面好多来自Hortonworks,也有不少国人上榜。SparkSpark 介绍

Spark今年大放溢彩,Spark简单说就是内存计算(包含迭代式计算,DAG计算,流式计算 )框架,之前MapReduce因效率低下大家经常嘲笑,而Spark的出现让大家很清新。

其实起名字也很重要,Spark就占了先机,CTO说Where There’s Spark There’s Fire: The State of Apache Spark in 2014Spark 起源

2010年Berkeley AMPLab,发表在hotcloud 是一个从学术界到工业界的成功典范,也吸引了顶级VC:Andreessen Horowitz的 注资

AMPLab这个实验室非常厉害,做大数据,云计算,跟工业界结合很紧密,之前就是他们做mesos,hadoop online, crowddb, Twitter,Linkedin等很多知名公司都喜欢从Berkeley找人,比如Twitter也专门开了门课程 Analyzing Big Data with Twitter 还有个BDAS (Bad Ass)引以为傲: The lab that created Spark wants to speed up everything, including cures for cancer

在2013年,这些大牛从Berkeley AMPLab出去成立了Databricks,半年就做了2次summit参会1000人,引无数Hadoop大佬尽折腰,大家看一下Summit的sponsor ,所有hadoop厂商全来了,并且各个技术公司也在巴结,cloudrea, hortonworks, mapr, datastax, yahoo, ooyala, 根据CTO说 Spark新增代码量活跃度今年远远超过了Hadoop本身,要推出商业化产品Cloud。Spark人物

Spark基本概念
  1. RDD——Resillient Distributed Dataset A Fault-Tolerant Abstraction for In-Memory Cluster Computing弹性分布式数据集。
  2. Operation——作用于RDD的各种操作分为transformation和action。
  3. Job——作业,一个JOB包含多个RDD及作用于相应RDD上的各种operation。
  4. Stage——一个作业分为多个阶段。
  5. Partition——数据分区, 一个RDD中的数据可以分成多个不同的区。
  6. DAG——Directed Acycle graph,有向无环图,反应RDD之间的依赖关系。
  7. Narrow dependency——窄依赖,子RDD依赖于父RDD中固定的data partition。
  8. Wide Dependency——宽依赖,子RDD对父RDD中的所有data partition都有依赖。
  9. Caching Managenment——缓存管理,对RDD的中间计算结果进行缓存管理以加快整 体的处理速度。

目前还有一些子项目,比如 Spark SQL, Spark Streaming, MLLib, Graphx 工业界也引起广泛兴趣,国内Taobao, baidu也开始使用:Powered by Spark

Apache Spark支持4种分布式部署方式,分别是Amazon EC2, standalone、spark on mesos和 spark on YARN 比如AWSSpark Summit

培训资料和视频

10月份还有个培训在湾区的培训,只不过3天就要1500刀,看来做个讲师也不错:)第三方项目

  • Web interactive UI on Hadoop/Spark
  • Spark on cassandra
  • Spark Cassandra Connector
  • Calliope
  • H2O + Spark
  • Shark - Hive and SQL on top of Spark
  • MLbase - Machine Learning research project on top of Spark
  • BlinkDB - a massively parallel, approximate query engine built on top of Shark and Spark
  • GraphX - a graph processing & analytics framework on top of Spark (GraphX has been merged into Spark 0.9)
  • Apache Mesos - Cluster management system that supports running Spark
  • Tachyon - In memory storage system that supports running Spark
  • Apache MRQL - A query processing and optimization system for large-scale, distributed data analysis, built on top of Apache Hadoop, Hama, and Spark
  • OpenDL - A deep learning algorithm library based on Spark framework. Just kick off.
  • SparkR - R frontend for Spark
  • Spark Job Server - REST interface for managing and submitting Spark jobs on the same cluster.
相关参考资料

【sleepdeep的回答(4票)】:

如果你还不了解Spark,不知道什么是RDD,那么我觉得从Spark的论文开始看。概念及为什么这样子设计的等问题,论文里都说得很清楚。我自己之前也网上搜了好多资料,但都看得云里雾里的;只有看到论文的时候才理清楚。

论文题目及连接如下:

Resilient Distributed Datasets: A Fault-Tolerant Abstraction forIn-Memory Cluster Computing

https://www.usenix.org/system/files/conference/nsdi12/nsdi12-final138.pdf

P.S. 如果你也想了解HDFS, MapReduce, HBase等,那么,Google一下它们的论文吧。这些论文都写得挺通熟易懂的。

【zhangcasa的回答(9票)】:

回答中已经有书的推荐,确实还没有什么好书。

如果是使用,本人推荐看spark各个版本的doc:Documentation更加合适,还有多看微博上国内的几个contributor在微博上关于spark的讨论。

如果要了解源码,可以跟进github上spark的repo:apache/spark · GitHub,从配置sbt,编译源码,尝试修改源码开始,多看PR:Pull Requests · apache/spark · GitHub

由于spark正在发展,你可以找你感兴趣的紧跟其中一方面spark sql(包括sql parser,查询优化catalyst和逻辑和物理执行计划的表示,各个物理算子的实现),mlbase(各种机器学习算法的实现)或者graphx,集中了解某一方面的原理和详细的实现过程,我想这个是学习spark最大的价值。

【黄辉煌的回答(4票)】:

一本Holden Karau著作的《Fast Data Processing With Spark》,市场上也有了中文版《Spark快速数据处理》。

基本的Spark使用介绍的挺详细,缺点是Spark新版本不断发布,导致书里的部分内容或链接无效了,自己去克服克服看!

-----------------------------

其实,不建议使用这本书。这是一本缺少内容,又容易让你因为内容过期晕头转向的书。还是去阅读相关论文和Spark网页吧

【Jkeda的回答(2票)】:

四级真题集,六级真题,四级全真模拟,六级全真模拟

【张包峰的回答(1票)】:

谢邀,不过我的回答可能会让你失望。

据我所知,Google的一位女程序员写了一本Spark的书;某本Spark的介绍性书籍在翻译阶段;Spark那伙人貌似也在写本书。

以上几点我都没有上网去考证,甚至懒得搜书名,因为可想而知,这些书都没啥干货,基本没有用。书真没啥好看的。:(

【白乔的回答(0票)】:

人家的doc写得很好的吧?

【江建东的回答(0票)】:

最近在学习spark…看的是王家林的视频…

【张三的回答(0票)】:

可以看看

《大数据Spark企业级实战》http://item.jd.com/1443682720.html

本书共包括14章,每章的主要内容如下。

第1章回答了Spark为何是大数据处理平台的必然选择?Spark速度如此之快的原因是什么?Spark的理论基石是什么?Spark具体是如何仅仅使用一个技术堆栈解决多元化的大数据处理的需求的?

第2章回答了如何从零起步构建Hadoop集群?如何在Hadoop集群的基础上构建Spark集群?如何测试Spark集群?

第3章回答了如何在IDEA集成开发环境中开发并运行Spark程序?如何在IDA中开发Spark代码并进行测试?

第4章在细致解析RDD的基础上会动手实战RDD中的Transformation类型的RDD、Action类型的RDD,并伴有Spark API的综合实战案例。

第5章详细分析了Spark Standalone模式、Spark Yarn-Cluster模式、Spark-Client模式的设计和实现。

第6章首先介绍Spark内核,接着分享通过源码分析Spark内核及源码,细致解析Spark作业的全生命周期,最后分享Spark性能优化的内容。

. 第7章通过大约30个动手实践的案例循序渐进地展示Spark GraphX框架方方面面的功能和使用方法,并对Spark GraphX的源码进行解析。

第8章基于Spark SQL动手编程实践章节,从零起步,细致而深入地介绍了Spark SQL方方面面的内容。

第9章从快速入门机器学习开始,详细解析MLlib框架,通过对线性回归、聚类、协同过滤的算法解析、源码解析和案例实战,循序渐进地揭秘MLLib,最后通过对MLlib中Basic Statics、朴素贝叶斯算法、决策树的解析和实战,进一步提升掌握Spark机器学习的技能。

第10章细致解析了Tachyon这个分布式内存文件系统的架构设计、具体实现、部署以及Spark对Tachyon的使用等内容。

第11章循序渐进地介绍Spark Streaming的原理、源码和实战案例等内容。

第12章介绍了Spark多语言编程的特点,并通过代码实例循序渐进地介绍Spark多语言编程,最后通过一个综合实例来实践Spark多语言编程。

第13章从R语言的基础介绍和动手实战入手,介绍SparkR的使用和代码实战,助您快速上手R语言和Spark两大大数据处理的利器。

第14章循序渐进地介绍了Spark常见的问题及其调优方式。首先介绍Spark性能优化的14大问题及其解决方法,然后从内存优化、RDD分区、Spark对象和操作的性能调优等角度解决常见的性能调优问题,最后讲解Spark最佳实践方案。

第15章聚焦于Spark源码中的BlockManager、Cache和Checkpoint等核心源码解析,BlockManager、Cache和Checkpoint是每个Spark学习者都必须掌握的核心内容。本章循序渐进地解析了这三部分的源码,包括通过源码说明其用途、实现机制、内部细节和实际Spark生产环境下的最佳实践等,通过本章即可轻松驾驭BlockManager、Cache和Checkpoint,从而对Spark精髓的领悟也必将更上层楼!

附录主要是从Spark的角度来讲解Scala,以动手实战为核心,从零开始,循序渐进地讲解Scala函数式编程和面向对象编程。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多