The first file system I worked on that separated metadata and data was back in 1989. Since then, there has been a "holy war" in the file system community about this topic.
On one side the debate are those who said separation is not needed and that by having more RAID controllers and disk arms by spreading data over all of the RAID-0/3/5/6 LUN provided better performance as you have more I/O bandwidth.(As you can see I am dating myself, as this war has been going on for 20+ years.)
Those on the other side (me included), believe that data and metadata should be separate, given the completely different data access patterns. They believe data should be on RAID-0/3/5/6 and metadata on RAID-1.
Metadata usually is small block random access, while data is more often larger block sequential access. Given the need for larger and larger file systems and more and more metadata as well as the availability of low-cost flash, it is time to end the debate and allow data, log and metadata separation.
Also, while I'm on this rant, if you have flash for metadata, do you really need logs for metadata? Sector sizes are finally moving to 4096 bytes. Maybe it is time to start thinking about bigger inodes or bigger inode blocks and allow the sector size and the flash page size and the inode block size to the same. It is time for data metadata separation to become an option in all file systems. The holy war over file system should be over, as technology has changed.
If only solving the Middle East peace crisis was this easy.
Labels: metadata,Storage,file systems
posted by: Henry Newman