Spark GraphX in Action
Michael S. Malak / Robin EastPublishing House of Electronics Industry2017
No rating yet- Word count
- 355 words
- Chapters
- 22
- ISBN
- 9787121310430
Tags
Computing Programming Publishing HouseFunctional ProgrammingBig DataData ProcessingMachine LearningCore ProceduresElectronics Industry编程Programming AbilityQuick StartTranslationAdvanced ReadingSummary
This is the Chinese translation of Manning's Spark GraphX in Action, translated by Shi Jinkui and Huang Guangyuan and published by Publishing House of Electronics Industry in 2017. Based on Spark GraphX 1.6, it is an introductory-to-intermediate book on graph computing that requires neither mastery of Scala nor prior GraphX experience—basic programming ability is enough to follow along. The book has 10 chapters in three parts. Part 1 (Chapters 1–3) covers prerequisites: one chapter explains the relationship among big data, Hadoop, Spark, and graph computing, clarifying property graphs, graph partitioning, graph parallelism, and data parallelism; then Spark Shell is used to demonstrate interactive, quick-start GraphX, with basics of Scala functional programming, RDDs, and graph terminology filled in. Part 2 (Chapters 4–7) gets into GraphX itself: core classes such as Vertex and Edge and core operations such as map, Map/Reduce, and Pregel; graph serialization and generation; built-in algorithms including PageRank, triangle counting, shortest paths, connected components, strongly connected components, and label propagation; then classic algorithms such as weighted shortest paths, the greedy traveling salesman, and minimum spanning trees show how to implement your own algorithms on top of GraphX; the machine learning chapter demonstrates GraphX with MLlib through SVDPlusPlus movie recommendation, LDA topic modeling, logistic regression spam filtering, and power-iteration clustering for image segmentation. Part 3 (Chapters 8–10) discusses operations GraphX lacks (subgraphs, graph union, reading RDF, global clustering coefficient), performance monitoring and tuning (caching, checkpointing, serialization, graph partitioning), and peripheral tools such as calling GraphX from Java, Zeppelin + d3.js visualization, Spark JobServer, and GraphFrames. Four appendices cover installing Spark, Gephi visualization, further resources, and Scala tips, making the book suitable for hands-on reading.Editor's review
图计算长期是大数据技术栈里被讲得最少的一块,市面上多数 Spark 书只用一个章节草草带过 GraphX,这本书却把 GraphX 单独写满了一本。它的价值首先在于“少而专”:从属性图、图分割、Pregel 这些概念讲起,一路讲到 PageRank、三角形计数、连通分量等内置算法,再到带权最短路径、最小生成树这类需要自己动手实现的图算法,路线非常清晰。 其次是“能跑起来”。作者用 Spark Shell 交互式演示快速上手,用 Slashdot 社交数据、影片推荐等真实案例串起算法与业务场景,还把 GraphX 与 MLlib 的配合、RDF 文件读取、图合并、全局聚类系数这些实际开发中常被卡住的细节单独成章。性能与监控一章面向生产环境,缓存、checkpoint、序列化、图分割讲得都很实在,这在入门书里并不多见。 需要说明的是,书中示例基于 Spark GraphX 1.6 版本,如今回看代码环境已经偏旧,Scala API 与新版 Spark 可能有出入;同时中文版存在若干排版与术语小瑕疵。尽管如此,作为一本专门讲图计算的中文书,它仍然是入门阶段最省力的选择,配合官方文档与 GraphFrames 资料一起看效果更好。Who it's for
A good fit for
- 已经会用 Spark,想补齐图计算这块短板的工程师
- 要做社交网络、推荐、反欺诈等关系数据分析的开发者
- 使用 Scala 开发、需要深入理解 GraphX API 的数据工程师
- 具备编程基础、准备进入大数据方向的研究生或自学者
Not a good fit for
- 完全没有编程经验、也从未接触 Spark 的零基础读者
- 只想找一本 Spark 综合入门书、不关心图计算的读者
- 需要直接使用 PySpark GraphFrames 或新版本 Spark 3.x 的从业者(书中版本偏旧)
Reading tips
- 读到第 4、5 章时务必配好本地或虚拟机环境,跟随书中 Spark Shell 示例逐条敲一遍。
- 熟悉 Spark 与 Scala 的读者可以先跳到第 4 章,第 1—3 章按需查阅,不必顺序通读。
- 书中的 1.6 版本 API 与新版 Spark 有差异,实践时以官方文档为准并做好版本对照记录。
- 读第 7 章机器学习前,先补一点 MLlib 基本概念,理解 GraphX 与 MLlib 协同的思路比照抄代码更重要。
About the publisher
Publishing House of Electronics Industry China · Founded in 1982The Publishing House of Electronics Industry is a comprehensive publisher distinguished by its focus on electronic information and related fields. Judging from the more than 3,000 titles in its catalogue, its publishing covers programming and design, artificial intelligence, computer science, finance and economics, photography, and social sciences, attending both to cutting-edge technology and to general readers. Representative titles include Factor Investing: Methods and Practice, x86 Assembly Language: From Real Mode to Protected Mode, The RISC-V Reader, Artificial Intelligence: Speech Recognition, Understanding and Practice, Phased Array Radar Technology, Radar Target Characteristics, and 100 Go Mistakes and How to Avoid Them, most of which centre on technical methods and engineering practice. Its authors include Shi Chuan, Li Zhong, Wang Xiaobo, David Patterson, Andrew Waterman, and Yu Zihao, among others from China and abroad. Owing to limited public information, no further publishing features are elaborated here.
Contents
- Translator's Preface
- Foreword
- Acknowledgments
- About This Book
- About the Cover Illustration
- Part 1 Spark and Graphs
- Chapter 1 Two Important Technologies: Spark and Graphs
- Chapter 2 GraphX Quick Start
- Chapter 3 Fundamentals
- Part 2 Connecting Vertices
- Chapter 4 GraphX Basics
- Chapter 5 Built-in Graph Algorithms
- Chapter 6 Other Useful Graph Algorithms
- Chapter 7 Machine Learning
- Part 3 More
- Chapter 8 Missing Algorithms
- Chapter 9 Performance and Monitoring
- Chapter 10 More Languages and Tools
- Appendix A Installing Spark
- Appendix B Gephi Visualization Software
- Appendix C Further Resources
- Appendix D Scala Tips in This Book
FAQ
这本书是原版还是中文译本?原作者是谁?
它是 Manning 出版社 2016 年出版的《Spark GraphX in Action》的中文译本,原作者为 Michael S. Malak 与 Robin East,由时金魁、黄光远翻译,电子工业出版社 2017 年出版,ISBN 为 9787121310430。零基础、不会 Scala 能读懂吗?
可以。书中第 3 章专门介绍 Scala、RDD 和图的基本术语,作者也声明不要求读者有 Spark 与 Scala 经验,只要求具备基本编程能力;但如果完全没写过代码,会比较吃力。书中的示例适用于现在的 Spark 版本吗?
书中示例基于 Spark GraphX 1.6 版本,与如今的 Spark 3.x 在 API 和运行环境上有出入,部分代码可能需要调整;建议把本书当作原理与思路参考,同时对照官方文档实践。这本书和《Spark快速大数据分析》有什么区别?
后者是 Spark 全局性的入门书,覆盖面广但图计算只占一小节;本书只聚焦 GraphX 图计算,从概念、API、算法到性能调优讲得更细更深入,属于专题型读物。书里涉及机器学习内容吗?需要额外基础吗?
第 7 章专门讲机器学习,通过影片推荐、LDA 主题模型、逻辑回归反垃圾、图像分割等例子介绍 GraphX 与 MLlib 的配合,不重讲机器学习基础,建议先了解监督学习与无监督学习的基本概念。This site is an index: you start “Search all sources” in your browser, and the entries it lists all point to third-party sites; please judge their availability yourself.
About the author
Michael S. Malak AuthorMichael S. Malak is a computer technology author about whom limited public information is available; what can be confirmed centers on his writing related to Spark GraphX. His representative work, Spark GraphX in Action, falls under computer and programming design books and is aimed at learners and developers working with graph computing and big data processing. This work suggests that his writing focuses on turning knowledge of distributed graph computing frameworks into practical, actionable content for readers who want to understand how to use Spark GraphX. Because reliable public records of his birth and death dates, nationality, education, and professional career are unavailable, this introduction does not speculate further about his personal life. It presents his writing orientation based only on the work listed here: practice-oriented technical explanation centered on a specific framework. Such content typically combines concepts with examples, making it useful for readers to consult and apply in real projects and giving the work some reference value in related technical learning contexts.
Robin East AuthorRobin East is a computer technology author whose personal information is rather limited in publicly available sources, but whose name is known to Chinese readers through the representative work Spark GraphX in Action. The book addresses the field of big data and graph computing, focusing on GraphX, the graph processing component of Apache Spark, and falls under the category of computer and programming design technical books. Judging from the subject matter, Robin East's writing emphasizes combining the core concepts of a distributed computing framework with engineering practice, helping readers understand the principles of the graph computing model and how it is applied in real data processing tasks. Because verifiable details about the author's life, nationality, and professional background remain unclear and public information is limited, it is difficult to say more about academic experience or career trajectory. Based on the available information, the contribution lies mainly in this practical, developer-oriented book, which offers Chinese readers a fairly systematic learning path for those wishing to get started with or go deeper into Spark graph computing.