performance - 优化 Redis-Graph 查询性能(匹配)

标签 performance graph redis redisgraph

我想在 Redis 中保存一个大图,并尝试使用 RedisGraph 来完成此操作。为了对此进行测试,我首先创建了一个测试图来检查性能特征。 就我们需要的目的而言,该图相当小。

  • 顶点:约 350 万
  • 边:约 1800 万

这对于我们的目的来说非常有限,我们需要能够将其增加到单个数据库中的数百或数百万条边。 在任何情况下,我都在检查空间和性能要求,但在仅加载顶点并看到以下性能后就停止了:

GRAPH.QUERY gid 'MATCH (t:token {token: "some-string"}) RETURN t' 

仅此检索就超过 300 毫秒,这是绝对不能接受的。

我是否错过了提高检索性能的明显方法,或者这是目前 RedisGraph 的限制?

谢谢

最佳答案

添加索引会在匹配时加快很多速度。

CREATE INDEX ON :token(token)

根据我的调查,我认为必须至少存在一个项目实例才能创建索引,但我没有对提前创建索引然后添加大部分新节点的额外开销进行任何计算,而不是在所有项目都在树中并且可以对它们进行整体索引之后。

关于performance - 优化 Redis-Graph 查询性能(匹配),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53791419/

相关文章:

ios - 如何使用 CorrPlot 创建看起来像饼图的饼图?

java - 迭代减少到空矩阵

mongodb - 您将如何使用文档存储(例如 CouchDB、Redis、MongoDB、Riak 等)构建博客

php - 如何在PHP中使用Redis?

linux - 什么时候关闭 atime 和 diratime 是个好主意?

sql - 内连接与何处连接

java - 最快的 Java HashSet<Integer> 库

html - CSS 表格(非固定)是否会遇到与 HTML 表格(非固定)相同的性能问题?

c++ - 是否有可用于基准测试的标准图形数据结构?

laravel - 如何在 Laravel 的 PHPUnit 中启用 Redis 连接