Следует ли мне использовать MyISAM или InnoDB Tables для моей базы данных MySQL?

У меня есть следующие две таблицы в моей базе данных (индексирование не завершено, так как это будет зависеть от того, какой движок я использую):

Таблица 1:

CREATE TABLE `primary_images` (
  `imgId` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
  `imgTitle` varchar(255) DEFAULT NULL,
  `view` varchar(45) DEFAULT NULL,
  `secondary` enum('true','false') NOT NULL DEFAULT 'false',
  `imgURL` varchar(255) DEFAULT NULL,
  `imgWidth` smallint(6) DEFAULT NULL,
  `imgHeight` smallint(6) DEFAULT NULL,
  `imgDate` datetime DEFAULT NULL,
  `imgClass` enum('jeans','t-shirts','shoes','dress_shirts') DEFAULT NULL,
  `imgFamily` enum('boss','lacoste','tr') DEFAULT NULL,
  `imgGender` enum('mens','womens') NOT NULL DEFAULT 'mens',
  PRIMARY KEY (`imgId`),
  UNIQUE KEY `imgDate` (`imgDate`)
)

Таблица 2:

CREATE TABLE `secondary_images` (
  `imgId` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
  `primaryId` smallint(6) unsigned DEFAULT NULL,
  `view` varchar(45) DEFAULT NULL,
  `imgURL` varchar(255) DEFAULT NULL,
  `imgWidth` smallint(6) DEFAULT NULL,
  `imgHeight` smallint(6) DEFAULT NULL,
  `imgDate` datetime DEFAULT NULL,
  PRIMARY KEY (`imgId`),
  UNIQUE KEY `imgDate` (`imgDate`)
)

Таблица 1 будет использоваться для создания галереи эскизов со ссылками на более крупные версии изображения. imgClass , imgFamily и imgGender уточнят отображаемые эскизы.

Таблица 2 содержит изображения связанные к изображениям в Таблице 1. Следовательно, использование primaryId для связи одного изображения в Таблице 1 с одним или несколькими изображениями в Таблице 2. Именно здесь я думал об использовании возможности внешнего ключа InnoDB , но я также знаком со способностью индексов в MyISAM делать то же самое.

Не вдаваясь в подробности остальных полей, imgDate используется для упорядочивания результатов.

И последнее, но не менее важное: я должен упомянуть, что эта база данных ТОЛЬКО ДЛЯ ЧТЕНИЯ . Все данные буду вводить я. Мне сказали, что если база данных доступна только для чтения, это должен быть MyISAM, но я надеюсь, что вы сможете пролить свет на то, что вы будете делать в моей ситуации.

11
задан stefmikhail 20 September 2011 в 22:55
поделиться