← Back to team overview

openstack team mailing list archive

identifying blob across multiple object stores

 

Hello,

This question is not directly related to the OpenStack Object Store, but it would be interesting to hear your opinions on that.

Imagine multi-cloud environment with multiple heterogeneous object stores (e.g. OpenStack, AWS S3, Azure blob store, etc.). And the question is: How to identify blob resource uniquely across multiple object stores?

The first thing which comes to mind is URI. But URI does not work for me for two reasons (and I believe for the same reasons it won't work for others):

1. URI of the resource does not contain all information which is
   necessary to access resource. For instance, in OpenStack
   authentication information needs to be stored and processed separately.
2. Each object store provider has its own URI format. Some include API
   version, context, etc. in the URI. This will require application to
   interpret each URI differently based on the provider type. But
   provider information is not in URI. Again, needs to be stored
   somewhere separately.
3.  From application point of view, URI should remain the same even if
   object store access information like credentials, API version, IP,
   port, etc. changes. Imagine situation when you have thousands URIs
   of OpenStack objects stored in database. After another client and
   server upgrade you will need to update URIs with new API version.
   Not good.

So, has anyone else came across this problem and what would be recommended solution?

Many thanks,
Rustam.
<http://www.linkedin.com/in/aliyev>