Berkeley DB, или любая другая реализация DBM, будет нести издержки для каждой пары ключ / значение. Если вы имеете дело с миллионами пар к / в, то издержки будут иметь значение, в противном случае это шум, и вы должны выбрать, что проще для вас, программист, и позволить базе данных работать с данными. Издержки и время доступа также будут зависеть от способа доступа. Хеш-таблицы и B-деревья - совершенно разные алгоритмические животные. Если ваши данные имеют какую-либо степень упорядочения ключей или схемы доступа, зависящие от ключей, то в 99% случаев B-деревья подходят.
Я думаю, что вы задаете замечательный вопрос о дизайне, но я думаю, что для того, чтобы кто-то мог дать вам идеальный ответ, нам всем нужно было бы знать намного больше о количестве данных, с которыми вы имеете дело, схемах доступа и многих других факторы.