Developing a Data Storage Back-End Module
Last updated
Last updated
The current CDMI server implementation allows you to write different storage back-end modules. These modules can be injected at any deployed CDMI server and connects a specific storage back-end to the CDMI server.
This guide describes the basic steps to develop your own storage back-end module, that is used for the data path of a CDMI server.
To get started please follow the steps described in the Developing the CDMI Server section to set-up your development environment.
The data path module still has to be developed within the CDMI server project at this moment, but you might be able to use a similar procedure as described in the Developing a QoS Storage Back-End Module section in the future.
At the moment, the data path modules are configured via .
To activate different profiles you have to configure the CDMI service accordingly, see the Configuration section.
The default file-system data path configuration can be found at edu.kit.scc.filesystem.FilesystemConfiguration
and edu.kit.scc.filesystem.FilesystemBeanConfiguration
.
edu.kit.scc.filesystem.FilesystemConfiguration
: this configuration is used to set-up directories and meta-data files at the server start-up phase
edu.kit.scc.filesystem.FilesystemBeanConfiguration
: this configuration is used to wire the data path implementations with the CDMI data access objects (Java Beans)
Your own module would have to provide a new Spring profile and according configuration.
Moreover, you need to implement the CDMI data access objects (DAOs). Current minimum recommended DAOs are:
org.snia.cdmiserver.daoCapabilityDao
org.snia.cdmiserver.CdmiObjectDao
org.snia.cdmiserver.ContainerDao
org.snia.cdmiserver.DataObjectDao
For further help you can look at the concrete DAO implementations for the example file-system data path.