Implementing a Custom Backend

omega|ml currently provides two types of extensible backends:

  1. CustomDataBackend - to store and retrieve data objects

  2. CustomModelBackend - to store, retrieve and execute model objects (execute = fit, predict, …)

To implement your own data backend, implement all methods in each backend. Once implemented, use OmegaStore.register_backend to have the omegaml’s storage layer work with your backend implementation. All storage methods are then supported out of the box, mainly put,get,list,drop.


Your backend’s respective put, put_model methods need to return a saved Metadata object. Create a metadata object using OmegaStore.make_metadata().