nebula并发查询

  • 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 这个算正常现象吗

提供几个思路:

  1. 100 多 ms 是服务端的响应时间还是包括客户端的处理。如果数据量比较大,客户端并发处理可能客户端会有瓶颈,具体要看你客户端的配置/压力情况
  2. 如果 100 多 ms 是服务端的响应时间,看下是多少并发,建议 看下监控。看瓶颈是在网络上/磁盘上还是在哪里