| 机工 spark快数数据处理 | ||
| 定价 | 29.00 | |
| 出版社 | 机械工业出版社 | |
| 版次 | 1版1次印刷 | |
| 出版时间 | 2014年05月 | |
| 开本 | 大32开 | |
| 作者 | (美)凯洛 著,余璜 张磊 译 | |
| 装帧 | 平装 | |
| 页数 | 114 | |
| 字数 | --- | |
| ISBN编码 | 9787111463115 | |
Spark是个开源的通用并行分布式计算框架,由加州大学伯克利分校的AMP实验室开发,支持内存计算、多迭代批量处理、即席查询、流处理和图计算等多种范式。Spark内存计算框架适合各种迭代算法和交互式数据分析,能够提升大数据处理的实时性和准确性,现已逐渐获得很多企业的支持,如阿里巴巴、百度、网易、英特尔等公司。
本书系统讲解Spark的使用方法,包括如何在多种机器上安装Spark,如何配置个Spark集群,如何在交互模式下运行个Spark作业,如何在Spark集群上构建个生产级的脱机/独立作业,如何与Spark集群建立连接和使用SparkContext,如何创建和保存RDD(弹性分布式数据集),如何用Spark分布式处理数据,如何设置Shark,将Hive查询集成到你的Spark作业中来,如何测试Spark作业,以及如何提升Spark任务的性能。
译者序
作者简介
前言
1章 安装Spark以及构建Spark集群
1.1 单机运行Spark
1.2 在EC2上运行Spark
1.3 在ElasticMapReduce上部署Spark
1.4 用Chef(opscode)部署Spark
1.5 在Mesos上部署Spark
1.6 在Yarn上部署Spark
1.7 通过SSH部署集群
1.8 链接和参考
1.9 小结
2章 Sparkshell的使用
2.1 加载个简单的text文件
2.2 用Sparkshell运行逻辑回归
2.3 交互式地从S3加载数据
2.4 小结
3章 构建并运行Spark应用
3.1 用sbt构建Spark作业
3.2 用Maven构建Spark作业
3.3 用其他工具构建Spark作业
3.4 小结
4章 创建SparkContext
4.1 Scala
4.2 Java
4.3 Java和Scala共享的API
4.4 Python
4.5 链接和参考
4.6 小结
5章 加载与保存数据
5.1 RDD
5.2 加载数据到RDD中
5.3 保存数据
5.4 连接和参考
5.5 小结
6章 操作RDD
6.1 用Scala和Java操作RDD
6.2 用Python操作RDD
6.3 链接和参考
6.4 小结
7章 Shark-Hive和Spark的综合运用
7.1 为什么用HiveShark
7.2 安装Shark
7.3 运行Shark
7.4 加载数据
7.5 在Spark程序中运行HiveQL查询
7.6 链接和参考
7.7 小结
8章 测试
8.1 用Java和Scala测试
8.2 用Python测试
8.3 链接和参考
8.4 小结
9章 技巧和窍门
9.1 日志位置
9.2 并发限制
9.3 内存使用与垃圾回收
9.4 序列化
9.5 IDE集成环境
9.6 Spark与其他语言
9.7 安全提示
9.8 邮件列表
9.9 链接和参考
9.10 小结
Holden Karau 资深软件开发工程师,现就职于Databricks公司,之前曾就职于谷歌、、微软和Foursquare等著名公司。他对开源情有独钟,参与了许多开源项目,如Linux内核无线驱动、Android程序监控、搜索引擎等,对存储系统、推荐系统、搜索分类等都有深入研究。
译者简介
余璜 阿里巴巴核心系统研发工程师,OceanBase核心开发人员,对分布式系统理论和工程实践有深刻理解,专注于分布式系统设计、大规模数据处理,乐于分享,在CSDN上分享了大量技术文章。
张磊 Spark爱好者,曾参与分布式OLAP数据库系统核心开发,热衷于大数据处理、分布式计算。
从实用角度系统讲解Spark的数据处理工具及使用方法
手把手教你充分利用Spark提供的各种功能,快速编写高效分布式程序
1章 安装Spark以及构建
Spark集群
1.1 单机运行Spark
1.2 在EC2上运行Spark
1.3 在ElasticMapReduce上部署Spark
1.4 用Chef(opscode)部署Spark
1.5 在Mesos上部署Spark
1.6 在Yarn上部署Spark
1.7 通过SSH部署集群
1.8 链接和参考
1.9 小结
本章将详细介绍搭建Spark的常用方法。Spark的单机版便于测试,同时本章也会提到通过SSH用Spark的内置部署脚本搭建Spark集群,使用Mesos、Yarn或者Chef来部署Spark。对于Spark在云环境中的部署,本章将介绍在EC2(基本环境和EC2MR)上的部署。如果你的机器或者集群中已经部署了Spark,可以跳过本章直接开始使用Spark编程。
不管如何部署Spark,首先得获得Spark的个版本,截止到写本书时,Spark的新版本为0.7版。对于熟悉github的程序员,则可以从git://github.com/mesos/spark.git直接复制Spark项目。Spark提供基本源码压缩包,同时也提供已经编译好的压缩包。为了和Hadoop分布式文件系统(HDFS)交互,需要在编译源码前设定相应的集群中所使用的Hadoop版本。对于0.7版本的Spark,已经编译好的压缩包依赖的是1.0.4版本的Hadoop。如果想更深入地学习Spark,推荐自己编译基本源码,因为这样可以灵活地选择HDFS的版本,如果想对Spark源码有所贡献,比如提交补丁,自己编译源码是必须的。你需要安装合适版本的Scala和与之对应的JDK版本。对于Spark的0.7.1版本,需要Scala 2.9.2或者更高的Scala 2.9版本(如2.9.3版)。在写本书时,Linux发行版Ubuntu的LTS版本已经有Scala 2.9.1版,除此之外,近的稳定版本已经有2.9.2版。Fedora 18已经有2.9.2版。Scala官网上的新版在选择Spark支持的Scala版本十分重要,Spark对Scala的版本很敏感。.........
这本书真的让我眼前一亮,作为一名在数据处理领域摸爬滚打多年的从业者,我一直都在寻找能够切实提升工作效率的工具和方法。市面上关于大数据处理的书籍琳琅满目,但真正能做到“快速”且“系统”讲解的却不多。这本书恰恰满足了我的需求。它没有过多地停留在理论层面,而是非常接地气地从Spark的核心概念入手,逐步深入到其各个组件的实际应用。我尤其欣赏它在讲解数据处理工具时,是如何将其与实际场景相结合的。比如,它在介绍DataFrame和Dataset时,不仅阐述了API的用法,还通过具体的代码示例,展示了如何利用这些工具进行数据清洗、转换、聚合等操作,这些示例都非常贴近我们日常工作中遇到的问题。更让我惊喜的是,作者并没有止步于基础功能的介绍,而是深入探讨了Spark的优化技巧,比如如何进行谓词下推、如何选择合适的分区策略,以及如何利用缓存来加速重复计算。这些内容对于我这样需要处理海量数据的用户来说,简直是雪中送炭。读完这本书,我感觉自己对Spark的理解上了一个新的台阶,也对如何编写高效的Spark程序有了更清晰的思路。
评分这本书的结构设计得非常合理,就像一部精心编排的交响乐,从序曲到高潮,层层递进,引人入胜。我最看重的是它对于Spark生态系统的全面覆盖。它不仅仅局限于Spark Core,更是深入探讨了Spark SQL、Spark Streaming、GraphX以及MLlib等重要组件。对于想要构建一个完整的大数据处理平台的开发者来说,这本书提供了宝贵的指导。书中对Spark Streaming的讲解尤其让我印象深刻。作者用通俗易懂的语言,解释了微批处理和连续处理的概念,并提供了如何构建实时数据管道的实用技巧。这对于我之前在处理实时交易数据时遇到的挑战,提供了全新的思路。此外,书中对GraphX的介绍也让我大开眼界,了解到了如何利用Spark来处理图计算问题,这在社交网络分析、推荐系统等领域有着广泛的应用。我甚至还看到了如何将Spark与HDFS、Hive等其他大数据组件进行集成,这使得这本书的实用性更上一层楼。总的来说,这本书为我打开了Spark生态系统的大门,让我看到了大数据处理的无限可能。
评分作为一名对技术细节有极致追求的开发者,这本书无疑是我的“救星”。它没有回避Spark在实际应用中可能遇到的各种棘手问题,反而将其作为重点进行讲解。我尤其喜欢书中关于“调优”的部分,作者提供的各种优化策略,比如如何选择合适的Shuffle管理器,如何配置Spark的内存参数,以及如何利用Broadcast Join来避免昂贵的数据Shuffle,都非常有针对性。书中还详细介绍了Spark的容错机制,以及如何在分布式环境下保证数据的一致性,这对于构建高可用的大数据应用至关重要。我甚至还学到了如何使用Spark的Profile工具来分析作业的性能瓶颈,这比单纯地猜测问题所在要高效得多。这本书不仅仅是技术手册,更像是一位经验丰富的架构师在分享他的“独门秘籍”。它让我明白,编写高效的Spark程序,不仅需要掌握API,更需要对Spark的底层原理有深入的理解,并且懂得如何根据实际场景来选择和配置最合适的参数。读完这本书,我感觉自己在Spark的道路上,已经走得更加稳健和自信。
评分这本书给我的感觉就像一位经验丰富的老司机,手把手教你如何驾驭Spark这辆“数据处理快车”。它最大的亮点在于它的“实战导向”。很多技术书籍往往会堆砌大量的API文档和概念,读起来枯燥乏味,而且学完之后发现离实际应用还有很远的距离。但这本书不同,它从一开始就构建了一个清晰的学习路径,让读者能够循序渐进地掌握Spark的精髓。我最喜欢的部分是它关于Spark SQL的部分。作者用非常生动的比喻和图示,解释了Spark SQL的工作原理,以及如何通过SQL语句来表达复杂的数据转换逻辑。而且,它还强调了Spark SQL在性能优化上的优势,并给出了一些实用的调优建议。除了SQL,书中对Spark Streaming和MLlib的讲解也同样出色。我曾经在处理实时数据流时遇到过很多瓶颈,这本书提供的解决方案让我受益匪浅。关于机器学习库MLlib的部分,作者更是精选了几个常用算法,并详细讲解了如何用Spark进行特征工程、模型训练和评估,这些内容对于想将大数据与机器学习结合的读者来说,非常有价值。总而言之,这本书不是那种看了开头就能猜到结尾的“填鸭式”教学,而是真正让你学会如何“用”Spark。
评分老实说,我曾经对Spark一直抱有一种“知其然,不知其所以然”的状态。我知道它很快,我知道它能处理大数据,但具体是怎么做到的,以及如何才能充分发挥它的潜力,我一直有些模糊。直到我读了这本书,这种模糊感才烟消云散。作者非常善于将复杂的概念拆解成易于理解的部分,并通过大量的代码示例来加深读者的印象。我特别喜欢书中关于Spark执行引擎的部分,它详细地剖析了Spark是如何进行任务调度、如何进行数据Shuffle的,以及DAG(有向无环图)在其中的作用。这些底层的原理讲解,对于我理解Spark的性能瓶颈和进行性能调优至关重要。书中还讨论了Spark的内存管理和垃圾回收机制,这些都是在实际工作中经常会遇到的问题。我甚至还学习到了如何使用Spark的Web UI来监控作业的执行情况,并从中发现潜在的性能问题。这本书不仅仅是教会你如何使用Spark的API,更重要的是,它让你理解Spark的“灵魂”。读完这本书,我觉得自己不只是一个Spark的使用者,更像是一个能够洞察其内部机制的“Spark专家”。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等,本站所有链接都为正版商品购买链接。
© 2025 windowsfront.com All Rights Reserved. 静流书站 版权所有