разделить между оперативной памятью и временными файлами?
зачем если не секрет?
это swapping называется.
Я думаю вам стоит посмотреть на https://github.com/dgraph-io/badger
Чем то похожа на redis
только ооооочень внимательно. он прям странный местами
+1, что ж там за множество, которое не влезает в оперативу
Сканирую файл и записываю туда строки, а map использую, т.к. нужно избежать дубликатов
Это лишь часть информации. Главное — зачем это делать, какую проблему ты решаешь?
Сканирую множество файлов в map, записывая их как ключи, а потом прохожусь по map и записываю в один итоговый файл Больше 218кк map не выдерживает, просто зависает софт, видимо рехешируется map
А что вы делаете? Что у вас в ключах?
Ключ это строка, а значение это пустая структура
Мы поняли по типу. Вопрос предметной области — зачем тебе это там хранить и в таких объёмах. Какую задачу ты решаешь? "Хочу хранить 200млн ключей" — это не задача)
Задача это записывать в итоговый файл уникальные строки, т.е. без дубликатов
до 100 символов наверное, может до 200
Да, это имеет смысл, спасибо за мысль
как вариант, отсортировать исходные файлы (если большие, то что-то типа сортировки Шелла) и затем все файлы сравнивать построчно, можно будет парами а не все сразу, главное условие чтобы отсортированы были
Обсуждают сегодня