Почему механизм хранения myisam работает быстрее, чем механизм хранения Innodb

Почему механизм хранения myisam работает быстрее, чем механизм хранения Innodb

что делает его более быстрым, а innodb медленным?


person Naveen Kumar    schedule 25.03.2013    source источник
comment
MyISAM НЕ быстрее, чем InnoDB. Это тотальный миф. Да, еще в те далекие времена, когда InnoDB был совершенно новым и не полностью сформированным, MyISAM был быстрее только для чтения. Он никогда не был быстрее для записи и всегда был более хрупким. Запись в таблицу MyISAM приводит к блокировке всей таблицы во время записи. Список длинный... Все недавние тесты показывают, что InnoDB значительно быстрее, чем MyISAM, как для чтения, так и для записи. InnoDB уже некоторое время является механизмом хранения по умолчанию для MySQL. Я не могу придумать вескую причину для использования MyISAM.   -  person Craig    schedule 05.12.2013
comment
(... для типичных рабочих нагрузок)   -  person Craig    schedule 05.12.2013


Ответы (1)


MyISAM может быть быстрее, чем innodb, потому что у него более простой дизайн. Кроме того, он существует гораздо дольше и имеет больше времени для накопления дополнительных улучшений и оптимизаций на основе данных о реальном использовании.

Дизайн MyISAM основан на ISAM: http://en.m.wikipedia.org/wiki/ISAM

Однако за скорость приходится платить: MyISAM не поддерживает транзакции или внешние ключи. Это означает, что он оптимален, например, для сохранения и анализа данных журналов, а также в качестве серверной части для технологий интеллектуального анализа данных и хранилищ данных, в то время как innodb лучше подходит для обработки транзакций и в качестве уровня хранения информационных систем в целом.

В Википедии есть хорошее сравнение механизмов хранения MySQL здесь: http://en.m.wikipedia.org/wiki/Comparison_of_MySQL_database_engines

person Joni    schedule 25.03.2013