1、DataFunSummit#2024GraphAr:开源的标准图存储文件格式演讲人-曾维彬-阿里巴巴01为什么要有GraphAr02GraphAr 是什么03GraphAr 能做什么04GraphAr的开源发展目录CONTENTDataFunSummit#202401为什么要有GraphAr从图计算生态与文件存储场景说起场景一:多个图系统的协同工作一个真实场景的完整工作流数据载入以及 ETL图的模式匹配,例如clique图学习算法图的分析算法,例如标签扩散验证结果及可视化SQL/DataFrame图数据库GNN 系统图分析系统交互式分析和可视化可视化工具图分析系统 A图数据库 A图数据库 BG
2、NN 系统不同系统之间的数据导入导出图分析系统 B标准化格式需要一个标准化图文件存储格式图分析系统 A图数据库 A图数据库 BGNN 系统图分析系统 B可视化工具场景二:数据湖中的图查询Dad:Person labels:Asian&EnrolleeChild:Personlabels:Asian&EnrolleeMom:Person labels:Asian&Enrollee:Diseasename:Hypertension:Diagnoseddate2020-01-01:IsParent:DiagnosedQuery patternDisease(did,name)Person(label
3、s,pid)Diagnosed(pid,date,did)IsParent(sid,date,oid)PersonDiseaseDiagnosedIsParentData lakeSchema of an example LPG!Query on data lake1.Hard to express LPG;2.Inefficient to implement.No label filtering:Disease-:Diagnosed-:Person针对关系型数据的文件格式:1.难以准确表达图的语义2.无法支持高效的图查询数据湖中的图查询Apache ORC、Parquet 等文件格式被广泛用
4、于关系型数据的存储数据中包含的属性图语义解决方案:一种标准的图存储文件格式图存储文件格式准确表达图语义兼容现有生态高效的访问与查询DataFunSummit#202402什么是 GraphAr什么是GraphArGraphAr:一个用于图数据归档和交换的标准文件格式,目标是让不同的应用或系统(内外存图存储、数据库、图计算系统和交互式图查询框架)能够方便高效地构建和访问图数据可视化工具图分析系统 A图数据库 A图数据库 BGNN 系统图分析系统 BGraphAr图分析系统 A图数据库 A图数据库 BGNN 系统图分析系统 B可视化工具GraphAr 的特性广泛通用的文件格式定义独立于计算/存储系
5、统的文件格式属性图建模,支持多种数据类型兼容多种文件系统(本地文件系统、OSS、S3)和负载文件类型(Parquet、Orc、Csv)支持多种属性图的拓扑表示(COO、CSC、CSR)丰富的数据读写和转化接口内/外存图计算的直接数据源多语言 SDK(C+、JAVA、Scala、Python)不同层次的读写 API简单易用的数据转换工具利用 Apache Spark 批量生成、加载、转换数据格式方便高效地追加点数据和属性组Neo4jNebulaGraphApache HugeGraphGraphScopeVineyard属性图(LPG)数据模型personpersonid:933firstNam
6、e:MahindalastName:Pereragender:maleid:6597069767117firstName:ElilastName:Peretzgender:femalelikescreationDate:2010-07-30T15:19:53.298+0000knowshasCreatorcreationDate:2010-09-17T05:14:53.412+0000id:618475290625creationDate:2011-08-17T14:26:59.961+0000locationIP:31.210.17.48browserUsed:Chromecontent:y