您的位置:首页 > 其它

Spark Graphx in Action(一)

2016-11-29 14:52 134 查看
尝试翻译一下Spark Graphx in Action

第一部分 Spark和图

图是由点和边组成的数据结构,而不是数学课上教授的几何图形。他们似乎很强大,不过他们能用来干什么仍然是个谜,“图可以做任何事情”这个答案等于没说。

在第一章我们对各种不同的图结构进行了粗略的分类。在第三章的后半段我们会进行举例。

由于Spark的运行速度惊人,他现在越来越受到欢迎。GraphX是在spark上运用图数据结构的具体应用。第一章展示了如何将graphx融于现有的数据处理流程。第二章展示了如何在graphx上运用pagerank算法。第三章是Spark,scala,图计算的速成教学。

 

第一章 两个重要的技术:spark与图计算

总所周知,我们产生的数据越来越多,有时候单个数据本身虽然重要,他们之间的关系也同样重要。从相互有关系的数据集收集到的信息,可以运用到反欺诈,生物信息,网页排序等领域。

图在开发数据的关系上提供了强大的计算能力。用图的数据结构,可以将各个数据点作为图的顶点,将数据与数据之间的关系作为连接点的边。图可以用于模拟计算机视觉,自然语言处理和推荐系统等不同领域。

通过这种对连接数据的表示,得到了大量的工具和技术。其可以用于挖掘网络的信息内容。在本书涵盖的许多工具中,你会发现PageRank(寻找最有影响力的网络成员),使用LDA进行主题建模以及通过聚类系数来发现高度连接的社群。

然而,传统用来进行数据分析的工具,例如关系型数据库,不适用于解决这类问题。面向表的框架(例如SQL)在表示典型的图形概念(例如,跟踪一连串的关系连接)时是很麻烦的。此外,传统的数据分析方法在数据量增大时,无法横向扩展。

使用图计算系统可以解决上述问题。它可以提供数据建模和编程接口,并且它提供的查询和分析图的接口在使用上更加自然。它提供用于从原始数据源创建图并挖掘其中的信息所必需的处理手段。

Apache Spark是大数据处理的新一代框架,它已经取代了Hadoop--这一迎来了大数据时代的开源数据处理平台。它可以轻松扩展到数百个节点的集群,同时由于Spark的内存数据处理特性,它的处理速度通常可以比Hadoop快10-100倍。

GraphX是Spark顶层的图形处理层,它将大数据处理的强大功能带入了图计算领域--这些图太大,无法适合单个机器。人们很久以前开始使用Spark的图计算技术,包括曾经的Bagel模块,但是用了GraphX之后,我们可以通过标准化的方法来实现这一点,同时它还提供了一个有用的算法库。

以下是您可能想使用Spark GraphX的一些原因:

l 您已经有一套Spark数据处理链路,并希望在其中加入图计算。

l 你很好奇Spark或GraphX的力量。

l 图数据对您变得越来越重要。

l 您的图数据太大,无法放在单个机器上。

l 您不希望有多个应用程序访问同一个数据存储或您计划向Spark添加REST服务器;

l 您不需要传统数据库所提供的事务或计划使用图形数据库如Neo4j或Titan与GraphX配合使用。

l 您已经有一个Spark集群。

l 您想使用Scala。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Spark Graphx