Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Реализации на разных языках доступны для загрузки harpywar.pvpgn.pl/?do=hashежу понятно,
Очевидно, что на Си быстрее всего.
Надо было так:
CREATE VIRTUAL TABLE t USING fts4(hash TEXT, password TEXT);
Искать как:
select * from t where hash math '...';
Смысл в том, что fts4 использует индексное мультидерево и нет деградации скорости вставки на больших таблицах, при сохранении высокой скорости поиска. Впрочем, даже при обычном индексе на поле хэша вы должны были получить быстрый поиск и медленную вставку, но никак не медленный поиск. Попробуйте взять мою сборку эскулайт
sqlite.mobigroup.ru/home
Тест поиска (на нетбуке) можете посмотреть здесь
geomapx.blogspot.com/2010/01/sqlite-fts3.html
Вот здесь есть тест с генерацией БД, для изучения скорости вставки
book.mobigroup.ru/dir?ci=c9fc797c01deb246&name=web_project_DBMS/distributed_schema
См. файлы perftest_log_* с результатами теста на разных носителях.В арсенале Windows, как ни странно, такой утилиты нету. В тоталкомандере нельзя разбить по байтам, а мне нужна была точность.
Я написал на C# простенькую утилиту, читающую исходный файл по байтам и складывающую их последовательно в отдельные файлы заданного размера.
split: split a file into pieces
Мгновенный поиск в 75 гигабайтах