mrgloomДа, очень медленно работать будет.
наверно я не правильно сделал что commit после каждой записи?
mrgloomЛучше примерно по 1000 записей вставлять, потом коммит.
или еще лучше наверно работать в памяти а потом, чтобы сбросило на диск.
mrgloomДа, в вашем случае это просто столбец. А вот так:
так в нее можно полностью одинаковые записи или с одинаковыми главными ключами?
create table hash_id (hash PRIMARY KEY, id)
create table hash_id (hash unique, id)
Кстати, вы при чтении файла открываете его с помощью PIL (Image.open(full_path).tostring()). Это может быть медленней чем:
with open(full_path, 'rb') as f: im_hash= hashlib.md5(f.read()).hexdigest()
Ну и еще, можно было бы использовать:
- для рекурсивного прохода по файлам
os.walk + fnmatch.fnmatch
- os.path.join вместо
curr_path= main_dir+'\\'+dirs
Кстати, чтобы потом искало быстро в базе, не забудьте сделать индекс по хэшу (в случае primary key не нужно).
off
пока писал, ту тему закрыли :)