What is SMASH
SMASH is a research project that is investigating the benefits of a common storage engine that manages a heterogeneous storage landscape, including traditional storage devices and non-volatile memory technologies. The core of this storage engine will be Bϵ-trees, which can be used to efficiently exploit these different devices. Furthermore, data placement and migration strategies will be investigated to minimize the overhead caused by transferring data between different devices. Eliminating the need for volatile caches will allow data consistency guarantees to be improved. From the application side, the storage engine will offer key-value and object interfaces that can be used for a wide range of use cases, such as high-performance computing and database management systems. Moreover, due to the widening gap between the performance of computing and storage devices as well as their stagnating access performance, data reduction techniques are in high demand. SMASH is working on providing a prototypical standalone software library that will be used by third-party projects.