LostНе плыть по течению

Комментарии на форумах. Длина

Произвёл анализ длин комментариев на форумах nn.ru (в рамках думания оптимизации базы данных для комментариев).

Из 235 тыс комментариев:

  1. Максимальная длина комментария 60 тыс символов
  2. Средняя длина 232 символа
  3. 136 тыс (60%) не выше 140 символов (twitter-у привет)
  4. 175 тыс (75%) имеют длину не более 255 символов
  5. 212 тыс (90%) не выше 512 символов
  6. 228 тыс (97%) не выше 1024 символов
  7. 233 тыс (99.2%) не выше 2048 символов
  8. 1900 (0.8%) выше 2048 символов
  9. 120 (0.05%) выше 8192 символа



Итоги: можно сделать величину поля для комментария постоянной величиной в CHAR(255), а остальное хранить в другой таблице (вертикальное разделение).
Или сделать два постоянных поля CHAR(255), CHAR(255)

Думаю, что сделаю второй вариант с двумя постоянными полями.

А вы что советуете?


Comments (3):

    • honeyman
    • 05.06.2010 19:58
    • Нижний Новгород / Нижегородская область
    Что это за БД такая ужасная, что у неё char(255) хоть сколь-нибудь заметно быстрее, чем varchar?
    • На данном этапе вопрос не в принципе выбора базы данных. Я, конечно понимаю, что можно выбрать или Redis, или mongodb, но вопрос не в этом.
      • eugene_ivanov
      • 07.06.2010 10:13
      • Нижний Новгород / Нижегородская область
      решил не применять разделение таблиц
      продолжать использовать dinamic text.

      потому что комментарии меняются очень редко. поэтому это поле будет считаться мало_изменяющимся, и поэтому фрагментации будет очень мало.