4.1.4 ChunkServer设计
ChunkServer管理大小约为64MB的chunk,存储的时候需要保证chunk尽可能均匀地分布在不同的磁盘之中,需要考虑的可能因素包括磁盘空间、最近新建chunk数等。另外,Linux文件系统删除64MB大文件消耗的时间太长且没有必要,因此,删除chunk时可以只将对应的chunk文件移动到每个磁盘的回收站,以后新建chunk的时候可以重用。
ChunkServer是一个磁盘和网络IO密集型应用,为了最大限度地发挥机器性能,需要能够做到将磁盘和网络操作异步化,但这会增加代码实现的难度。