Внедрение Zend Framework EAV - PullRequest
3 голосов
/ 04 января 2011

Мне было интересно, есть ли хорошие готовые способы реализации шаблона проектирования EAV в Zend Framework?

Я пытаюсь решить, следует ли мне создавать собственную реализацию или использовать уже реализованнуювстроенный.

Ответы [ 3 ]

2 голосов
/ 25 июля 2012

Использование Doctrine с приложением MongoDB Document Mapper http://www.doctrine -project.org /

В Zend Framework 2.0 установлена ​​автоматическая установка Doctrine с Composer, поэтому Zend People также предлагает это какВариант, помимо встроенного Zend_Db.

Использование EAV в ориентированной на документы системе баз данных NoSQL, такой как MongoDB или CouchDB, намного лучше, чем реализация Hack поверх традиционных реляционных баз данных, таких как MySql (что и сделал Magento).Базы данных NoSQL лучше реализуют данные типа Sparse Matrix.

1 голос
/ 03 августа 2012

Digitalus CMS использует шаблон EAV и основан на MySQL.Это правда, что Mongo или Couch могут быть более подходящими, но MySQL часто является более легким выбором, потому что вам не нужно ничего устанавливать.Я пытался использовать SimpleDB, но локальная версия MySQL в 4 раза быстрее.SQLite также работает очень хорошо.

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

Digitalus использует подход, при котором существует базовая модель элементов CMS, которая обрабатывает всю логику EAV.Эта модель также обрабатывает сквозной кэш, так что система в конечном итоге обслуживает контент так же быстро, как плоская файловая система.

Все пуристы, вероятно, технически правильны, но в моем наборе инструментов есть место быстро и легко.

1 голос
/ 04 января 2011
...