|
|
|
Что выбрать: "класс как таблица" (ROT) или "класс как сущность-атрибут-значение" (EAV)?
|
|||
|---|---|---|---|
|
#18+
Estets wrote: > locky > > а скрипты потом нам - "мы мигом к вам заявимся, с лопатами и вилами, > денёчек покумекаем - и выправим дефект" > > > ;) это я к тому что без моделирования на объемах "приближенных к > промышленному маштабу" решать вопрос с "базовой стуктуре БД" это > разговор в пользу бедных. И никто не зная особенностей объектов, связей > между ними, типичных запросов, ничего не скажет. Точнее скажут много, > только вот отвечать за работоспособность всего этого не им. эх... это само собою.... просто ж интересно ить! какие запросы бывають, и так... ради тренировки помучиться с ними. -- ------------------------- There's no silver bullet! Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2006, 18:16 |
|
||
|
Что выбрать: "класс как таблица" (ROT) или "класс как сущность-атрибут-значение" (EAV)?
|
|||
|---|---|---|---|
|
#18+
в общем наверное это мой последний пост по поводу EAV - надоело уже! 1. авторМы вот лично применяем EAV потому, что единожды написанный костяк позволяет решать 90% задач - нет необходимости отвлекаться на всякие мелочи, пишетьтся только бизнес-логика. Т.е. вы классы или там сущности не проектируете? а бизнес-логику пишите как бог на душу положет? 2. авторДа и к тому же все интерфейсы автоматом получаются типовыми и одинковыми - значительно легче юзеров учить. А какое отношение имеет типовой интерфейс к EAV? 3. авторСогласен, пока архитекторы, программисты, тестировщики и DBA доступны - изменять структуру классов БД в соответствии с желаниями пользователя лучше средствами СУБД, и не надо изобретать велосипедов и наславивать лишние уровни. Мне вот всегда нравился вот этот довод. как пользователи сами меняют структуру БД... интересно мне очень в каких реальных задачах (помимо создания новых справочников) рядовой пользователь начинает менять схему БД... Ну и кроме всего - это также не достоинство EAV PS любители EAV всегда во-первых путают необходимость наличия метамодели своей системы и, так как EAV содержит некоторую базовую версию такой модели считают это ее исключительной особенностью... во-вторых, почему-то считают что изменять схему РБД могут только DDL-операторы, а вот изменять EAV можно с помощью gui! Как будто нельзя написать такой же gui, который будет выполнять эти самые DDL операторы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2006, 20:58 |
|
||
|
Что выбрать: "класс как таблица" (ROT) или "класс как сущность-атрибут-значение" (EAV)?
|
|||
|---|---|---|---|
|
#18+
funikovyuri wrote: > в общем наверное это мой последний пост по поводу EAV - надоело уже! > > 1. > автор > Мы вот лично применяем EAV потому, что единожды написанный костяк > позволяет решать 90% задач - нет необходимости отвлекаться на всякие > мелочи, пишетьтся только бизнес-логика. > > Т.е. вы классы или там сущности не проектируете? а бизнес-логику пишите > как бог на душу положет? Про бизнес-логику - ни понил, откуда такое следует? > > 2. > автор > Да и к тому же все интерфейсы > автоматом получаются типовыми и одинковыми - значительно легче юзеров учить. > > А какое отношение имеет типовой интерфейс к EAV? Чиста психологическая заморочка. т.к. всё хранится (грубо) в одно таблице - всё и показывается одним интерфейсом. Хотя вот как-раз с единообразием бывают заморочки - не всё удобно показывать в стандартном виде... ну дык я и писал - 90%. > > 3. > автор > Согласен, пока архитекторы, программисты, тестировщики и DBA доступны - > изменять структуру классов БД в соответствии с желаниями пользователя > лучше средствами СУБД, и не надо изобретать велосипедов и наславивать > лишние уровни. > > > Мне вот всегда нравился вот этот довод. как пользователи сами меняют > структуру БД... интересно мне очень в каких реальных задачах (помимо > создания новых справочников) рядовой пользователь начинает менять схему > БД... > Ну и кроме всего - это также не достоинство EAV У меня юзера не меняют. У меня "бразер ин армс" меняют, не дёргая меня. А я леплю документы и отчеты не дергая их. > > PS любители EAV всегда во-первых путают необходимость наличия метамодели > своей системы и, так как EAV содержит некоторую базовую версию такой > модели считают это ее исключительной особенностью... во-вторых, > почему-то считают что изменять схему РБД могут только DDL-операторы, а > вот изменять EAV можно с помощью gui! Как будто нельзя написать такой же > gui, который будет выполнять эти самые DDL операторы. ну, поскоку у нас справочники и проч. меняют только разработчики, то не сильно и важно - DML или DDL. А вот как только юзера - то от DDL надо сразу же отказываться... или давать юзерам права нужные, чего не хочется.... кроме того.... у нас при начальном построении структуры справочников их было создано порядка 150 штук, БЕЗ добавления новых таблиц, процедур, вьюшек (тут я не до конца искренен). Был обеспечен базовый функционал (поиск, добавление, удаление, изменение, проверки уникальностей и проч). всё панимашь DML... и если какой-то умник, кстати, грохнет некий параметр в справочнике, то батчи у меня не прервуться по ошибке 207 инвалид колумн, и будет юзеру счастье... а с DDL можно и до 208 ошибки доехать и схлопотать незакомиченную тразакцию. зы вот мы сейчас РОТ против ЕАВ закончим и вернемся к "естественный против суррогатного" - давно что-то не обсуждали. -- ------------------------- There's no silver bullet! Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2006, 11:51 |
|
||
|
Что выбрать: "класс как таблица" (ROT) или "класс как сущность-атрибут-значение" (EAV)?
|
|||
|---|---|---|---|
|
#18+
Маппинг параметров на колонки может быть динамическим и при ROT. Тогда DDL также не нужен. Варианты по вертикали, горизонтали и диагонали обсуждались . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2006, 12:26 |
|
||
|
Что выбрать: "класс как таблица" (ROT) или "класс как сущность-атрибут-значение" (EAV)?
|
|||
|---|---|---|---|
|
#18+
В любой системе есть переменная и постоянная часть. Пример: учет: переменная часть: объекты, документы, справочники, постоянная: проводки, остатки, счета. Переменная часть по EAV, постоянная - традиционно. Добавить /изменить документ, объект - влет без остановки работы и без строчки кода. При традиционном подходе сделать это ОЧЕНЬ не просто. А вот постоянная часть заточена под скорость работы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2006, 14:35 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33628032&tid=1545349]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
158ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 446ms |

| 0 / 0 |
