-
nebula 版本:2.5.1
-
部署方式(分布式 / 单机 / Docker / DBaaS):单机
-
是否为线上版本:Y
-
问题的具体描述
2.5.1版本Exchange导入SST,需要将SST放到哪个目录呢?基于以前版本经验放在
$NEBULA_HOME/data/storage/nebula/1/download/general ,执行INGEST并没有生效,请问新版本这里有什么变动吗?
建议先看看技术手册。
https://docs.nebula-graph.com.cn/2.5.1/nebula-exchange/use-exchange/ex-ug-import-from-sst/
Nebula 的sst导入提供了DOWNLOAD 命令自动下载HDFS上的sst文件到nebula data目录下,但需要每台storage实例都安装HADOOP。
如果你要手动放置sst文件的话,放在 $NEBULA_HOME/data/storage/nebula/{space_id} /download
目录下,每台storage实例都要放。
也可以参考 无依赖单机尝鲜 Nebula Exchange 的 SST 导入 快速试一下,这个文章里所有的环境都在容器里,很快就能验证,路径就是 exchange 作者 nicole 告诉我的(楼上、文章里都有)
您好,已经通过下载到本地 $NEBULA_HOME/data/storage/nebula/{space_id} /download 目录下INGEST成功,同时data和wal都已经更新,但是查询不到数据,–enable_vertex_cache=false已设置,还需要什么配置呢?
请问您只插入了 edge了么?还是也有vertex 数据哈?
tag和edge都有
查不到数据具体指的是无法 go/fetch/lookup ?还是
都没有
用stats看下 数据是否成功导入, 在show stats之前先submit job stats。
- 若数据没有进去,确认下你要导入的space name、space id、tag name,保持配置文件中配置是对的
2.5 echange 生成出来的sst ,是可以给 2.0版本 ingest的吧?
不可以,只能给 生成sst时指定的space下的tag和edge使用。
底层数据结构是一样的吧?要是我自己写spark程序控制里面的所有schema代号id,正确对应就能用吧。
手动download是什么意思? 一个storaged对应多个partition,也就是多个rocksdb实例。生成的sst应该也有多个文件吧,是把所有sst放到每个storaged下,还是每个storaged只需要放自己那些partition对应的sst就行了?
目前有一个点数据INGEST失败;发现spark生成sst的时候有INFO Exchange$: SST-Import: failure.k_info: 4,这个一般是什么导致的呢?
你如果想在2.0.0版本的Nebula上使用sst功能,可以这样做:
- 用Nebula 2.1.0版本 根据 2.0.0nebula上的space、tag、edge正常生成sst文件
- 在nebula 2.0.0 服务上只保留一个meta服务,停掉其他服务
- download & ingest
有日志,你把日志都贴出来
就是手动做本来有了Hadoop client时候 download 的放文件的等价的事情,测试或者像是lz这样不方便装Hadoop client 的情况。把sst 文件夹/文件 手动放到所有有这个 space 的 storaged下