Abstract

Previous works proposed building file systems and organizing the metadata with KV stores because KV stores handle entries of various sizes efficiently and have excellent scalability. The emergence of the byte-addressable persistent memory (PM) enables metadata service to be faster than before by tailoring the KV store for the PM. However, existing PM-based KV stores cannot handle the workloads of file systems’ metadata well because simply depending on hash tables or trees cannot simultaneously provide fast file accessing and efficient directory traversing. In this paper, we exploit the insight of the metadata operations and propose the PetaKV, a KV store tailored for the metadata management of file systems on PM. PetaKV leverages dual hash indexing to achieve fast file put and get operations. Moreover, it cooperates with PM-tailored peta logs to collocate KV entries for each directory, thus supporting efficient directory scans. Our evaluation indicates PetaKV outperforms state-of-art tree-based KV stores on put, get and scan <inline-formula><tex-math notation="LaTeX">$2.5\times$</tex-math></inline-formula> , <inline-formula><tex-math notation="LaTeX">$3.2\times$</tex-math></inline-formula> , and <inline-formula><tex-math notation="LaTeX">$2.8\times$</tex-math></inline-formula> on average, respectively. Moreover, the file system built with PetaKV achieves <inline-formula><tex-math notation="LaTeX">$1.2\times$</tex-math></inline-formula> to <inline-formula><tex-math notation="LaTeX">$6.4\times$</tex-math></inline-formula> speedup compared to those built with tree-based KV stores on the metadata operations.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call