公司想把文件内容按目录结构存在 etcd 里
例如:
文件目录是
/root
--/linux
----/a
----/b
--/windows
----/c
----/d
那么存的键就是:
/root/linux/a
/root/linux/b
/root/windows/c
/root/windows/d
想要查看 a 的文件内容,就取"/root/linux/a"这个键对应的值
还有个需求就是获取文件与文件夹列表的功能
即:输入 /root,获得[]string{"linux","windows"}
输入 /root/linux,获得[]string{"a","b"}
但是我发现,etcd 的键就是单纯的字符串,并不是树状结果
上述需求可以通过加参数 --prefix
来获得前缀为 /root 的键值对列表,并对列表中的键做字符串处理,来完成
但是这简直太 lowB 了
我看了 github.com/coreos/etcd 包的源码,的确是单纯的字符串,但是 etcd 这么牛逼的东西,居然是这样的,不由得开始怀疑自己,特此发帖求助
1
reus 2019-03-11 00:00:31 +08:00
你 high 逼你自己写一个啊
|
2
mason961125 2019-03-11 00:55:05 +08:00 via iPhone
不都给你用 prefix 解决了嘛,还要什么自行车。
|
3
catror 2019-03-11 01:46:05 +08:00 via Android
树状结构的键是个啥?描述一下?我想你可能没太理解你键值对存储
|
4
hopingtop 2019-03-11 09:26:17 +08:00
一上来就 pen lowB 不是不符合你意就是 lowB!
多了解后再来 pen etcd 底层存储采用 bblot db ( blot fork )存储采用 B+ tree |
5
aschoolboy OP |