自己用zfsonlinux已经一段时间了,其中有非常多的感受难以言表。
1.zfsonlinux加入了一个spl层。本身是借助spl 层,spl默默的为zfs提供了很多的函数调用支持,所以你只是了解zfs的源代码是不够的,还必须要对spl层有足够的了解才行。
2.内核模块的限制。运行在linux上的zfs是以内核模块的形式运行于linux上的。而作为一个庞大的复杂的文件系统内核模块需要依赖很多内核的函数,linux内核版本的一个不经意的更改,可能就会让zfsonlinux的社区对zfs代码进行更改。由于zfs的用户可能会用到各个内核版本,zfs是一个内核模块,那么他必须要支持从Ubuntu10.04~Ubuntu+ 所有的版本以及其他发行版。这个工作是非常难的,稍有差池,就会造成zfs没有实现正常的文件语义或块语义。
3.其次对zfs的优化很难普及。我发现我在Ubuntu2.6.35上做的一个优化能够在2.6.x系列内核很好的运行,但是在3.0系列内核就无法体现其优化效果了。然而我在3.0内核实现的优化,在2.6.35上无法体现出来,而且官方维护的zfs都是针对3.0内核而言的,这就让低版本内核的用户很无奈,甚至那些优化在低版本当中性能会变差。
4.测试不易,对zfs的测试工具除了简单的dd,还有fio,iometer,iozone等,但是iometer测试采用directIO方式,而zfs不支持directio。如果用fio,那么测试随机和顺序的时候只能分开来测,不能让测试数据50%随机,50%顺序。这个是没法做到的。
5.开源社区。虽然zfsonlinux有一定的用户群,但是开源社区还不是非常活跃,而且主要以修复移植的bug居多。从发展来看,更看好ext4。
阅读(6642) | 评论(2) | 转发(0) |