【发布时间】:2022-12-06 17:34:13
【问题描述】:
我在 NebulaGraph 中尝试一个简单的查询
GO FROM 123 OVER Invest | yield count(*)
我认为结果将是数千万。但是出现错误。
是我内存不够?
【问题讨论】:
标签: nebula-graph
我在 NebulaGraph 中尝试一个简单的查询
GO FROM 123 OVER Invest | yield count(*)
我认为结果将是数千万。但是出现错误。
是我内存不够?
【问题讨论】:
标签: nebula-graph
出现此错误的原因通常是 storaged 进程向 graphd 进程返回了太多数据。可能的解决方案如下:
修改配置文件:修改nebula-graphd.conf文件中--storage_client_timeout_ms的值,延长Storage client的连接超时时间。此配置以毫秒 (ms) 为单位进行测量。例如,设置--storage_client_timeout_ms=60000。如果nebula-graphd.conf文件中没有指定该参数,则手动指定。提示:在配置文件开头添加--local_config=true,重启服务即可。
优化查询语句:减少扫描整个数据库的查询。不管是否使用LIMIT限制返回结果个数,使用GO语句重写MATCH语句(前者优化,后者未优化)。
检查Storaged进程是否OOM。 (dmesg |grep 星云)。 为存储服务器使用更好的 SSD 或内存。
重试。
【讨论】: