PuntTable: A Flexible Repository System for Digital Library
Digital libraries (DLs) provide various contents and services which become increasingly comprehensive and customizable. This has placed growing pressure on the repository systems of DLs. Common repository tools, such as Fedora and DSpace, have been widely deployed in DL systems. However, those repository tools often use traditional relational database management systems plus file systems as the storage layer, which cannot provide additional functionality. Complex services, such as user-generated content, recommendations, social networks services, etc. generate complex and heavy workloads on structured, semi-structured, and unstructured data. Those common repositories are not designed to handle such workloads, so the pressures are transferred to upper application layers. In this paper, we analyze the data structures and workloads of services provided by modern DLs and propose a data-storage strategy model. Based on this model, we describe the development of PuntTable, a flexible repository system for DLs. By integrating various data stores and making it extensible and flexible, PuntTable can easily support complex content and services. We deploy PuntTable to the Digital Library on History of Science & Technology in China, and evaluate the data-storage strategy and PuntTable.