2017-04-05 43 views
3

1) 的documentation状态:IBM Cloud Object Storage - 它是否支持对象版本控制,以及如何获取UUID?

通用唯一标识符(UUID):该ID被分配给每一个对象在OBS系统。此UUID允许对象存储系统区分对象,并用于查找数据,而无需知道数据所在的确切物理驱动器,阵列或站点。

但是,我无法在API中找到关于如何通过其UUID检索对象或如何检索对象的UUID的信息。我可以这样做吗?

2)COS是否支持存储对象的自动版本控制,比如aws呢?例如,如果我将数据存储在启用了版本的存储桶中,则会收到标题为x-amz-version-id(请参阅here),其中包含已分配的版本ID。 COS是否支持版本控制,如果是这样,我如何检索对象的版本?

回答

2

该对象的UUID实际上只是{bucket-name}/{object-key}组合。因为每个桶名称必须是全局唯一的,所以这允许对象键定义对象的唯一标识符。感谢您询问这个问题,我应该重写那部分文档以不使用UUID,因为这意味着存在额外的底层标识符。

目前,COS不支持公有云中的对象的AWS S3风格版本控制(尽管这在私有云实现中是可能的)。这是今年晚些时候的路线图。

0

Regaring version,我不知道,但是如果你想以AWS的方式拥有UUID,那么你也可以谈论Etag。 ETAG,对于给定对象,是这样的:

52816d090462f946a7a6273ea3d3896c 

为了得到这个ETAG,BOTO3是真棒: 使用这个调用来得到它:

s3ressource = client(
    service_name='s3', 
    endpoint_url= "endpoint_url", 
    aws_access_key_id= "aws_access_key_id", 
    aws_secret_access_key="aws_secret_access_key", 
    use_ssl=True, 
    ) 


OBJE = s3ressource.head_object(Bucket = TheNameOfYourBucket, Key = theNameOfYourObject) 
ETAGOBJE=OBJE['ETag'] 
相关问题