У меня есть хеш-таблица, которую я хочу сохранить на диск. Список выглядит следующим образом:Какую структуру данных следует использовать для хранения хеш-значений?
<16-byte key > <1-byte result>
a7b4903def8764941bac7485d97e4f76 04
b859de04f2f2ff76496879bda875aecf 03
etc...
Есть 1-5 миллионов записей. В настоящее время я просто храню их в одном файле, 17-байтов на каждую запись, количество записей. Этот файл имеет десятки мегабайт. Моя цель - сохранить их таким образом, чтобы сначала оптимизировать пространство на диске, а затем искать время поиска. Время вставки не имеет значения.
Каков наилучший способ для этого? Я хотел бы, чтобы файл был как можно меньше. Несколько файлов тоже будут в порядке. Патрисия три? Radix trie?
Какие бы хорошие предложения я не получил, я буду внедрять и тестировать. Я опубликую результаты здесь для всех, чтобы видеть.
Просьба уточнить требования к использованию ОЗУ ... – ThinkJet
Я предлагаю, чтобы клавиши были случайными (например, GUID). Это верно? – ThinkJet