可能是为了高可用,storaged支持为data_path指定多个文件路径,但这么做不太清楚怎么保证高可用的
如果数据量大,我觉得还是一块几T的ssd方便,反正是老板出钱
1 个赞
没啥特别原因。一个两个N个硬盘都行。
这边可以说一下这个的来历, nebula graph的rocksdb实例划分最早是按照每个part一个来做的,实例多了以后会有资源和启动上的问题。
后面就把多个part放到一个实例了,但是这样单个实例内容纳的part比较多,可能会有io上的问题。
后面有了按data path把part分隔到不同rocksdb实例,可以利用到多块磁盘的io能力,也可以适当对part进行分割,当然也可以把多个data path配到一个硬盘上。
我不确定是这样演进的,至少是有这方面的功能的。
3 个赞
谢谢,大概明白了。
一个part一个rocksdb,占用的资源太多;
space在某台机器上的所有part放在同一个实例,io压力大,容易成为瓶颈;
折衷的就是将part进行划分,存放在不同的实例上,如果这些实例分布在不同的磁盘上,能提高读写能力。
最后这个实现了吗
这个就是现在的做法。
其实没那么复杂的故事。
当时我去找了一个EC2的主流机型配置,它是两个硬盘,我就照样写了。就那么简单。
至于怎么支持多个硬盘,这个能有很多办法。和几个rocksdb实例没太多关系。
嗯,这个配置我明白,我是在解释data path这个和高可用关系不大这个~
此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。