Berkeleydb - B-Tree в сравнении с хеш-таблицей

Я пытаюсь понять, что должно определять выбор метода доступа при использовании BerkeleyDB: B-Tree по сравнению с HashTable. Hashtable обеспечивает поиск O (1), но вставки дороги (при использовании линейного / расширяемого хеширования мы получаем амортизированное значение O (1) для вставки). Но B-деревья обеспечивают время поиска и вставки журнала N (база B). B-дерево также может поддерживать запросы диапазона и разрешать доступ в отсортированном порядке.

  1. Помимо этих соображений, что еще следует учитывать?
  2. Если мне не нужно поддерживать запросы диапазона, могу ли я просто использовать доступ к Hashtable. метод?
7
задан Brad Mace 16 August 2012 в 20:29
поделиться