Страница 1 из 1
Проблемы с подсчётом хешей большого количества файлов
Добавлено: Пн мар 14, 2016 12:56 pm
Qwertiy
Собственно, две проблемы.
1. При подсчёте хешей большого числа файлов файл с хешами постоянно перезаписывается, что означает, что между подсчётами хешей файлов по несколько килобайт записывается 60 мегабайт хешей всех файлов. Это катастрофически сказывается на скорости и подсчёт большого числа хешей становится невозможным. Надо просто дописывать хэш в файл, не перечитывая и не перезаписывая его полностью.
2. При установке хеширования на паузу есть вероятность сохранения файла с нулевым размером. Видимо, при этом все 60 МБ хешей находятся исключительно в памяти. Во-первых, это само по себе плохо, во-вторых, почему установка на паузу происходит в таком месте, а не после завершения записи файла с хэшами?
Добавлено: Вт мар 15, 2016 4:58 am
Max Diesel
1. Есть вещи, которые не предполагаются среднестатистическим использованием программы. Не предполагается чья-либо необходимость создавать 60-мегабайтные файлы с хэшами, как и не предполагается копирование файлов размером больше чем 30 эксабайт, как и не предполагается что пользователь обладает каталогами, внутри которых сбросано более чем 20 тысяч файлов. Возможно когда-нибудь функция будет модифицирована под экзотику.
2. Вероятность сохранения в такой ситуации файла с нулевым размером действительно существует и равна 0%. Полагаю, эта вероятность не так уж страшна, чтобы обходить ее стороной, ведь вероятность угадывания с первой попытки 4-килобитного ключа гораздо выше.
Добавлено: Пн мар 21, 2016 2:17 am
Qwertiy
1.
http://russian.joelonsoftware.com/Artic ... asics.html
2. Или 90%, если размер файла с хешами 60МБ, а размер хешируемых файлов 30 КБ.
Добавлено: Вт мар 22, 2016 2:51 am
Max Diesel
В связи с чем заявлено увеличение вероятности от 0% аж до 90%? Были ли проведены какие-либо тесты, которые доказывают этот факт, произошла ли на практике утрата содержимого файла при факте что ни Unreal Commander не был завершен принудительно, ни операционная система не вылетела в синий экран? Если ничего этого не было, то ни о каких 90% речь идти не может, так как это просто ошибочные домыслы.
Re: Проблемы с подсчётом хешей большого количества файлов
Добавлено: Пн мар 29, 2021 8:29 pm
avmaksimov
Со вторым, конечно, можно поспорить, но дописывать всегда лучше, чем хранить в памяти и скидывать целиком буфер. И память оптимальнее расходуется, и диски меньше изнашиваются, да и процесс будет быстрее идти.
А насчёт того, что предполагается - ведь, нигде не написано какое-либо ограничение)).
Добавлено: Ср мар 31, 2021 10:28 am
Max Diesel
Уже давно используется дописывание, впрочем увеличение скорости если уж и заметно, то лишь на большом количестве очень мелких файлов.
Re:
Добавлено: Ср мар 31, 2021 11:43 am
avmaksimov
Max Diesel писал(а): ↑Ср мар 31, 2021 10:28 am
Уже давно используется дописывание, впрочем увеличение скорости если уж и заметно, то лишь на большом количестве очень мелких файлов.
Кстати, как раз и заметил. У меня как раз был такой случай. Хотел дополнительно проверить md5 всех своих фоток).
Благодарю за ответ и улучшения.