当前位置:网站首页>Figure database | Nepal graph v3.1.0 performance report
Figure database | Nepal graph v3.1.0 performance report
2022-07-02 15:56:00 【Figure database nebulagraph】
This article was first published in Nebula Graph Community official account

Department of literature Nebula Graph Distribution version v3.1.0 Performance test report of .
Contents of this article
- Test environment
- Test data
- About LDBC-SNB
- Test instructions
- Test cases and results
- MatchTest1
- MatchTest2
- MatchTest3
- MatchTest4
- MatchTest5
- 3.1.0 vs 3.0.0(Baseline)
- MatchTest1
- MatchTest2
- MatchTest3
- MatchTest4
- MatchTest5
Test conclusion
stay v3.1.0 In the version , Query and data import performance is basically the same as v3.0.0 flat ( Reference resources :v3.0.0 Performance report ).MATCH Statement is optimized for attribute reading , Corresponding use cases are added in this test , Performance comparison v3.0.0 A big increase .
Test environment
Both the server and the pressure measuring machine are physical machines

- Be careful : server setting CPU by Performance Pattern .
Test data
The test data are LDBC-SNB SF100 Data sets ,SF100 The data set size is 100G, share 282,386,021 A point and 1,775,513,185 side . The number of graph space partitions used for the test is 24, Replications for 3.
About LDBC-SNB
Associated data benchmarking Committee (LDBC,Linked Data Benchmark Council), The picture is (Graph) and RDF Benchmark guide setters for data management . Social networking benchmark (SNB,Social Network Benchmark) It's the association data benchmark Committee (LDBC) Developed software benchmark (Benchmark) One of . About LDBC-SNB Data sets , Please refer to the following documents for details :
- LDBC_SNB_SF100:https://ldbcouncil.org/ldbc_snb_docs/ldbc-snb-specification.pdf
- 24 Partitions:https://github.com/ldbc/ldbc_snb_docs
- 3 Replica Factors:https://github.com/ldbc/ldbc_snb_datagen_spark
Test instructions
- The use of pressure measuring tools is based on Go Linguistic k6, Please refer to k6 Official website ; The client uses nebula-go
- Of the abscissa axis in the chart “50_vu”、“100_vu” Isochronous “vu” It means k6 Concepts used “virtual user”, That is, the number of concurrency in the performance test ;50_vu Express 50 Concurrent users ,100_vu Express 100 Concurrent users , And so on …
- The performance baseline uses the officially released 3.0.0 edition
ResponseTime=Latency( The processing time of the server )+ The length of time for the network to return the result + The time taken for the client to deserialize the result- Parameter description
- QPS namely Throughput rate
- Latency namely The server takes time
- ResponseTime namely Client time consuming
Test cases and results
Only the newly added match The test case
- QPS namely Throughput rate
- Latency namely The server takes time
- ResponseTime namely Client time consuming
MatchTest1
match (v:Person) where id(v) == {} return count(v.Person.firstName)



MatchTest2
match (v:Person)-[e:KNOWS]-(v2) where id(v) == {} and v2.Person.locationIP != 'yyy' return length(v.Person.browserUsed) + length(v2.Person.gender)



MatchTest3
match (v:Person)-[e:KNOWS]-(v2) where id(v) == {} and v2.Person.locationIP != 'yyy' with v, v2 as v3 return length(v.Person.browserUsed) + (v3.Person.gender)



MatchTest4
MATCH (m)-[:KNOWS]-(n) WHERE id(m)=={} OPTIONAL MATCH (n)<-[:KNOWS]-(l) RETURN length(m.Person.lastName) AS n1, length(n.Person.lastName) AS n2, l.Person.creationDate AS n3 ORDER BY n1, n2, n3 LIMIT 10



MatchTest5
MATCH (m)-[:KNOWS]-(n) WHERE id(m)=={} MATCH (n)-[:KNOWS]-(l) WITH m AS x, n AS y, l RETURN x.Person.firstName AS n1, y.Person.firstName AS n2, CASE WHEN l.Person.firstName is not null THEN l.Person.firstName WHEN l.Person.gender is not null THEN l.Person.birthday ELSE 'null' END AS n3 ORDER BY n1, n2, n3 LIMIT 10



