Итак, у меня есть таблица, которая используется в основном как установка NoSQL. Структура:MySQL медленная таблица запросов на первичный ключ
ID BIGINT первичный ключ MEDIUMBLOB данные модифицированная метка времени
Она насчитывает около 350k строк. Запросы, которые выполняются на нем, структурированы следующим образом:
выберите данные из таблицы, где id = XXX;
Настольный двигатель InnoDB. Я замечаю, что иногда запросы против этой таблицы довольно медленные. Иногда им требуется 3 секунды. Таблица составляет 3 ГБ на диске, и я дал innodb_buffer_pool_size 4G.
Есть ли что-нибудь, что мне не хватает здесь? Есть ли какие-либо настройки, которые я могу настроить для повышения производительности?
Edit: В соответствии с просьбой объяснить вывод:
+----+-------------+----------+-------+---------------+---------+---------+-------+------+-------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+----------+-------+---------------+---------+---------+-------+------+-------+
| 1 | SIMPLE | cache | const | PRIMARY | PRIMARY | 8 | const | 1 | |
+----+-------------+----------+-------+---------------+---------+---------+-------+------+-------+
создать таблицу:
CREATE TABLE `cache` (
`id` bigint(20) unsigned NOT NULL DEFAULT '0',
`data` mediumblob,
`modified` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
InnoDB разве оптимизирован только для записи - хорошо спроектированный InnoDB таблицы с преимуществом это кластерный индекс будет превосходя любой другой двигатель http://stackoverflow.com/questions/4419499/mysql-nosql-help-me-to -choose-the-right-one-on-a/4421601 # 4421601 –
Я не уверен, что согласен с InnoDB. У меня мои настройки довольно близки к тому, что предлагается по второй ссылке. – Jon
Извините, мне кажется, я немного неясен. InnoDB лучше оптимизирован для записи по сравнению с MyISAM, который лучше оптимизирован для чтения. InnoDB, вероятно, ваш лучший выбор, я просто пытался сказать, что с точки зрения чтения это не лучший выбор. – IAmTimCorey