Shrinking Logs by Safely Discarding Commands

Luiz Gustavo C. Xavier, Fernando Luís Dotti, Cristina Meinhardt, Odorico Machado Mendizabal · 2021

Logs are crucial to the development of dependable distributed applications. By logging entries on a sequential global log, systems can synchronize updates over distributed replicas and provide a consistent state recovery in the presence of faults. However, logs account for a significant overhead on fault-tolerant applications' performance, and many studies present alternatives to alleviate servers from such costs. This paper proposes an approach to reduce log footprint by safely and efficiently discarding entries from logs. The expected benefits are twofold: minimize durability costs and speed up recovery. Besides shrinking logging information, the proposed technique splits the log into several files and incorporates strategies to reduce logging overhead, such as batching and parallel I/O. The proposed approach was compared to a standard logging scheme using realistic workloads. Results demonstrate that our logging approach is capable to generate compressed logs and reduce recovery time, imposing half the throughput overhead of a standard logging scheme.

Read the paper · More papers on PaperTik