On the Log-Structured Transactional Cache

Feng Zhou

This paper proposed a new approach called LSTC, Log-Structured Transaction Cache, for the purpose of improving I/O performance. Mostly for the “Database / Transaction” and “Office / Engineering” environment, LSTC provides better performance as well as better reliability than traditional file system buffer cache at very low extra costs. It also adds to system availability and reduces maintaining time.

Based on the physical characteristics of hard disks, we proposed LSTC. We point out that using on-disk log as the cache for write operations, the system can exploit the high continual transfer rate of modern disks and boosts writing performance of file system by magnitudes. We also introduce the concept of IO transaction into LSTC, and explain that using a log-structure transaction cache; we can solve the problem of maintaining meta-data integrity, which has existed in Unix-like systems for a long time.  After summarizing the recent development of hard disk, processor and DRAM, we conclude that most computers today have the configuration for running LSTC to achieve better performance and reliability.  Simple trace-driven simulations are carried out to evaluate the new architecture. Results show that it improves performance considerably.  An implementation design under the Linux operating system is presented in the form of architecture, algorithms, data structures and scenarios.  Hierarchy, modularity and portability are kept in mind when carrying out the design.  Several problems, which we may encounter in actual implementation, are also discussed.