1
virushuo 2014-05-31 12:28:54 +08:00
你要处理的不是怎么分目录的问题,是你存进去之后能不能读出来的问题。之前有过讨论,你需要先选个合适的fs。 看这里 http://www.v2ex.com/t/35253
|
2
kslr 2014-05-31 12:30:26 +08:00 1
目录数量也受限制,上亿同时考虑增长我觉得可以用文件系统解决了
|
3
andybest OP @virushuo 我是想知道例如 GIT 设计,每次Commit(用SHA1做的Hash)他是以什么目录形式储存的该 Commit 信息?
|
5
zungmou 2014-05-31 12:39:54 +08:00
500万个文件... 文件名直接 hash 字符串不行吗?文件系统选择一个支持大量文件快速随机访问的就好了么。
|
6
andybest OP |
7
virushuo 2014-05-31 14:24:14 +08:00
@andybest 哦。你去看.git/objects 这个和你提的问题有一点区别,还是我说的读的问题,git不会批量/随机读取大量hash,每次读只有少量文件,所以压力不大。
|
8
9hills 2014-05-31 15:52:16 +08:00 via iPhone
搜 ext4 small files ,前几个结果看下。否则支持不了上亿的inode
另外目录不要太多层。按照fibnacii数列切割112358...就可以 ext4单目录文件数还是很大的。 |
9
lovesky 2014-05-31 16:26:06 +08:00
|