Я разрабатываю базу данных MySQL
, которая должна обрабатывать около 600 строк в секунду в разных таблицах InnoDB. В моей текущей реализации используются несвязанные подготовленные операторы. Однако запись в узкие места базы данных MySQL
и мой размер очереди увеличивается с течением времени.
Реализация написана на Java, я не знаю версию с руки. Он использует MySQL
Java-коннектор. Мне нужно переключиться на JDBC
завтра. Я предполагаю, что это два разных пакета соединителей.
Я прочитал следующие темы:
- Оптимизация вставки MySQL для обработки потока данных
- MyISAM против InnoDB
- Вставка двоичных данных в MySQL (без PreparedStatement)
и с сайта mysql:
Мои вопросы:
-
Есть ли у кого-нибудь советы или опыт по различиям в производительности с помощью INSERT с подготовленными операторами в пакетном режиме и с использованием одного оператора
INSERT
с несколькими значениями VALUE. -
Каковы различия в производительности между коннектором
MySQL
Java иJDBC
. Должен ли я использовать один или другой? -
Таблицы предназначены для архивирования и будут видеть ~ 90% записи до ~ 10% чтения (возможно, даже меньше). Я использую InnoDB. Является ли это правильным выбором для MyISAM?
Заранее благодарим вас за помощь.