applying aspect oriented programming to distributed storage metadata management
High performance computing applications often must handle on the order of peta bytes of data during their operation. Such large data sets inherently require distributed storage. Emerging distributed storage solutions in this realm, such as our L-Store framework, virtualize the distributed nature of the storage by offering the notion of a single file system to applications. These virtualization schemes must manage substantial amount of metadata to handle the data sets across the distributed storage. Apart from the primary concern of virtualization, a number of secondary but crosscutting concerns related to transaction and persistence control, database connection pooling, authentication and authorization, and logging must be addressed in these metadata management schemes. This paper describes our investigations into discovering these secondary and crosscutting concerns in metadata management for large-scale distributed data storage. We describe how we have applied AspectJ to address these crosscutting concerns in metadata management for the L-store distributed storage framework.
aspects distributed storage metadata management virtualization extensibility software flexibility real-world applications tools maintainability