【发布时间】:2017-12-11 16:49:24
【问题描述】:
我正在为一个咖啡网构建一个 lmdb 数据库,它存储各种图像,如下所示:
txn.put('{:0>10d}'.format(dbCtr),currImageDatum.SerializeToString())
我将两个字符串存储为键值对。但是,我还想存储一些元数据。具体来说,我想存储图像来自的文件的名称。我的理解是value 必须是单个字符串,而不是像[currImageDatum.SerializeToString(), 'myImage.jpg'] 这样的东西。
所以,我能想到的唯一方法是:
txn.put('{:0>10d}'.format(dbCtr),currImageDatum.SerializeToString() + '__MY_META_DATA__' + 'myImage.jpg')
然后,在读取 lmdb 时,将值字符串拆分为 '__MY_META_DATA__' 之前的部分和之后的部分。
这是一个合理的方法吗?还有其他标准方法吗?
【问题讨论】: