Форум сайта python.su
0
вообщем задача такая.
есть папка в ней много папок(предположительно пара мильёнов), а в папках есть файлы от 0 до 300 примерно.
проходимся по всем папкам и считаем MD5 файлов, получаем список структур (название папки,список MD5 стрингов).
потом допустим на вход программы подаётся файл у него считается MD5 и надо найти к какой папке относится файл.
как это лучше всего реализовать?
сделать просто базу данных типа ключ название папки - содержимое список стрингов MD5?
п.с. MD5 не принципиально, просто для примера.
Отредактировано mrgloom (Авг. 17, 2012 10:48:53)
Офлайн
0
наверно лучше перенести в базы данных.
Офлайн
52
Если смотреть только на эту задачу, то подойдет любое key-value хранилище. Ключом логично сделать md5 файла, а содержимым будет список имен папок, в которых он находится.
Офлайн
14
mrgloomМодерам пофиг же.
наверно лучше перенести в базы данных.
mrgloomMD5 использовать не рекомендуется, вместо него лучше брать SHA2 и, если надо, обрезать.
MD5
Офлайн
0
odnochlenпочему?
MD5 использовать не рекомендуется, вместо него лучше брать SHA2 и, если надо, обрезать.
Офлайн
33
odnochlenДля хеширования? С чего й то?
MD5 использовать не рекомендуется, вместо него лучше брать SHA2 и, если надо, обрезать.
Офлайн
14
Офлайн
41
odnochlen
ну не всё на столько плохо) в дебиане например пока MD5 (но хотят заменить), хотя из коллизий в молодости находил несколько пар одинаковых файлов (по чексуме) на двд
Офлайн
33
odnochlen
Да я в курсе. У SHA-2 тоже коллизии, вследствие чего разрабатывают SHA-3.
О другом речь, зачем тяжелый SHA2 использовать для хеширования?
Офлайн
0
у меня файлы ихображения и я считаю так
hashlib.md5(img.tostring()).hexdigest()
Офлайн