Информация: MySQL Community 5.7.12 64 битУлучшение производительности MySQL
Язык программирования: Python 3.5
mysqld.cnf: Mysqld.cnf
результат "шоу переменных" show variables
Описание: - У меня есть 200 000 задач. - Я обрабатываю эти задачи с помощью 500 потоков, по одной на каждую задачу, когда заканчивается поток, запускается другая задача. Дело в том, что не должно быть более 500 потоков. - Я создаю соединение на поток. (pymysql) - Каждый из этих потоков имеет около 350 вставок в таблицу, а запрос «insert ignore». - Это очень простые вставки в таблице с 12 столбцами.
У меня есть сервер со следующими спецификациями: ТАК: Ubuntu 16.04 LTS Оперативная память: 32 Гб PROCESOR: 6 2,66 ГГц Количество procesors: 2 HDD: 10K RPM SAS 2.5" виртуальных ядер: 24 сердечники.
у меня есть проблема в том, что берет много времени, чтобы сделать вставки в базе данных, с среднем 1000 секунд в потоке.
Как я могу улучшить это? с этим вопросом я ставлю ссылки mysqld.cnf и результат отображения переменных y csv.
Пожалуйста, советую?
Спасибо!
Вы должны лучше предоставить фрагмент кода – Alex
Вместо 350 отдельных вставок вы можете делать небольшие партии с синтаксисом с несколькими вставками? –
Jared Beekman, я могу попробовать это. Я проведу его сегодня вечером и порекомендую о результатах. –