Shrinking Logs by Safely Discarding Commands - Xavier, Luiz Gustavo C.; Dotti, Fernando Luís; Meinhardt, Cristina; Mendizabal, Odorico M. (Anais do Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC); 2021: Anais do XXXIX Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos, 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 signiﬁcant 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 efﬁciently discarding entries from logs. The expected beneﬁts are twofold: minimize durability costs and speed up recovery. Besides shrinking logging information, the proposed technique splits the log into several ﬁles 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.