I would like to reformat a local drive partition and turn it into a partition for HDFS. Which file system would be most performant for running HDFS on top of it? Any optimizations I should take care of for this file system?
This is an Ubuntu 14.04
I would like to reformat a local drive partition and turn it into a partition for HDFS. Which file system would be most performant for running HDFS on top of it? Any optimizations I should take care of for this file system?
This is an Ubuntu 14.04
Here are the best practices:
Best Practices
Executive summary:
I would not recommend ext3. It has framentation issues.
Given HDFS normally operates with huge files on top of an OS filesystem, ext4 will be a much better option. ext4 organizes space into contiguous extents (chunks of adjacent blocks). So there is much less overhead of mapping tiny blocks into huge blocks. ext4 is also less suspecious for fragmentation.
While XFS seems have similar features as ext4, my tests (although not for hdfs workloads) show it is infrerior to ext4 in some scenarios (like deleting a lot of files etc).
While it is recommended to have a reserved space for ext3 to have less framentation. By default it is 5%, see
So you lose 5% of HDFS space right there. For ext4 you can put reserved space to 1% or even 0% (switch if off).
You can not be wrong with ext4 for HDFS.
Some other recommended options for ext4:
Somebody also recommends to turn off delayed allocation in ext4, but I would not do that without some testing.