Object的metadata讓我們能快速定位Object在什麼地方、屬性等等,可以理解為類似資料庫的index,在我們的Lab,我們的metaddata會存放Object的
詳情可以看method addMetadata
https://github.com/kaichiachen/python-simple-object-storage/blob/master/utils/utils.py#L94
@classmethod
def addMetadata(cls, name, version, h, size, locate):
data = {
'hash': h,
'time': str(datetime.datetime.now()),
'size': size,
'locate': locate
}
cls.r.hset(name, version, json.dumps(data))
我們把object的name和version作為key,因為user一般都是使用這兩個找object,value就是剩餘的metadata
我們的metadata存在Redis,連上Redis非常簡單,如下所示
https://github.com/kaichiachen/python-simple-object-storage/blob/master/utils/utils.py#L77
r = redis.Redis(host=REDIS_SERVER, port=REDIS_PORT)