2009-10-26 7 views
0

Я разрабатываю таблицу MySQL для системы аутентификации для персонального веб-сайта с высоким трафиком. Каждый раз, когда пользователь комментарий, статьи, и т.д. отображается будут необходимы следующие поля:Унификация колонок MySQL, любые улучшения производительности?

  • Войти
  • Дисплей пользователя
  • Пользователь Bio (Немного подпись)
  • Сайт счета
  • счета
  • YouTube
  • Twitter счета
  • Facebook счета
  • LastFM Счет

Таким образом, все в одном столе предотвращает необходимость вызова подтабликов. Поэтому мой вопрос:

¿Были ли какие-либо улучшения, если бы я совмещал столбцы сайтов, Youtube, Twitter, Facebook и Lastfm с одним?

Например:

[сайт :: something.com] [YouTube :: youtube.com/something]

ответ

0

Нет, комбинируя эти столбцы бы не привело к улучшению. . В самом деле, кажется, вы бы расширить общую длину (с добавлением префикса и сепараторов, следовательно, потенциально ухудшая производительность

Несколько других трюков однако, может помочь:

  • уменьшить размер значений, хранящихся в столбцы «xxxAccount», полностью удаляя или заменяя короткими кодами, наиболее общие части этих значений (в приведенных примерах указывается какой-то URL-адрес, в котором начало, вероятно, будет повторяться.
  • в зависимости от средней длины био и типичный текст, найденный в нем, также может оказаться полезным найти способы сокращения размера [хранилища] с простой заменой общего wo rds или, возможно, с фактическим сжатием (ZIP и т. д.), хотя это может привести к необходимости хранить столбец в столбце BLOB, который затем может быть отделен от таблицы, в зависимости от реализации/конфигурации сервера.

И, конечно же, независимо от каких-либо улучшений на уровне базы данных, указанная модель использования предлагает ускорить кэширование данных такого рода, чтобы избежать трюка для SQL в целом.

+0

* Ожидание трюков * :) – MarioRicalde

0

Ну, я так не думаю, подумайте об этом так. Вам понадобится какой-то способ разделить их, и для этого потребуется дополнительная обработка, и тогда почему бы не просто иметь одно поле в целом таблице и все в этом? :) Не беспокойтесь о производительности, было бы лучше с отдельными колонками

Смежные вопросы