I have been a little concerned by the number of places that redis that is creeping into the python front end, and I think we should try to isolate the redis stuff. Since redis is basically just a dict, I think mutable mappings are the right abstraction for our data.
This PR uses some of the mutable mappings defined in matthew rocklins zict package. I have implemented a rudimentary mutable mapping front-end to redis, and used it to push/pull numpy arrays from redis in a more transparent way. It should be pretty easy to extend this interface to allow pulling xarray objects from redis (cf #6).
In the future, if we want to implement other key-value stores than redis in the future we can just implement a new mutable mapping class for the python front end.
I have been a little concerned by the number of places that
redis
that is creeping into the python front end, and I think we should try to isolate the redis stuff. Since redis is basically just a dict, I think mutable mappings are the right abstraction for our data.This PR uses some of the mutable mappings defined in matthew rocklins
zict
package. I have implemented a rudimentary mutable mapping front-end to redis, and used it to push/pull numpy arrays from redis in a more transparent way. It should be pretty easy to extend this interface to allow pullingxarray
objects from redis (cf #6).In the future, if we want to implement other key-value stores than redis in the future we can just implement a new mutable mapping class for the python front end.
cc @jhamman