Я создаю базу данных 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__' и часть после нее.
Это разумный подход? Есть ли другой стандартный способ сделать это?