SQLite не использует полные системные ресурсы во время медленных очередей SELECT - PullRequest
0 голосов
/ 12 июня 2019

Я выполняю некоторые запросы на выборку с SQLite. Столбцы уже проиндексированы. Запросы в формате:

SELECT stuff FROM table WHERE haystack LIKE "%needle%"

Я также загружаю БД в память, запустив RESTORE FROM my_db.db, и это, кажется, работает (используемая память увеличивается)

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

Однако, пока выполняются запросы, я вижу очень низкую загрузку ЦП - около 25-35% в среднем по всем ядрам.

Я думаю, что SQLite может каким-то образом снизить свою производительность и не использовать весь процессор.

Есть ли способ заставить его не дросселировать и использовать все системные ресурсы, чтобы запросы выполнялись быстрее?

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...