统一识别_图计算| 学习笔记

简介: 快速学习统一识别_图计算

开发者学堂课程【2020版大数据实战项目之 DMP 广告系统(第七阶段)统一识别_图计算】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/682/detail/11840


统一识别_图计算

图计算本身在调用的时候比较简单,没有 API,所以本节简单介绍下什么是图计算。

首先可以看到相应的两个数据集:

)).toDF( colNames="id", "name","age")

一个叫做 vertexvertex 可以理解为一个点,点里的数据第一列是 id, 第二列是 name,第三列是 age,第二个数据集val edge = spark.createDataFrame(List( 

val edge = spark.createDataFrame(List(

("a","b", "friend"),

("b","c","follow"),

("c","b","fo1low"),

("f""c","follow"),

("e","f","follow"),

("e","d","friend"),

("d","a","friend"),

("a","e","friend")

)).toDF( colNames= "src","dst","relationship")

}

}

// edge 对应的是一个边,这个边里的数据有"src"一端,"dst"另一端目标,"relationship"关系,所以这个vertex 这个点描述的其实是一个人,这个人的 id、名字、年龄是多少,edge 其实是在描述。

人与人之间的关系,找到ABC的所有关系。

画一个简略的草图,

首先第一个是A,第二个B,第三个为C,接下来AB有关系,可以连一条线,BC有关系,连线,CD没有关系,fc没有关系,e""f",""e""d","d""a""a""e 都没有关系,只找有关系的ABBC。如果这样,C通过B也是可以找到A的。

 2022-11-22 (19).png

那么想通过一个顶点找到和所有点都关联的点需要怎么去找呢?

在写之前要导入两个 mailyilai,

<dependency>

<groupId>graphframes</groupId>

<artifactId>graphframes</artifactId>

<version>0.7.0-spark2.4-s_2.11</version>

</dependency>

<dependency>

<groupId>org.apache.spark</groupId>

<artifactId>spark-graphx_2.11</artifactId>

<version>${spark.version}</version>

</dependency)

这一串代码导入Pom.xml文件中,往下实现通过关系找到哪一些人是可以在一个团队里、那些人是相互有关系的需求,

spark.sparkContext.setCheckpointDir("checkpoint")

val graph = GraphFrame(vertex,edge).connectedComponents.run()

graph.show()

}

}

// 创建一个 GraphFrame,接收两个参数分别为 vertexedge,使用 connectedComponents划分团队关系,对图中所有点进行串联,还需调用 run 才可程序运行,获取到一张图 graph,使用 show 打印这张图,看其中信息,运行出结果后发现报错,

2022-11-22 (21).png

错误需要设置 CheckpointDir  的目录。所以在调用 run 之前,通过spark.sparkContext 来去设置一个 setCheckpointDir,目录称为"checkpoint"

此时再运行一遍发现还在报错,是因为 GraphFrame JsonDSL$ 有冲突,需要打开 pom 文件找到

<dependency>

<groupId>org.json4s</groupId>

<artifactId>json4s-jackson_2.11</artifactId>

version>3.6.6</version>

</dependency>

这个 jar 包进行删除可解决。

2022-11-22 (23).png

注意:顶点这个数据集当中必须有一列叫做 id,会按照这个 id 来进行联通,边“edge”这个数据集当中必须要有两列,"src""dst",边的两端。把能联系起来的点放到同一个 component 中。

相关文章
|
数据可视化 大数据 定位技术
I+关系网络分析发布,提供完整的可视化分析和关系引擎功能
I+关系网络分析是以OLP模型为核心,面向业务快速建模,为开发者和终端用户提供大数据关系计算引擎(含API服务)和可视化交互分析能力,面向安防、关税、银行、保险、互联网等提供的产品化方案。目前,I+关系网络分析已在阿里巴巴、蚂蚁金服集团内广泛应用于反欺诈、反作弊、反洗钱等风控业务。
4546 0
|
4月前
|
运维 监控 JavaScript
函数计算产品使用问题之如何查询文生图接口地址
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
6月前
|
机器学习/深度学习 数据处理 API
视觉智能平台常见问题之通用图像打标位置报警告如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
视觉智能平台常见问题之通用图像打标位置报警告如何解决
|
11月前
|
C++
3D模型在线转换工具
NSDT 3Dconvert是一个可以进行3D模型格式转换的在线工具,并支持GLTF、GLB、OBJ、STL、STP、IGS、FBX、IFC、DXF等3D模型在线预览和转换成果下载。
906 1
3D模型在线转换工具
|
机器学习/深度学习 自然语言处理 BI
FourIE:基于图卷积网络的跨任务实例表征交互和标签依赖的联合信息抽取模型
现有的信息抽取(IE)工作主要是分别解决四个主要任务(实体提及识别、关系抽取、事件触发词检测和论元抽取),无法从任务之间的相互依赖中获益。
119 2
|
数据可视化 数据挖掘 Linux
转录组下游分析丨利用limma包进行差异表达分析,结果可视化绘制火山图和热图
转录组下游分析丨利用limma包进行差异表达分析,结果可视化绘制火山图和热图
|
机器学习/深度学习 数据采集 人工智能
中科大提出统一输入过滤框架InFi:首次理论分析可过滤性,支持全数据模态
中科大提出统一输入过滤框架InFi:首次理论分析可过滤性,支持全数据模态
240 0
|
图计算 开发者 iOS开发
统一识别-标签聚合| 学习笔记
快速学习统一识别-标签聚合
统一识别-标签聚合| 学习笔记
|
开发者
统一识别_完成| 学习笔记
快速学习统一识别_完成
统一识别_完成| 学习笔记
|
图计算 开发者
统一识别_图计算| 学习笔记
快速学习统一识别_图计算