- nebula 版本:3.8
- 部署方式:分布式
- 安装方式:RPM
- 是否上生产环境:Y
- 硬件信息
- 磁盘( 推荐使用 SSD)
- CPU、内存信息
- 问题的具体描述
- 相关的 meta / storage / graph info 日志信息(尽量使用文本形式方便检索)
nebula如何进行并发查询,业务场景是从数据库获取一组id进行match查询,在console里单条查询只要10ms,但使用python对某组uid查询普遍需要100ms。调整pool_size大小也没啥用
使用python对某组uid查询普遍需要100ms
是怎么写的
老师 大概是这样的 match p=(v:company{uid:xx}-(e:e1:|e2:|e3)*1…10)->(n) where all(e_ in e where (e_=‘e1’ and ratio>5 ) or (e_=e2) return p
是获取一组 对单个uid进行查询 目前一个uid查询的结果可能会有超大集,所以也没法批量查
你这个查询 10 跳了,估计有的遇到出入度比较大的节点的话是会比较慢的
对于同一个uid 当在console窗口查是10ms 以下 但是并发情况下要100多ms 这个算正常现象吗
提供几个思路:
- 100 多 ms 是服务端的响应时间还是包括客户端的处理。如果数据量比较大,客户端并发处理可能客户端会有瓶颈,具体要看你客户端的配置/压力情况
- 如果 100 多 ms 是服务端的响应时间,看下是多少并发,建议 看下监控。看瓶颈是在网络上/磁盘上还是在哪里