<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hello,<br>
    <br>
    This question is not directly related to the OpenStack Object Store,
    but it would be interesting to hear your opinions on that.<br>
    <br>
    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?<br>
    <br>
    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):<br>
    <ol>
      <li>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.</li>
      <li>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.<br>
      </li>
      <li>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.<br>
      </li>
    </ol>
    So, has anyone else came across this problem and what would be
    recommended solution?<br>
    <br>
    <div class="moz-signature">Many thanks,<br>
      Rustam.<a href="http://www.linkedin.com/in/aliyev"><br>
      </a></div>
  </body>
</html>