2.0 java客户端 数据插入缓慢

提问之前,记得在【本论坛】和【文档】下搜索是否已有解决方案存在哟 ^^

为了更快地定位、解决问题,麻烦参考下面模版提问(不符合提问规范的问题,会被隐藏待补充相关信息之后再发布

提问参考模版:

  • nebula 版本:(为节省回复者核对版本信息的时间,首次发帖的版本信息记得以截图形式展示)
  • 部署方式(分布式 / 单机 / Docker / DBaaS): 分布式
  • 是否为线上版本:Y
  • 硬件信息
    • 磁盘( 推荐使用 SSD) 普通云盘,数据日志隔离
    • CPU、内存信息 8C16GB
  • 问题的具体描述
  • 相关的 meta / storage / graph info 日志信息

集群临时关闭了compaction

采用2.0.0 java client, 开启NebulaPool之后,开了30个线程,每个线程开启一个session来写数据(基于alibaba 开源的datax框架),数据在写入后,会缓慢降速,并稳定在3000-4000r/sec
所写的点有索引,并生效;

看下系统资源,比较大可能是磁盘的瓶颈。

157 服务器
负载
image
磁盘
image

158服务器
负载
image
磁盘
image

159服务器
负载
image
磁盘
image

大佬看看~有么有啥好方法优化一下~
明天我们打算升级一下生产的服务器(ssd),看看效果~~~

1 个赞

好的,在升级SSD后,观测一下CPU是否能打满。

测试环境上,又试了没有索引的边,写入速度很快1kw 3min写完了,但是没有索引的点,还是很慢!

速度只有2000r/s

因为索引要随机读啊

有索引比没索引慢是预期的,主要是两点,1,需要随机读历史索引;2,需要多写一份索引的数据。
另外,有索引的话,导入性能会有衰减,这个衰减的过程主要发生在随机读上。
但是2000r/s这个性能确实有些慢了,有几个part?导入并发是多少?auto compact打开的还是关闭的?

临时update config 关闭了, 30个part。