v3.1.0 vs v3.0.0(Baseline)
Select the following data P99 value .
MatchTest1
match (v:Person) where id(v) == {} return count(v.Person.firstName)



MatchTest2
match (v:Person)-[e:KNOWS]-(v2) where id(v) == {} and v2.Person.locationIP != 'yyy' return length(v.Person.browserUsed) + length(v2.Person.gender)



MatchTest3
match (v:Person)-[e:KNOWS]-(v2) where id(v) == {} and v2.Person.locationIP != 'yyy' with v, v2 as v3 return length(v.Person.browserUsed) + (v3.Person.gender)



MatchTest4
MATCH (m)-[:KNOWS]-(n) WHERE id(m)=={} OPTIONAL MATCH (n)<-[:KNOWS]-(l) RETURN length(m.Person.lastName) AS n1, length(n.Person.lastName) AS n2, l.Person.creationDate AS n3 ORDER BY n1, n2, n3 LIMIT 10



MatchTest5
MATCH (m)-[:KNOWS]-(n) WHERE id(m)=={} MATCH (n)-[:KNOWS]-(l) WITH m AS x, n AS y, l RETURN x.Person.firstName AS n1, y.Person.firstName AS n2, CASE WHEN l.Person.firstName is not null THEN l.Person.firstName WHEN l.Person.gender is not null THEN l.Person.birthday ELSE 'null' END AS n3 ORDER BY n1, n2, n3 LIMIT 10



above , Welcome to GitHub Experience v3.1.0 edition ,GitHub Address :https://github.com/vesoft-inc/nebula/releases/tag/v3.1.0
Communication graph database technology ? Join in Nebula Communication group please first Fill in your Nebula Business card ,Nebula The little assistant will pull you into the group ~~
边栏推荐
- 【idea】推荐一个idea翻译插件:Translation「建议收藏」
- [2. Basics of Delphi grammar] 3 Object Pascal constants and variables
- Flink real-time data warehouse (IX): incremental synchronization of data in MySQL
- Nebula Graph & 数仓血缘关系数据的存储与读写
- 数据库系统概论第一章简答题-期末考得怎么样?
- 隐藏在 Nebula Graph 背后的星辰大海
- Postgressql stream replication active / standby switchover primary database no read / write downtime scenario
- Bean configuration override in boot
- 《大学“电路分析基础”课程实验合集.实验四》丨线性电路特性的研究
- 2278. Percentage of letters in string
猜你喜欢

Experiment collection of University "Fundamentals of circuit analysis". Experiment 6 - observation and measurement of typical signals

Introduction to dynamic planning I, BFS of queue (70.121.279.200)

可视化技术在 Nebula Graph 中的应用

Another graduation season

蚂蚁集团大规模图计算系统TuGraph通过国家级评测

idea 公共方法抽取快捷键

Dimension table and fact table in data warehouse

动态规划入门一,队列的bfs(70.121.279.200)

GraphX 图计算实践之模式匹配抽取特定子图
![[experience cloud] how to get the metadata of experience cloud in vscode](/img/45/012c2265402ba1b44f4497f468bc61.png)
[experience cloud] how to get the metadata of experience cloud in vscode
随机推荐
爱可可AI前沿推介(7.2)
Comparison between rstan Bayesian regression model and standard linear regression model of R language MCMC
Multi data source configuration code
Locate: cannot execute stat() `/var/lib/mlocate/mlocate Db ': there is no such file or directory
HMS core machine learning service helps zaful users to shop conveniently
Song of cactus - throwing stones to ask the way (2)
Astra: could not open "2bc5/ [email protected] /6“: Failed to set USB interface
Idea jar package conflict troubleshooting
/Bin/ld: cannot find -lcrypto
树-二叉搜索树
SQL modification statement
What are the necessary functions of short video app development?
全是精华的模电专题复习资料:基本放大电路知识点
全方位解读服务网格(Service Mesh)的背景和概念
Another graduation season
6096. Success logarithm of spells and potions
Introduction to Dynamic Planning II (5.647.62)
【5G NR】RRC连接释放
Invalid bound statement (not found) solution summary
数字藏品系统开发(程序开发)丨数字藏品3D建模经济模式系统开发源码