Skip to Main content Skip to Navigation
Theses

Tromos : a software development kit for virtual storage systems

Abstract : Modern applications tend to diverge both in the I/O profile and storage requirements. Matching a scientific or commercial application with a general-purpose system will most likely yield suboptimal performance. Even in the presence of purpose-specific' systems, applications with multiple classes of workloads are still in need to disseminate the workload to the right system. This strategy, however, is not trivial as different platforms aim at diversified goals and therefore require the application to incorporate multiple codepaths. Implementing such codepaths is non-trivial, requires a lot of effort and programming skills, and is error-prone. The hurdles are getting worse when applications need to leverage multiple data-stores in parallel. In this dissertation, we introduce "storage containers" as the next logical in the storage evolution. A "storage container" is virtual infrastructure that decouples the application from the underlying data-stores in the same way Docker decouples the application runtime from the physical servers. In other words, it is middleware that separate changes made to application codes by science users from changes made to I/O actions by developers or administrators.To facilitate the development and deployment of a "storage container" we introduce a framework called Tromos. Through its lens, all that it takes for an application architect to spin-up a custom storage solution is to model the target environment into a definition file and let the framework handles the rest. Tromos comes with a repository of plugins which the architect can choose as to optimize the container for the application at hand. Available options include data transformations, data placement policies, data reconstruction methods, namespace management, and on-demand consistency handling.As a proof-of-concept we use Tromos to prototype customized storage environments which we compare against Gluster; a well-estalished and versatile storage system. The results have shown that application-tailored "storage containers", even if they are auto-produced, can outperform more mature "general-purpose" systems by merely removing the unnecessary overhead of unused features.
Document type :
Theses
Complete list of metadatas

Cited literature [160 references]  Display  Hide  Download

https://tel.archives-ouvertes.fr/tel-02443225
Contributor : Abes Star :  Contact
Submitted on : Friday, January 17, 2020 - 8:31:12 AM
Last modification on : Wednesday, October 14, 2020 - 4:20:34 AM

File

78499_NIKOLAIDIS_2019_archivag...
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-02443225, version 1

Collections

Citation

Fotios Nikolaidis. Tromos : a software development kit for virtual storage systems. Other [cs.OH]. Université Paris-Saclay, 2019. English. ⟨NNT : 2019SACLV033⟩. ⟨tel-02443225⟩

Share

Metrics

Record views

83

Files downloads

148