美文网首页
华为云图引擎服务

华为云图引擎服务

作者: 程思扬 | 来源:发表于2022-07-04 14:17 被阅读0次

    前言

    本文将分为以下3个部分进行介绍:

    第1章 什么是图计算

    第2章 图引擎服务介绍

    第3章 查询和分析功能介绍

    本文主要介绍了图计算定义及特点,希望通过本文能够让你了解图计算及华为云图引擎服务,掌握使用图引擎进行查询和分析

    一、什么是图计算

    1.图.无处不在

    在现实生活中,人与人,物品与物品,人与物品之间存在着多样性的关系,我们会获得多种多样的图,如下所示,可以看出图在我们现实生活中是无处不在的。

    通信网络

    顶点: devices, routers; 边: network flow

    [图片上传失败...(image-27a052-1656915095285)]

    社交网络

    顶点: users, posts; 边: relations, Likes

    [图片上传失败...(image-86c8c2-1656915095285)]

    用户商品图

    顶点: users, items; 边: Ratings

    [图片上传失败...(image-de5b33-1656915095285)]

    天气变化的Wiki文章

    顶点: Wiki articles; 边: Links

    [图片上传失败...(image-fe3137-1656915095285)]

    2. 什么是图计算

    • 定义:“图计算”是以“关系”为基础对现实世界的一种“图”结构的抽象表达,以及在这种数据结构上的计算模式

    • 描述: G = (V,E,D) V = vertex (顶点或者节点) E = edge (边) D = data (属性&权重)

    • 擅长: 擅长处理具备连接关系的、海量的、多变的数据的查询、分析;

    特点:

    • 不依赖数据的结构化,数据多样

    • 多数据关联,具备传播能力

    • 数据动态变化,实时交互式分析

    • 可解释

    天然就是图数据关系:

    • 社交关系

    • 资讯传播网络

    • 通信网络

    • 组织结构

    • ……

    适合场景:

    • 意见领袖挖掘

    • 好友推荐

    • 用户分群

    • 组织结构分析

    • ……

    3. 图计算优势

    • 表达能力强,适合表达多种复杂关系、支持丰富语义

    从表达能力上看,传统数据库表达数据相对单一,图计算可以支持N对N的表达,形式更加多样,表达能力更强

    丰富的数据表达,可扩展性支持

    关系数据库 图计算

    (1:1或1:N) (N:N)

    [图片上传失败...(image-97d02-1656915095285)]

    • 大数据量下,潜在关系挖掘 快速高效

    从性能上看,图计算对于多重关系的查询速度远远高于传统的数据库,同时图具备高性能的并行计算能力

    无论从表达能力上还是性能上均可以看出,图计算具有更大的应用优势,

    快速的多跳关系查询

    跳数 关系数据库 图引擎服务 返回的记录数
    2 0.162 0.025289 213597
    3 63.589 0.779019 1031115
    4 1368.662 1.452095 1227152
    5 未完成 1.474496 1230000

    [图片上传失败...(image-f51d7c-1656915095285)]

    • 图计算可能成为AI下一跳的关键基础技术

    图计算在高维稀疏场景性能有望提升百倍

    [图片上传失败...(image-6634dd-1656915095285)]

    NIPS/SIGMOD/NDSI等数据库、图计算和AI领域顶会观点总结:

    • 数学上,在AI计算中,图计算和深度学习是硬币两面,具有等价性、可互换

    4. 图计算 ∙ 稳步上升到顶峰阶段

    [图片上传失败...(image-58e573-1656915095285)]

    5. 图计算发展-技术日趋完善,生态日趋稳定

    图计算功能如今技术已日趋完善,很多公司都发布了自己的图计算产品,生态也已趋稳定

    [图片上传失败...(image-71a3ee-1656915095285)]

    2、 图引擎服务介绍

    1. 图引擎服务:超大规模一体化图分析与查询

    华为云图引擎服务是一种超大规模一体化图分析与查询平台,内部具有丰富的图分析算法库,高性能的图计算内核,分布式高性能存储引擎,支持属性图的扩展,同时开源接口兼容,并且结果呈现格式上多样化,具有大规模,高性能,查询分析一体化,简单易用等优点

    [图片上传失败...(image-e55a1d-1656915095285)]

    [图片上传失败...(image-308961-1656915095285)]

    2. 图引擎服务整体解决方案

    用户可以将自己的历史数据批量式的导入图引擎服务,同时还提供了增量式的数据导入方式,方便用户进行实时的数据更新,也可以通过图引擎提供的SDK轻松访问图引擎服务,使用方便,操作简单。

    [图片上传失败...(image-6731fb-1656915095285)]

    3. 图引擎服务使用页面

    [图片上传失败...(image-ae2181-1656915095285)]

    • 图查询区:支持标准图查询语言Gremlin,兼容您的使用习惯

    • 图分析区:提供丰富的图分析算法,简单易用

    • 可视化区:支持,所见即所得可视化展示

    • 结果记录区:操作记录可见,支持JSON格式结果导出, 轻松获取

    4. 使用场景

    华为云图引擎服务使用场景也非常丰富

    互联网

    好友/商品/资

    讯推荐

    异常行为分析舆情分析

    [图片上传失败...(image-c7183e-1656915095285)]

    知识图谱

    智能问答知识消歧

    学习路径推荐

    [图片上传失败...(image-74a88c-1656915095285)]

    金融风控

    实时欺诈检测失联人员追踪信度分析

    [图片上传失败...(image-64b625-1656915095285)]

    智慧城市

    路径规划

    管道压力调节城市路网调控

    [图片上传失败...(image-7bbd8c-1656915095285)]

    3、 查询功能

    什么是Gremlin?

    [图片上传失败...(image-6184cc-1656915095285)][图片上传失败...(image-34fc98-1656915095285)]

    Gremlin是Apache TinkerPop 框架下的图遍历语言Gremlin是一种函数式数据流语言,可以使得用户使用简洁的方式表述复杂的属性图

    (property graph)的遍历或查询每个Gremlin遍历由一系列步骤

    (step,可能存在嵌套)组成,每一步都在数据流(data stream) 上执行一个原子操作

    除了华为图引擎服务,TA们也用的是Gremlin,已经成为业界的事实标准

    [图片上传失败...(image-5cfe96-1656915095285)][图片上传失败...(image-8938c3-1656915095285)][图片上传失败...(image-a8e232-1656915095286)][图片上传失败...(image-272fac-1656915095286)]

    [图片上传失败...(image-df922a-1656915095286)][图片上传失败...(image-9c5070-1656915095286)][图片上传失败...(image-ab88a7-1656915095286)][图片上传失败...(image-e54e39-1656915095286)]

    1. Gremlin基本操作(一)

    常用的语句如下所示,通过各个语句的轻松组合可以实现复杂查询功能

    • map(x)

    select(“a”,”b”) id() mean() count()value(“age”) order()sum() groupCount()

    • flatMap(x)

    out(“knows”) values(“name”) properties() v()in(“created”) match(x,y,z) outE(“knows”)

    • filter(x)

    has(“name”,“gremlin”) and(x,y)coin(0.5)dedup(10)where(“a”,eq(“b”)or(x,y)sample(10)

    • sideEffect(x)

    groupCount(“m”)tree(“m”)subgraph(“m”)store(“m”)group(“m”)

    2. Gremlin基本操作(二)

    例如: “gremlin” 认识的人的年龄分布

    我们可以将其分解为以下五个步骤

    (1) 所有人

    [图片上传失败...(image-37395c-1656915095286)]

    (2) 然后找到名字为“gremlin”的人

    [图片上传失败...(image-6d1aef-1656915095286)]

    (3) gremlin” 认识的人

    [图片上传失败...(image-7aa2e4-1656915095286)]

    (4) 基于上一步,查询这些人的年龄

    [图片上传失败...(image-6f593a-1656915095286)]

    (5) 获得年龄分布

    [图片上传失败...(image-2b0b66-1656915095286)]

    通过以上五个步骤,我们可以实现gremlin” 认识的人的年龄分布

    3. 查询功能总结

    支持业界标准图查询语言:Gremlin

    Gremlin 遍历由一系列步骤(可能存在嵌套)组成,每一步都在数据流上执行一个原子操作

    基本操作:map(x), filterMap(x)、filter(x)、sideEffect(x)等:

    举例:”gremlin“认识的人的年龄分布

    g.V().has("name","gremlin").cout("knows").values("age").groupCount()

    以上是对华为云图引擎做的简要介绍

    4、 分析功能

    1. 应用场景和算法联系

    [图片上传失败...(image-9c67f1-1656915095286)][图片上传失败...(image-86f198-1656915095286)][图片上传失败...(image-6b86e2-1656915095286)]2.算法实践: 社交网络 — 个体价值发掘

    背景:

    以新浪微博为例,如何给每个用户评分?

    (传统评分=关注数+粉丝数+微博数)

    [图片上传失败...(image-eef24a-1656915095286)]

    基于PageRank的用户评价

    利用各种中心度(centrality),TrustRank之类的算法寻找社交网络中的领袖人物(高价值用户)

    3. 算法实践: 社交网络 — 好友推荐

    背景:

    你在 Facebook 上更新一下联系人,会得到后台很多联系人推送,你会发现Facebook 的推送节制而高效, 既没过分打扰,又能打开你的人脉

    [图片上传失败...(image-b5757a-1656915095286)]

    基于三元闭包理论的好友推荐

    [图片上传失败...(image-13e706-1656915095286)]

    基于三元闭包理论,结合图上的三角计数,聚类系数,最短路径,k度好友,关联预测等算法,进行社交网络紧密度分析,实现好友推荐

    4. 算法实践: 社交网络 — 社团推荐

    背景:

    已知老王的朋友圈里的人相关信息,能否估计老王经济状况、信用风险?

    [图片上传失败...(image-3a542b-1656915095286)]

    “物以类聚,人以群分”

    [图片上传失败...(image-2365fc-1656915095286)]利用社团算法(K-core, Louvain,Label Propagation等)进行社团/群组分析

    5. 算法实践: 社交/多媒体/电商 — 实时推荐

    背景:

    某电影平台上,拥有庞大的用户群、电影库,如何在用户进行一系列行为时进行实时精准的推荐?

    如何解决数据稀疏性问题,如何考虑复杂的关系的影响……?

    采用Pixie、GRank等多种算法进行大数据量、复杂场景下的实时推荐

    6. 算法实践: 分析功能总结

    应用场景:社交网络、精准营销、信贷保险等

    功能划分:找关联(链路分析、度/邻居)、找路径、找群体( 社团类、传播类)、找特征

    图计算算法:PageRank、最短路、K-hop、聚类系数、三角计数、Centrality、最大关联子图、

    Degree Correlation、K-core、标签传播、Louvain、PPR、关系预测、传播模型、node2vec等

    算法实践举例:

    个体价值发掘:

    PageRank、Centrality、TrustRank 等

    好友推荐:

    基于三元闭包理论

    三角计数,聚类系数,最短路径,k度好友等

    社团发现:

    K-core, Louvain,Label Propagation等社团算法

    实时推荐:

    Pixie、GRank等

    相关文章

      网友评论

          本文标题:华为云图引擎服务

          本文链接:https://www.haomeiwen.com/subject/blpdbrtx.html