Abstract
Modern applications use storage systems in complex and often surprising ways. Tracing system calls is a common approach to understanding applications' behavior, allowing offline analysis and enabling replay in other environments. But current system-call tracing tools have drawbacks: (1) they often omit some information - -such as raw data buffers - -needed for full analysis; (2) they have high overheads; (3) they often use non-portable trace formats; and (4) they may not offer useful and scalable analysis and replay tools. We have developed Re-Animator, a powerful system-call tracing tool that focuses on storage-related calls and collects maximal information, capturing complete data buffers and writing all traces in the standard DataSeries format. We also created a prototype replayer that focuses on calls related to file-system state. We evaluated our system on long-running server applications such as key-value stores and databases. Our tracer has an average overhead of only 1.8-2.3×, but the overhead can be as low as 5% for I/O-bound applications. Our replayer verifies that its actions are correct, and faithfully reproduces the logical file system state generated by the original application.
Author supplied keywords
Cite
CITATION STYLE
Akgun, I. U., Kuenning, G., & Zadok, E. (2020). Re-Animator: Versatile High-Fidelity Storage-System Tracing and Replaying. In SYSTOR 2020 - Proceedings of the 13th ACM International Systems and Storage Conference (pp. 61–74). Association for Computing Machinery. https://doi.org/10.1145/3383669.3398276
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.