Задать вопрос
Fesor
@Fesor
Full-stack developer (Symfony, Angular)

EAV и выбор типа данных

Собственно просто интересуюсь. На данный момент в одном из проектов понадобилось универсальное хранилище параметров для частей системы. Это могут быть как числа, так и здоровущие тексты. Потому пока они хранятся в long text. вопрос собственно такой, можно ли как-то хранить эти параметры более удобным способом, ибо что-то мне подсказывает что если из 1000 записей только в одной хранится здоровый текст, то остальные 999 создают излишнюю нагрузку…

Фактически вопрос можно переформулировать как «А не вредно ли в LONG TEXT хранить небольшие строчные значения»?

p.s. Поиска по этим полям не планируется. Но было бы неплохо разьяснить и в случае с поиском по этим параметрам. Может есть более грамотный способ хранить такие данные?

p.p.s MySQL + InnoDB
  • Вопрос задан
  • 3413 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
kocherman
@kocherman
Разницы в хранении длинных и коротких данных в long text нет.
Лишней нагрузки в этом случае не будет
Ответ написан
Комментировать
Scissors
@Scissors
Можно организовать структуру следующим образом:

Eav
=================
id
type

Eav_type_int
=================
id
eav_id
value (int)

Eav_type_string
=================
id
eav_id
value (string)

в зависимости от типа записи, помещаем данные в нужную таблицу.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы