序言 XI

致谢XIII

关于本书 XIV

关于封面插图 XVIII

第1部分 Spark和图

1 两项重要的技术:Spark和图 3

1.1 Spark:超越Hadoop MapReduce 4

1.1.1 模糊的大数据定义 6

1.1.2 Hadoop:Spark之前的世界 6

1.1.3 Spark:内存中的 MapReduce处理 7

1.2 图:挖掘关系中的含义 9

1.2.1 图的应用 11

1.2.2 图数据的类型 12

1.2.3 普通的关系型数据库在图方面的不足 14

1.3 把快如闪电的图处理放到一起:Spark GraphX 14

1.3.1 图的属性:增加丰富性 15

1.3.2 图的分区:当图变为大数据集时 17

1.3.3 GraphX允许选择:图并行还是数据并行 19

1.3.4 GraphX支持的各种数据处理方式 19

1.3.5 GraphX与其他图系统 21

1.3.6 图存储:分布式文件存储与图数据库 23

1.4 小结 23

2 GraphX快速入门 24

2.1 准备开始并准备数据 24

2.2 用Spark Shell做GraphX交互式查询 26

2.3 PageRank算法示例 29

2.4 小结 31

3 基础知识 32

3.1 Scala—Spark的原生编程语言 33

3.1.1 Scala的理念:简洁和表现力 33

3.1.2 函数式编程 34

3.1.3 类型推断 38

3.1.4 类的声明 39

3.1.5 map和 reduce 41

3.1.6 一切皆是“函数” 42

3.1.7 与 Java的互操作性 44

3.2 Spark 44

3.2.1 分布式内存数据: RDD 44

3.2.2 延迟求值 47

3.2.3 集群要求和术语解释 49

3.2.4 序列化 50

3.2.5 常用的 RDD操作 50

3.2.6 Spark和 SBT初步 54

3.3 图术语解释 55

3.3.1 基础 55

3.3.2 RDF图和属性图 58

3.3.3 邻接矩阵 59

3.3.4 图查询系统 59

3.4 小结 60

第2部分 连接顶点

4 GraphX 基础 65

4.1 顶点对象与边对象 65

4.2 mapping操作 71

4.2.1 简单的图转换 71

4.2.2 Map/Reduce 73

4.2.3 迭代的 Map/Reduce 77

4.3 序列化/反序列化 79

4.3.1 读 /写二进制格式的数据 79

4.3.2 JSON格式 81

4.3.3 Gephi可视化软件的 GEXF格式 85

4.4 图生成 86

4.4.1 确定的图 86

4.4.2 随机图 88

4.5 Pregel API 90

4.6 小结 96

5 内置图算法 97

5.1 找出重要的图节点:网页排名 98

5.1.1 PageRank算法解释 98

5.1.2 在 GraphX中使用 PageRank 99

5.1.3 个性化的 PageRank 102

5.2 衡量连通性:三角形数 103

5.2.1 三角形关系的用法 103

5.2.2 Slashdot朋友和反对者的用户关系示例 104

5.3 查找最少的跳跃:最短路径 106

5.4 找到孤岛人群:连通组件 107

5.4.1 预测社交圈子 108

5.5 受欢迎的回馈:增强连通组件 114

5.6 社区发现算法:标签传播 115

5.7 小结 117

6 其他有用的图算法118

6.1 你自己的GPS:有权值的最短路径 119

6.2 旅行推销员问题:贪心算法 124

6.3 路径规划工具:最小生成树 127

6.3.1 基于 Word2Vec的推导分类法和最小生成树 131

6.4 小结 135

7 机器学习 136

7.1 监督、无监督、半监督学习 137

7.2 影片推荐: SVDPlusPlus. 139

7.2.1 公式解释 146

7.3 在MLlib中使用GraphX 146

7.3.1 主题聚类:隐含狄利克雷分布 147

7.3.2 垃圾信息检测: LogisticRegressionWithSGD 156

7.3.3 使用幂迭代聚类进行图像分割(计算机视觉) 160

7.4 穷人(简化版)的训练数据:基于图的半监督学习 165

7.4.1 K近邻图构建 168

7.4.2 半监督学习标签传播算法 175

7.5 小结 180

第3部分 更多内容

8 缺失的算法 183

8.1 缺失的基本图操作 184

8.1.1 通用意义上的子图 184

8.1.2 图合并 185

8.2 读取RDF图文件 189

8.2.1 顶点匹配以及图构建 189

8.2.2 使用 IndexedRDD和 RDD HashMap来提升性能 191

8.3 穷人(简化版)的图同构:找到Wikipedia缺失的信息 197

8.4 全局聚类系数:连通性比较 202

8.5 小结 205

9 性能和监控 207

9.1 监控Spark应用 208

9.1.1 Spark如何运行应用 208

9.1.2 用 Spark监控来了解你的应用的运行时信息 211

9.1.3 history server 221

9.2 Spark配置 223

9.2.1 充分利用全部 CPU资源 226

9.3 Spark性能调优 227

9.3.1 用缓存和持久化来加速 Spark 227

9.3.2 checkpointing 230

9.3.3 通过序列化降低内存压力 232

9.4 图分区 233

9.5 小结 235

10 更多语言以及工具 237

10.1 在GraphX中使用除Scala外的其他语言 238

10.1.1 在 GraphX中使用 Java 7 238

10.1.2 在 GraphX中使用 Java 8 245

10.1.3 未来 GraphX是否会支持 Python或者 R 245

10.2 其他可视化工具:Apache Zeppelin 和 d3.js 245

10.3 类似一个数据库:Spark Job Server 248

10.3.1 示例:查询 Slashdot好友的分离程度 250

10.3.2 更多使用 Spark Job Server的例子 253

10.4 通过GraphFrames在Spark的图上使用SQL 254

10.4.1 GraphFrames和 GraphX的互操作性 255

10.4.2 使用 SQL进行便捷、高性能的操作 257

10.4.3 使用 Cypher语言的子集来进行顶点搜索 258

10.4.4 稍微复杂一些的 YAGO图同构搜索 260

10.5 小结 264

附录A 安装Spark 266

附录B Gephi可视化软件 271

附录C 更多资源 275

附录D 本书中的Scala小贴士 278

python graphx_Spark GraphX实战相关推荐

  1. Python自然语言处理实战

    出版社: 机械工业出版社 ISBN:9787111597674 出版时间:2018-06-01 作者:涂铭,刘祥,刘树春 Python自然语言处理实战

  2. python高效开发实战

    Django.Tornado.Flask.Twisted 作者:刘长龙 出版社:电子工业出版社 出版时间:2016年10月 python高效开发实战

  3. 美式期权定价python_【优质好课】Python量化期权实战应用

    优质好课 · 涨价预警 <Python量化期权实战应用>课程,在预售初期就备受关注,课程开始上线以来,内容更是受到了广大学员的一致好评. 现在,眼看着课程就快要更新完毕了,如果还没有开始学 ...

  4. python运维实战--跨堡垒机连接二级服务器上传文件

    python运维实战--跨堡垒机连接二级服务器上传文件 paramiko的有关概念和操作 Welcome to Paramiko! - Paramiko documentation 这个python脚 ...

  5. python商业爬虫教程_廖雪峰老师的Python商业爬虫课程 Python网络爬虫实战教程 体会不一样的Python爬虫课程...

    廖雪峰老师的Python商业爬虫课程 Python网络爬虫实战教程 体会不一样的Python爬虫课程 1.JPG (53.51 KB, 下载次数: 1) 2019-8-9 08:15 上传 2.JPG ...

  6. 《Python硬件编程实战》——2.8 在Mac中安装Python

    本节书摘来自华章计算机<Python硬件编程实战>一书中的第2章,第2.8节,作者:李茂 著, 更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2.8 在Mac ...

  7. python爬虫文件代码大全-Python网络爬虫实战项目代码大全(长期更新,欢迎补充)...

    WechatSogou[1]- 微信公众号爬虫.基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典.[1]: https://github ...

  8. python 自动化-Python API 自动化实战详解(纯代码)

    主要讲如何在公司利用Python 搞API自动化. 1.分层设计思路 dataPool :数据池层,里面有我们需要的各种数据,包括一些公共数据等 config :基础配置 tools : 工具层 co ...

  9. python项目开发实战网盘-python项目开发实战 第2版

    python项目开发实战 第2版是一本Python项目开发流程实战手册,由日本BePROUD股份有限公司编著.本书的内容全部基于python开发事实,全部都是BeProud员工实际尝试.实践过的,可以 ...

  10. python爬虫项目-33个Python爬虫项目实战(推荐)

    今天为大家整理了32个Python爬虫项目. 整理的原因是,爬虫入门简单快速,也非常适合新入门的小伙伴培养信心.所有链接指向GitHub,祝大家玩的愉快~O(∩_∩)O WechatSogou [1] ...

最新文章

  1. 第十七届智能车竞赛何时开始呀?
  2. Java基础:char类型字节占用数
  3. linux 系统后门检测工具,Linux系统的各种后门和日志工具详细介绍[2]
  4. linux运维常用命令一句话
  5. Node 即学即用 笔记 思维导图
  6. 用C语言写HMI程序,HMI画面元素组成设计及代码生成方法与流程
  7. python timeit用法_十大Python开发技巧
  8. truncate delete 与 drop的区别
  9. 2021 年高教社杯全国大学生数学建模竞赛题目(C 题 生产企业原材料的订购与运输)
  10. Shell多线程编程的实例
  11. 真好玩python教孩子学编程_Python真好玩:教孩子学编程
  12. 相机与镜头的基本概念
  13. 苹果电脑表格取消自动计算机,苹果电脑excel序列被隐藏怎么办
  14. html5页面分享到微信qq,HTML 分享页面到QQ/微信、微博等平台
  15. 基于JAVA学生成绩管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署
  16. PPT柱形统计图制作详情——小白秒变大神
  17. html 置换元素和非置换元素
  18. android拷机工具,如何科学理解麒麟9000的拷机功耗?
  19. Combining Implicit Function Learning and Parametric Models for 3D Human Reconstruction
  20. python工商银行流水_python爬取银行名称和官网地址

热门文章

  1. 如何使用Xshell连接linux服务器
  2. ModelSim 入门使用教程
  3. turbo c用C语言编写窗口,Turbo C 2.0使用教程(使用Turbo C 2.0编写C语言程序)
  4. 破茧成蝶2——以产品为中心的设计革命
  5. 读赵凯华之《新概念物理教程.热学》
  6. CCNA学习笔记 基础知识回顾(1)
  7. HG255d 刷最新openwrt Pandorabox并安装njit拨号
  8. Java学习电子书大全
  9. ACCESS数据库注入解析
  10. hadoop安装个人心得