Re: Ускорение работы с sqlite
От: Pzz Россия https://github.com/alexpevzner
Дата: 15.07.23 10:24
Оценка: 12 (1) +1
Здравствуйте, 00011011, Вы писали:

0>Откуда такие огромные задержки и как можно ускорить работу с базой?


Объедини по нескольку измемений в одну транзакцию.

По умолчанию (если явно не управлять транзакциями), sqlite считает транзакцией каждую отдельную команду. При этом она берет на себя ответственность, что результаты транзакции не просто прокрутятся логически, а долетят до диска. Что, как ты понимаешь, дело не быстрое.

Если несколько изменений объединены в одну транзакцию, то вся эта долгая возня с обеспечением синхронизации с диском делится на них на всех. Ускорение может быть на несколько порядков (грубо говоря, одно изменение и 10000 изменений, объединенных в одну транзакцию, занимают довольно сравнимое время).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.