SQLITE: PRAGMA temp_store = MEMORY - PullRequest
       8

SQLITE: PRAGMA temp_store = MEMORY

0 голосов
/ 26 сентября 2011

Во всех руководствах по оптимизации люди говорят о прагме, такой как JOURNAL_MODE или SYNCHRONOUS, но я никогда ничего не читал о прагме TEMP_STORE? Я ожидаю, что это окажет большое влияние, так почему это никогда не упоминается?

Его цель - переместить все внутренние временные таблицы SQLite с диска (временного каталога) в память, что кажется намного быстрее, чем попадание на диск при каждом SELECT?

1 Ответ

0 голосов
/ 26 сентября 2011

SQLite блокирует всю базу данных при выполнении записи, поэтому я полагаю, что лучше перенести данные на планшеты, прежде чем приступить к следующей задаче.

Хранение данных в памяти, скорее всего, зарезервировано для тех случаев, когда вам нужно только временное хранилище данных (как следует из названия TEMP_STORE); вам все равно нужно будет предоставить метод для периодической очистки данных на диск (если вы хотите сохранить их), а поскольку блокировка не является гранулярной, вам придется сбросить всю базу данных.

Другими словами, TEMP_STORE не является механизмом кэширования.

...