Java client怎么样实时导入数据是最快的?

在实时生成大量数据的时候,实时导入,用什么样的方式(或者是什么样的架构设计)导入数据是最快的。

您指的快是单个请求的延时低还是整体的吞吐大?
另外最好您能更详细描述场景,我们可以给出一些建议。

就是我线上实时的生成大量的数据,怎么以最大的吞吐量插入进图数据里面

实时客户端方面

  • 适量的 batch(包涵把多行合并在一个请求里,还有多个同类插入合并在一行里),也许会有助于提高写入性能的
  • 如果超过了一个 GraphD (瓶颈、压力如果在GraphD这边的话),客户端对 GraphD 的轮询机制选择也可能有帮助
    建议在测试环境里做实验去探索一下

服务端方面,建议搭建环境,按需扩缩 graphD和 storageD的数量和配置,并且调优参数,包括 rocksdb 的参数、还有图控件的 partition 数不要太少,文档里有建议。

rocksDB 如果是批量导入,导入期间关 auto compaction,完成后手动做compaction会有提升,但是实时线上的话应该不能关的。另外,实时的情况,如果存在闲时,建议定期(每天或者几天)做手动 compaction。

具体的方案都不一定,要看环境的读请求的量等等因素,您可以探索看看,再回来论坛分享,讨论哈。

那我就只有一个单机(虚拟机上)那吞吐量在那多少范围呀,因为现在在测试性能

您可以参考我们的一个benchmark 性能测试对比:Nebula 2.0.1 vs Nebula 1.2.0 , 搜一搜的话,也能看到国内一些团队做的性能结果哈 :slight_smile:

该话题在最后一个回复创建后30天后自动关闭。不再允许新的回复。