|
Отключение КЭШа на период оптимизации запросов
|
|||
---|---|---|---|
#18+
Всем доброго дня. Выполняю работу по оптимизации запросов к базе (изучаю планы запросов, строю индексы, в общем, как обычно) и вот на что наткнулся: Некий запрос тащит большое количество столбцов но каждый раз скорость выполнения разная. Причина в КЭШе. То есть первый раз долго а потом быстро. Так вот не пойму как отключить использование этого КЭШа на период отладки. Пробовал PRAGMA cache_size = 0; Признак вроде превращается в 0 но делу это не помогает, а каждый раз вакуумить базу весом в 15 Гб долго. Заранее спасибо. Зы: как я понял в sqlite нельзя сделать include поля в индексах (как в MSSQL)? Зы2: есть какие либо настройки чтобы EXPLAIN QUERY PLAN <запрос> показал чуть больше данных? (Может время операции, процент) или это надо смотреть именно в EXPLAIN <запрос>? И ещё большее заранее спасибо :) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2020, 18:22 |
|
Отключение КЭШа на период оптимизации запросов
|
|||
---|---|---|---|
#18+
Отключением кэша ты проблему не решишь, разве что медленнее станет, т.к. данные сначала в кэш читаются - затем оттуда обрабатываются. Вакуум тоже не должен никак помогать, хотя при интенсивных удалениях немного поможет. Запросы оптимизируются добавлением индексов. Индекс позволяет выбрать только нужные данные, а не тупо сканировать всю таблицу. Что-то конкретнее сложно сказать не видя запроса и структуры используемых таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2020, 18:39 |
|
Отключение КЭШа на период оптимизации запросов
|
|||
---|---|---|---|
#18+
когда то крутил SQLite базы на CD\DVD дисках и там вопрос оптимизации стоял очень остро, фокус в том, что кэрирование происходит не только на уровне СУБД, но и на уровне Windows, она кэширует данные с дисков. Вопрос решался какой то тулой для "оптимизации" памяти, которая сносила этот системный кэш. попробуйте глянуть в этом направлении ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2020, 12:17 |
|
|
start [/forum/topic.php?fid=54&msg=39990926&tid=2008355]: |
0ms |
get settings: |
17ms |
get forum list: |
15ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
50ms |
get topic data: |
11ms |
get forum data: |
1ms |
get page messages: |
182ms |
get tp. blocked users: |
1ms |
others: | 316ms |
total: | 595ms |
0 / 0 |