GraphScope、Neo4j与TigerGraph单机环境下性能对比

2024-03-12 18:18

本文主要是介绍GraphScope、Neo4j与TigerGraph单机环境下性能对比,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目前工业界和学术界已经开发出了很多图分析系统,针对图分析的计算特性提出了各种各样的优化策略,在图分析任务上取得了优异的性能。近年来,各种各样的图数据库支持了各种查询语言(例如Cypher、GSQL和Gremlin),尝试为用户提供简单易用的图查询功能,利用这些查询语言,用户也可以表达出SSSP、PageRank等图分析算法的计算逻辑。为了对比图分析系统和图数据库在图分析任务上的性能,我们选取了典型的图分析系统GraphScope和图数据库系统Neo4j以及TigerGraph,在单机环境下进行了性能对比。

1、实验介绍

为了比较计算效率,我在阿里云拉起了配置为16核CPU,248GB内存的4台ECS,设计了三组比较实验,分别为Neo4j单机的计算性能,Tigergraph单机的计算性能和GraphScope单机的计算性能。

数据上,我选取了来自LDBC数据集的com-friendster,datagen-9.0_fb,datagen-9.1_fb,datagen-9.2_zf和graph500作为实验数据,以下为实验数据的基本信息:

com-friendster:65608366个点,1806067835条边

datagen-9.0_fb:12857671个点,1049527225条边

datagen-9.1_fb: 16087483个点,1342158397条边

datagen-9.2_zf: 434943376个点,1042340732条边

graph500: 32804978个点,1051922853条边

实验设计上选择常用的SSSP,Pagerank和Triangle Counting算法。以计算时间为指标,对三个系统进行性能上的比较。

2、实验结果

在计算时间上,GraphScope的计算效率远远超过Neo4j和Tigergraph。Tigergraph采用的SSSP算法为Bellman-ford算法,复杂度较高,因此在所有的数据集上都超过了我们设定的3600秒时限。

SSSP算法上,GraphScope单机模式下平均要比Neo4j快176.38倍,最快在datagen-9.2_zf数据集上快了292.2倍。

  图1 不用系统的SSSP算法性能对比

 

SSSP

这篇关于GraphScope、Neo4j与TigerGraph单机环境下性能对比的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/802149

相关文章

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

Python实现Microsoft Office自动化的几种方式及对比详解

《Python实现MicrosoftOffice自动化的几种方式及对比详解》办公自动化是指利用现代化设备和技术,代替办公人员的部分手动或重复性业务活动,优质而高效地处理办公事务,实现对信息的高效利用... 目录一、基于COM接口的自动化(pywin32)二、独立文件操作库1. Word处理(python-d

Java常用注解扩展对比举例详解

《Java常用注解扩展对比举例详解》:本文主要介绍Java常用注解扩展对比的相关资料,提供了丰富的代码示例,并总结了最佳实践建议,帮助开发者更好地理解和应用这些注解,需要的朋友可以参考下... 目录一、@Controller 与 @RestController 对比二、使用 @Data 与 不使用 @Dat

python中字符串拼接的几种方法及优缺点对比详解

《python中字符串拼接的几种方法及优缺点对比详解》在Python中,字符串拼接是常见的操作,Python提供了多种方法来拼接字符串,每种方法有其优缺点和适用场景,以下是几种常见的字符串拼接方法,需... 目录1. 使用 + 运算符示例:优缺点:2. 使用&nbsjsp;join() 方法示例:优缺点:3

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

C++ 各种map特点对比分析

《C++各种map特点对比分析》文章比较了C++中不同类型的map(如std::map,std::unordered_map,std::multimap,std::unordered_multima... 目录特点比较C++ 示例代码 ​​​​​​代码解释特点比较1. std::map底层实现:基于红黑

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对

Golang中拼接字符串的6种方式性能对比

《Golang中拼接字符串的6种方式性能对比》golang的string类型是不可修改的,对于拼接字符串来说,本质上还是创建一个新的对象将数据放进去,主要有6种拼接方式,下面小编就来为大家详细讲讲吧... 目录拼接方式介绍性能对比测试代码测试结果源码分析golang的string类型是不可修改的,对于拼接字