Что более эффективно: одна длинная отдельная таблица или распределенная таблица? и Почему?

Этот вопрос касается производительности, и я был бы признателен, если бы ответы были конкретными для случая, который я предлагаю.

Что более уместно с точки зрения производительности?

  • создание таблицы со слишком большим количеством полей
  • создание нескольких таблиц и распределение между ними похожих полей

СЛУЧАЙ: Расширенный модуль веб-CMS

Шаблон 1 : Длинная, но одна таблица

cms
-----------------------------------------------
Id
Title
Description
Images
Order
Status
Publish
meta_keywords
meta_description
meta_author

Ясно, что большинство CMS с открытым исходным кодом, таких как joomla, используют вышеуказанный шаблон. Но я думаю, что этот паттерн убивает дух СУБД . Мы можем легко разделить содержание, конфигурацию и метаданные конкретной статьи по разным таблицам. Подобно следующему

Шаблон 2: Многие, но связанные таблицы

Cms_content         cms_meta        cms_configuration
---------------------------------------------------------------------------
Id                  id              id          
Title               content_id      content_id
Description         keywords        status
Content             description     order
Images              author          publish

Примечание: В данном случае отношения взаимно однозначны

Какому шаблону следует следовать? Почему следует выбирать длинную, кроме одной таблицы, или почему бы не выбирать распределенные таблицы вместо одной?

5
задан Starx 27 December 2011 в 10:17
поделиться