《超大规模图计算引擎在在线零售场景中的应用-在线零售增长引擎技术分论坛(17页).pdf》由会员分享,可在线阅读,更多相关《超大规模图计算引擎在在线零售场景中的应用-在线零售增长引擎技术分论坛(17页).pdf(17页珍藏版)》请在三个皮匠报告上搜索。
1、超大规模图计算引擎在在线零售场景中的应用伯远AI OS-Platform-GraphContents目录01背景介绍02iGraph的能力及实现03使用案例iGraph 简介自助接入,数据托管、智能运维图存储与检索千亿节点,万亿边全量/单表千万qps秒级实时更新支持自研图查询语言&gremlin标准知识图谱管理系统认知图谱:用户实时行为基础数据用户全网曝光数据用户/商品/店铺/CPV关系数据OneID&Gprofile电商/全网/视频知识图谱应用场景:搜推广、安全TPPDIIWSearchiGraph ProxyTPPMainseCommoniGraph SearcherZone1Zone2Z
2、oneN全量/批量:ODPS实时增量:SwiftAuto-umarsiGraphConsoleTPPConsole3业务场景图谱使用iGraph认知图谱生产2w+表数据用户表商品表品牌表i2is2i交易表c2i产品表SPU表演员表电影表主演表城市表推荐场景1广告场景搜索场景1Youku推荐场景用户认知图谱商品认知图谱用户实时行为表视频知识图谱全网知识图谱类目表特产表iGraph的能力及实现2背景介绍1业务介绍3Content 系统特点 业务场景 原生gremlin引擎 全异步化架构Gremlin是什么?6to graph/查询marko创作的软件的属性g.E(1).hasLabel(”crea
3、ted).inV().hasLabel(”software)=label:software,lang:java,name:lop,pk:3/查询marko创作的软件并返回路径信息g.V(“1”).hasLabel(“person”).outE().hasLabel(”created“).inV().hasLabel(“software”).path()/查询marko认识的人创作的软件g.E(“1”).hasLabel(“knows”).outE().hasLabel(“created”).inV().hasLabel(“software”)/使用属性lang=java来查询软件g.V().b
4、y(software_index).indexQuery(match:lang:java)=label:software,lang:java,name:lop,pk:3=label:software,lang:java,name:ripple,pk:5Gremlin是什么?7其他使用场景多路遍历g.V(“id”).hasLabel(user).union(out(“click”).order().by(“score”).limit(50),out(“pay”).order().by(“score”).limit(50)随机游走g.V().repeat(bothE().sample(1).by(
5、weight).otherV().times(5).path()嵌套遍历g.V(“id”).hasLabel(user).out().where(outE().count().is(gt(5)局部变量g.withSack(1.0f,sum).V().repeat(outE().sack(mult).by(weight).inV().times(2).barrier()Gremlin引擎-业界实现8TitanAzure CosmosAWS NeptuneIBM GraphBaidu HugeGraph华为EYWAGremlin ServerExternal Storage低效存储无法掌控计算下沉
6、难Java语言栈,GC适合分析型场景Gremlin100个算子嵌套Gremlin很难下沉ParseParse&ValidateCacheExpressionPredicateStepCavaUtilitySerializeStrategyvertex,edgetraversermap,set StructureSession pool谓词下沉Optimizer路径优化列裁剪多表操作下沉Executor并行&异步框架ExecutorStrategyCacheKVStorageKKV 倒排向量原生Gremlin引擎Auto UmarsOPS全异步化架构体系Local SSDLocal Optane