[Openstack] suggestion for data backup/recovery in swift

Greg Holt gholt at rackspace.com
Tue May 31 22:57:33 UTC 2011


On May 31, 2011, at 4:49 PM, Rostyslav Slipetskyy wrote:

> I assume that in this scenario there is only one user/file of huge size and all 
> the other users/files are much smaller (in other case, there will be not much 
> difference in distribution among drives). But the suggested backup/recovery 
> approach can work even in this scenario. If we have a configurable value that 
> specifies maximum number of backups/versions, then in a setup where such a use 
> case is possible, the max_file_backups value may be set to disallow backups at 
> all (by default backups can be disabled). In other case, when OpenStack is used 
> as a backend for let's say text documents, backups can be enabled and another 
> cloud provider might benefit from this feature.

What if a container could be marked as "versioning enabled" and therefore the proxy server would rewrite uploads to distinct versioned objects and translate plain gets to the latest version?

Example:

Upload sample.txt, becomes sample.txt-1306882418.68949
Upload sample.txt again, becomes sample.txt-1306882422.82929

Ask for sample.txt, get latest sample.txt-1306882422.82929
Ask for specific sample.txt-1306882418.68949 for older version.

etc.

There are some annoyances such as only retaining x old copies, etc. but those could be handled by a smarter proxy, as long as it's okay if they're not /guaranteed/ to be perfect.

Benefits of this is that everything is normal on the backend, posts are okay, metadata is versioned, load is distributed, etc. You could even disable the versioning on the container with no horrible effects.



More information about the Openstack mailing list