Получи случайную криптовалюту за регистрацию!

Давно не слышал о dbm, но случайно увидел упоминание о нем в Т | Geeks

Давно не слышал о dbm, но случайно увидел упоминание о нем в Твиттере. Если кратко, то это некий формат хранения “ключ-значение” данных, в котором и ключ и значение представляют из себя строки. Эдакий словарик состояние которого хранится на диске в файле т.е. это предельно простая для использования база данных. Вы только задумайтесь - формат разработан в 1979 году! Можно сказать, что dbm, в каком-то смысле является предком, и даже некоторой предтечей появившихся позже nosql решений.

Есть разные реализации интерфейсов для работы с этим форматом, как совместимые между собой, так и нет. Пакеты для работы с этим форматом можно найти для всех популярных (и не очень) языков программирования. К примеру, пакет предоставляющий функции для работы с dbm можно найти в стандартной библиотеке python, а для golang имплементация легко нагугливается.

К слову, в питоне вся работа с dbm объектом в python происходит как с обычным словарем - ты запрашиваешь данные, указывая в ключ строку, а возвращается всегда байтовая последовательность:

import dbm

with dbm.open('my_store', 'c') as db:
db['key'] = 'value'
print(db.keys()) # ['key']
print(db['key']) # 'value'
print('key' in db) # True

Ну и, что вполне ожидаемо, работа с dbm проходит достаточно быстро.

https://remusao.github.io/posts/python-dbm-module.html