LINUX.ORG.RU
ФорумAdmin

InnoDB Scalability \ InnoDb multithread \ распараллеливание

 , , ,


0

3

Добрый день.
Подскажите из-за чего может быть малая нагрузка на cpu, не использование всех ядер и маленькая скорость вставки в базу и выборки из InnoDb таблиц?

Насколько я понял даже если заставить использовать все ядра - особого профита это не даст и нужно менять логику самих запросов.

★★★★★

Последнее исправление: smilessss (всего исправлений: 2)

Затык на I/O? Смотрите планы и прочие профили, исходя из уже принимайте решение. Нагрузить все ядра - целью не является до тех пор, пока одно или несколько из этих ядер не превратятся в узкое место(на БД случиться примерно никогда, хотя может mariadb особенности показывает)

Deleted
()

Озвучь, пожалуйста, цифры: какое железо, запросы, структура таблиц, ну и что для тебя маленькая скорость.

urxvt ★★★★★
()
Последнее исправление: urxvt (всего исправлений: 1)

маленькая скорость ... выборки

Пишем скрипт, в котором select * from tablename, где количество записей в tablename «10005000», количество полей varchar(оченьмного) несколько сотен.
Скрипт же у вас один процесс, тут пока все не прочитает, профита не будет. Получаем, маленькую нагрузку на камень, и большое на хранилище + потребление памяти.

маленькая скорость вставки

Тут есть варианты. «Большая любовь» к индексации тех же varchar(оченьмного). insert одной записи может оказаться «долгим», по причине перестройки индексов.
Или другой вариант в духе insert into ... select...

Насколько я понял даже если заставить использовать все ядра - особого профита это не даст и нужно менять логику самих запросов.

Без рассмотрения конкретных запросов, сложно что-то сказать.

anc ★★★★★
()
Последнее исправление: anc (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.