Buckets:
| class Storage(object): | |
| """ | |
| Store large data structures (e.g. numpy arrays) efficiently | |
| using joblib. | |
| Use: | |
| >>> from Storage import Storage | |
| >>> storage = Storage(cachedir='tmp_u01', verbose=1) | |
| >>> import numpy as np | |
| >>> a = np.linspace(0, 1, 100000) # large array | |
| >>> b = np.linspace(0, 1, 100000) # large array | |
| >>> storage.save('a', a) | |
| >>> storage.save('b', b) | |
| >>> # later | |
| >>> a = storage.retrieve('a') | |
| >>> b = storage.retrieve('b') | |
| """ | |
| def __init__(self, cachedir='tmp', verbose=1): | |
| """ | |
| Parameters | |
| ---------- | |
| cachedir: str | |
| Name of directory where objects are stored in files. | |
| verbose: bool, int | |
| Let joblib and this class speak when storing files | |
| to disk. | |
| """ | |
| import joblib | |
| self.memory = joblib.Memory(cachedir=cachedir, | |
| verbose=verbose) | |
| self.verbose = verbose | |
| self.retrieve = self.memory.cache( | |
| self.retrieve, ignore=['data']) | |
| self.save = self.retrieve | |
| def retrieve(self, name, data=None): | |
| if self.verbose > 0: | |
| print 'joblib save of', name | |
| return data | |
Xet Storage Details
- Size:
- 1.23 kB
- Xet hash:
- 9dedf6f5cd1f8b62f87ab45aa130f1df0915c4032f06502ebef52943bbc90d76
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.