Hadoop Perfect File:一种支持磁盘内直接元数据访问的小文件快速存取容器
分布式、并行与集群计算
2021-06-15 v2
摘要
存储与处理海量小文件是 Hadoop 分布式文件系统(HDFS)的主要挑战之一。为提供快速数据访问,HDFS 中的 NameNode(NN)在其主存中维护所有文件的元数据。Hadoop 在少量大文件场景下表现良好,因 NN 内存所需元数据相对较少。但对于大量小文件,Hadoop 存在诸如由这些小文件的巨大元数据规模引起的 NN 内存过载等问题。我们提出一种新型归档文件 Hadoop Perfect File(HPF),通过将小文件合并为 HDFS 上的大文件来解决 HDFS 的小文件问题。现有归档文件功能有限,且在访问合并文件中某一文件时性能较差,原因在于元数据查找时必须读取并处理整个索引文件。相反,HPF 文件可直接从其索引文件访问特定文件的元数据而无需整体处理。HPF 索引系统使用两个哈希函数:文件的元数据通过动态哈希函数分布于各索引文件,且对每个索引文件我们构建保序完美哈希函数以保留各文件元数据在索引文件中的位置。HPF 设计在访问时仅读取包含被查文件元数据的那部分索引文件。HPF 文件还支持创建后的文件追加功能。我们的实验表明,HPF 相较原始 HDFS 的文件访问可快逾 40%。若不考虑缓存效应,HPF 的文件访问比 MapFile 快约 179%,比 HAR 文件快 11294%。若考虑缓存效应,HPF 比 MapFile 快约 35%,比 HAR 文件快 105%。
引用
@article{arxiv.1903.05838,
title = {Hadoop Perfect File: A fast access container for small files with direct in disc metadata access},
author = {Jude Tchaye-Kondi and Yanlong Zhai and Kwei-Jay Lin and Wenjun Tao and Kai Yang},
journal= {arXiv preprint arXiv:1903.05838},
year = {2021}
}