Когда использовать MyISAM и InnoDB?

MyISAM разработан с идеей, что ваша firebase database запрашивается гораздо больше, чем ее обновление, и в результате она выполняет очень быстрые операции чтения. Если ваше чтение для записи (вставить | обновление) составляет менее 15%, лучше использовать MyISAM.

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

выше различий между MyISAM и InnobDB? пожалуйста, укажите, имеются ли какие-либо другие ограничения для MYISAM и InnobDB. когда я должен использовать MyiSAM или когда Innodb? Спасибо!

Читайте о системах хранения .

MyISAM:

Механизм хранения MyISAM в MySQL.

  • Проще создавать и создавать, тем лучше для новичков. Не беспокойтесь о внешних отношениях между таблицами.
  • Быстрее, чем InnoDB в целом в результате более простой структуры, тем самым значительно меньше затрат на серверные ресурсы. – Больше не вернее.
  • Полнотекстовое индексирование. – У InnoDB есть это сейчас
  • Особенно хорош для таблиц с интенсивным чтением (выберите). – Больше не вернее.
  • Площадь дискового пространства в 2 раза меньше, чем у InnoDB. – Начиная с версии 5.7, это, пожалуй, единственное реальное преимущество MyISAM.

InnoDB:

Механизм хранения InnoDB в MySQL.

  • Поддержка транзакций (поддержка поддержки свойства ACID ).
  • Блокировка уровня строки. Наличие более мелкозернистого механизма блокировки дает вам более высокий уровень параллелизма по сравнению с, например, MyISAM .
  • Ограничения внешнего ключа. Позволяя вам обеспечить целостность базы данных базы данных и взаимосвязь между таблицами.
  • InnoDB более устойчив к повреждению таблиц, чем MyISAM.
  • Поддержка большого пула буферов для данных и индексов. Буфер ключей MyISAM предназначен только для индексов.
  • MyISAM застаивается; все будущие улучшения будут в InnoDB. Это было сделано совершенно ясно с выходом из версии 8.0.

Ограничения MyISAM:

  • Нет внешних ключей и каскадных удалений / обновлений
  • Нет целостности транзакций (соответствие ACID)
  • Нет откатных возможностей
  • 4,284,867,296 ограничение по строкам (2 ^ 32) – это старое значение по умолчанию . Конфигурируемый предел (для многих версий) составляет 2 ** 56 байт.
  • Максимум 64 индекса за стол

Ограничения InnoDB:

  • Нет полной индексации текста (версия ниже-5.6 mysql)
  • Невозможно сжать для быстрого, только для чтения ( ROW_FORMAT=COMPRESSED введен ROW_FORMAT=COMPRESSED )
  • Вы не можете восстановить таблицу InnoDB

Для краткого понимания читайте ниже ссылки:

  1. MySQL Двигатели: InnoDB против MyISAM – Сравнение плюсов и минусов
  2. MySQL Двигатели: MyISAM против InnoDB
  3. Каковы основные различия между InnoDB и MyISAM?
  4. MyISAM против InnoDB
  5. В чем разница между MyISAM и InnoDB?
  6. MySql: MyISAM против Inno DB!

Используйте MyISAM для очень неважных данных или если вам действительно нужны эти минимальные преимущества. Производительность чтения не лучше в каждом случае для MyISAM.

Я лично никогда больше не буду использовать MyISAM. Выберите InnoDB и бросьте немного больше оборудования, если вам нужно больше производительности. Другая идея – посмотреть на системы баз данных с большим количеством функций, таких как PostgreSQL, если это применимо.

EDIT : для чтения-производительности эта ссылка показывает, что innoDB часто на самом деле не медленнее, чем MyISAM: http://www.mysqlperformanceblog.com/2007/01/08/innodb-vs-myisam-vs-falcon-benchmarks-part -1 /

  • Каковы критерии проектирования для первичных ключей?
  • ArrayList Vs LinkedList
  • Структура данных дерева Java?
  • Пример n случайных строк для каждой группы в кадре данных
  • Лучший дизайн для таблицы базы данных изменений / аудита?
  • Обратное упорядочение слов в строке
  • NULL разрешено в основном ключе - почему и в какой СУБД?
  • Привязка видимости кнопки к значению bool в ViewModel
  • Как удалить в структуре данных кучи?
  • Почему hashCode () возвращает одно и то же значение для разных объектов в Java?
  • Как разработать таблицу продуктов для многих видов продуктов, где каждый продукт имеет множество параметров
  • Давайте будем гением компьютера.