IJournaling: Fine-grained journaling for improving the latency of Fsync system call

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

49 Scopus citations

Abstract

For data durability, many applications rely on synchronous operations such as an fsync() system call. However, latency-sensitive synchronous operations can be delayed under the compound transaction scheme of the current journaling technique. Because a compound transaction includes irrelevant data and metadata, as well as the data and metadata of fsynced file, the latency of an fsync call can be unexpectedly long. In this paper, we first analyze various factors that may delay an fsync operation, and propose a novel hybrid journaling technique, called ijournaling, which journals only the corresponding file-level transaction for an fsync call, while recording a normal journal transaction during periodic journaling. The file-level transaction journal has only the related metadata updates of the fsynced file. By removing several factors detrimental to fsync latency, the proposed technique can reduce the fsync latency, mitigate the interference between fsync-intensive threads, and provide high manycore scalability. Experiments using a smartphone and a desktop computer showed significant improvements in fsync latency through the use of ijournaling.

Original languageEnglish
Title of host publicationProceedings of the 2017 USENIX Annual Technical Conference, USENIX ATC 2017
PublisherUSENIX Association
Pages787-798
Number of pages12
ISBN (Electronic)9781931971386
StatePublished - 2019
Event2017 USENIX Annual Technical Conference, USENIX ATC 2017 - Santa Clara, United States
Duration: 12 Jul 201714 Jul 2017

Publication series

NameProceedings of the 2017 USENIX Annual Technical Conference, USENIX ATC 2017

Conference

Conference2017 USENIX Annual Technical Conference, USENIX ATC 2017
Country/TerritoryUnited States
CitySanta Clara
Period12/07/1714/07/17

Fingerprint

Dive into the research topics of 'IJournaling: Fine-grained journaling for improving the latency of Fsync system call'. Together they form a unique fingerprint.

Cite this