Найти - Пользователи
Полная версия: Что выбрать MyISAM или InnoDB для Django
Начало » Django » Что выбрать MyISAM или InnoDB для Django
1 2
andreiru
Что выбрать MyISAM или InnoDB для проекта на Django ?
Lexander
Если не можете сами разобраться с рекомендациями из документации MySQL (там спец раздел есть), то дайте больше сведений об организации данных и работе вашего сайта.
andreiru
Lexander, в основном у меня будет выборка данных, join часто будет использоваться !
Lexander
Если это единственные требования, то все равно.

Но я очень в этом сомневаюсь, что это единственные требования.
Вы доку таки почитайте. ;)
lorien
innodb, забудьте про myisam
VadimK
В плане выборки myisam будет быстрее.
Saturn
Если проект простенький, тогда можно и посмотреть в сторону SQLite.
Тогда в плане скорости на “выборку данных” будет намного быстрее чем в MySQL.
А если выбирать из MySQL , тогда inniDB -> там возможностей намного больше (транзакции, внешние ключи…).
daniel
Доброго времени суток!

InnoDB, если Вам нужна поддержка транзакций (транзакции - это отличный способ избавиться от ненужных локов (lock). К примеру, Вы можете делать update без блокировки таблицы. Такие операции бывают очень продолжительными при больших объёмах данных.)

Myisam - это не плохо. Не верьте тому, кто утверждает, что это плохо. К примеру, никакой engine, использующий дисковую подсистему не будет работать быстрее на вставку данных (insert), чем myisam. Так же myisam поддерживает режим восстановления (repair), чего нет у innodb. Myisam проявляет себя быстрее не только на insert, но и на выборках (select). Так же нельзя отметить встроенную поддержку полнотекстового поиска (хотя лучше использовать внешние решения: solr, sphinx, и т.д.) и, что не так важно сегодня - меньшее потребление дискового пространства, в отличии от InnoDB.

Если Ваш проект не нуждается не в скорости, ни в экономии дискового пространства, ни в нативном полнотекстовом поиске, то я бы посоветовал Вам использовать InnoDB, как простое решение, отлично работающее с Django. Ещё одним плюсом InnoDB можно назвать то, что в виду наличия транзакций Вы всегда сможете делать бекапы своей базы без локов таблиц, а значит - не мешая работе проекта. Просто используйте ключ –single-transaction у mysqldump.

Надеюсь, что помог Вам осуществить выбор, желаю Вашему проекту скорости и стабильности в работе с БД.

Спасибо!
lorien
У меня логика простая. Человек не написал требований к проекту. Значит он нуб. Раз нуб, пускай юзает innodb и набивает шишки об целостность данных и транзакции. Не нужен ему MyISAM.
daniel
А я бы посоветовал новичку myisam, чтобы оценить преимущество транзакций и бинлога
Но я решил описать простыми словами каждый engine, чтобы человек сделал всё же осознанный выбор, а не последовал слепо совету специалистов.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB