可以从底层原理解释一下为什么使用client导入方式速度会越来越慢吗?
瓶颈在哪里?
有什么办法或者思路可以在只能使用client导入方式的情况下尽可能保持高入库速度?
你的 client 指的是 Exchange 吗?
是的,使用exchange中的client导入方式,但是具体实践中,我包装了一下exchange,不影响核心功能,主要想了解基于nebula-client做数据导入性能瓶颈集中在哪里。
那我让 Exchange 的同学回复你下。
是会越来越慢的,因为有compact会占用一部分资源
上周刚有一篇exchange导入的最佳实践,经过测试发现调整storaged服务的 max_subcompactions 配置对导入性能有明显的帮助。 该配置默认值是4,我们测试中调成了64.
2 个赞
lsm的基本原理可以百度,或者论坛上相关贴子至少几十个。
简单说,就是write - dump - merge 这个长过程为了保证能读,必须周期性的merge组织一下新的硬盘结构,这带来了硬盘争抢。这种周期性的小保健慢慢降低了写速度。
可以把auto_compaction关了,最后再一把大保健。
2 个赞
为啥不考虑离线导入?
本质上底层用的是一个KV引擎,数据可以在外部生成好文件ingest进去,不论是HBSE还是Rocksdb, 都是OK的
2 个赞
此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。