SST文件不停服加载数据方案

背景:我们现在业务有这样一个需求,线上sst文件数据通过不停服加载

方案:新的sst文件数据加载到新建图空间,图空间以时间作为后缀,通过ingest命令加载,新的图空间数据加载完毕之后删除老的图空间数据,并释放磁盘

问题:
(1)能否通过linux curl命令调用http接口创建或者删除图空间和执行ingest命令;
(2)如何知道ingest命令执行完毕,即新的图空间数据加载完毕
(3)删除了图空间,图空间下的数据能否立即删除,释放出磁盘空间

Ingest 不需要停服吧? 一次 Ingest 增量数据大概有多大?

这类问题 是不是已经好多人问了?

我见过的最近那几个帖子似乎都是 ByTracy 再问 虽然我不确定为什么需要停服加载SST ?

是因为 SST Ingest 耗时比较长么?

目前删除数据需要 compact 可以指定 Space compact一下

数据量有上百亿点边,我们是大搜领域,类似百度搜索这种,需要将相关联特征属性存储在nebula中,最新的数据是通过大数据框架离线生成sst文件,之前是通过dump离线拷贝的,然后现在想通过ingest不停服加载加载,由于数据量太大,怕执行ingest命令太久,影响正常业务,所以新建一个图空间,加载完成之后再进行切换

每次都是做一份全量数据吗? 如果每次是增量数据我感觉还可以 或者把数据变更时间窗口缩短 每四个小时做一次增量

(1)我们这边的数据无法做增量数据的,因为每次生成最新的数据之后,之前老的数据就没有价值了,因为算法的优化,每次结果都不太一样的,所以每次都做全量,并且每次的数据量会越变越大的。(2)还是之前那个删除图空间,释放出磁盘的问题,您叫我compact对应的space,但是我们图空间都不存在了,怎么compact?我看删除图空间日志给的提示是重启之后才能把删除的图空间数据清除掉吧,我们想做的是不停服切换

不行,目前dropped space是要重启才干掉硬盘上的无用数据的。一直都说要加个flag来控制,我不知道这个flag加了没

不删space 但是把space 中的 tag edge 都删掉 然后 compact

我们存储的是KV的数据,没有建tag和edge,KV数据是直接生成sst文件构建的,我想请问下直接删除这个目录下/nebula/data/storage/nebula对应spaceId的目录有啥影响么?

就是这个space 的数据丢失了吧 如果以后不打算再用 应该没别的问题了

好的,谢谢您了

略微测试一下吧。特别是restart之后。

请问 你们SST 文件生成程序 里面的编码是自己做的吗?

编码用的nebula-utils里面的

你们现在还是nebula 1.0 版本吧