14:55 EAV структура базы данных |
EAV - означает Entity, Attribute и Value Чаще всего используется для добавления характеристик товаров в интернет магазинах Entity - товары, категории, покупатели и заказы Attribute - атрибуты, как наименование, цена, статус и пр. Value - конкретное значение атрибута. Вся информация хранится в разных таблицах, для вывода полной необходимо несколько запросов для сборки в единое целое. Плюсы:
Минусы:
Готовые решения для django Если заказчик желает сам дополнять объекты недвижимости какими-либо атрибутами, то да, в том или ином виде от EAV не уйти. Если же заказчик заинтересован в развитии системы таким образом, когда помимо атрибутов, изменяется и логика работы (изменяются, удаляются и добавляются операции и т.п.), то лучше убедить его в том, что EAV использовать не стоит. Альтернативные модели проектирования реляционных баз данных
либо использовать nosql базы данных такие как
так же возможно использовать hstore (https://github.com/jordanm/django-hstore) но данный проект привязан к postresql Для сайтов со сложным поиском и фильтрацией возможно стоит использовать поисковый движок Solr который предоставляет теже возможности.
|
|
Всего комментариев: 0 | |