问题:在CreateBackupProcessor里面通过backup操作得到metad的一系列元数据sst文件,如__spaces__.sst、indexes.sst等等后,怎么利用这些文件恢复metad数据。
// step 4 created backup for meta(export sst).
auto backupFiles = MetaServiceUtils::backup(kvstore_, spaces, backupName, backupSpaces);
起因:想给create snapshots语句增加指定spaces的功能,在metad这里卡住了 ,看3.0 nebula-br工具没太看懂是怎么处理这一块的。假如直接将__spaces__.sst等文件复制到metaDataPata/nebula/0/data/文件夹重启metad不起作用…
需要ingest br应该有个接口是restore,那个接口应该会搞定这些事情的
1 个赞
spw
3
br 可以处理这些事情,不过恢复的时候可能会将原来数据清空。另外,关于 br 是哪一块没有看懂?
func (m *NebulaMeta) RestoreMeta(metaAddr *nebula.HostAddr, hostMap []*meta.HostPair, files []string) error
这里调用服务端接口,然后恢复。
目前是不太好只针对某个 space 的,因为所有 space 的 tag schema 都在一起。
然后就像上面说的,如果用 br 恢复的话,所有新增的数据都会还原。
1 个赞
谢谢大佬,我看了看代码,应该就是这个接口,我研究一下怎么不用http来调用这个方法
谢谢大佬,刚才对一些接口不熟悉,不知道恢复部分space的逻辑,现在大概懂了
谢谢大佬,大概知道了,之前没有看到这个接口,不过我们现在想的是2.x版本实现这个功能,用不了3.0的br工具,我想想怎么改这个东西
1 个赞