spark里使用scala_如何使用带Scala的Apache Spark GraphX入门

spark里使用scala

编者注:不要错过有关如何使用Apache Spark创建数据管道应用程序的新的免费按需培训课程-在此处了解更多信息。

这篇文章将帮助您开始在MapR沙盒上将Apache Spark GraphX和Scala一起使用。 GraphX是用于图并行计算的Apache Spark组件,它基于称为图论的数学分支建立。 它是一个位于Spark核心之上的分布式图形处理框架。

一些图形概念概述

图形是用于对对象之间的关系进行建模的数学结构。 图由连接它们的顶点和边组成。 顶点是对象,边缘是它们之间的关系。

image00_edge-vertex-relationship

向图是边缘具有与之关联的方向的图。 有向图的一个示例是Twitter关注者。 用户Bob可以跟随用户Carol,而并不意味着用户Carol跟随用户Bob。

image02_bob-跟随颂歌

正则图是每个顶点具有相同数量边的图。 常规图的一个示例是Facebook朋友。 如果Bob是Carol的朋友,那么Carol也是Bob的朋友。

GraphX属性图

GraphX通过弹性分布式属性图扩展了Spark RDD。

属性图是有向多重图,可以有多个平行的边。 每个边和顶点都有与之关联的用户定义的属性。 平行边允许相同顶点之间存在多种关系。

image01_flight-relationship

在本活动中,您将使用GraphX分析航班数据。

情境

作为简单的开始示例,我们将分析三个航班。 对于每个航班,我们都有以下信息:

始发机场 目的地机场 距离
财务总监 ORD 1800英里
ORD DFW> 800英里
DFW SFO> 1400英里

在这种情况下,我们将机场表示为顶点,将路线表示为边。 对于我们的图形,我们将有三个顶点,每个顶点代表一个机场。 机场之间的距离是一个路线属性,如下所示: image04_3-顶点关系

机场顶点表
ID 属性
1个 财务总监
2 ORD
3 DFW

路线边表
SrcId 目的地 属性
1个 2 1800
2 3 800
3 1个 1400

软件

本教程将在包含Spark的MapR沙盒上运行。

启动Spark Interactive Shell

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值