У меня есть таблица с примерно 9 миллионами записей. Когда я пытаюсь выбрать записи с большим смещением (для разбивки на страницы), это увеличивает время выполнения до предельных значений. Или даже вызывает превышение пределов памяти и сбои.
Вот журналы для запроса с двумя различными значениями смещения.
SELECT * WHERE set_date> = '2019-10-11 11 : 05: 00 'И set_date <=' 2019-10-19 18:09:59 'ЗАКАЗАТЬ ПО ИДЕНТИФИКАТОРУ AS C ПРЕДЕЛ 1 <strong>СМЕЩЕНИЕ 30
<strong>Elapsed: 0.729 sec.</strong> Processed 9.92 million rows, 3.06 GB (13.61 million rows/s., 4.19 GB/s.)
MemoryTracker: <strong>Peak memory usage</strong> (for query): 181.65 MiB.
ВЫБРАТЬ * ГДЕ set_date> = '2019-10-11 11:05:00' И set_date <= '2019-10-19 18:09:59' ЗАКАЗАТЬ ПО ИДЕНТИФИКАТОРУ AS C ПРЕДЕЛ 1 <strong>СМЕЩЕНИЕ 3000000
<strong>Elapsed: 6.301 sec.</strong> Processed 9.92 million rows, 3.06 GB (1.57 million rows/s., 485.35 MB/s.)
MemoryTracker: <strong>Peak memory usage</strong> (for query): 5.89 GiB.