|
|
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-gene 2locky Строка уникальна артикулом. накладная уникальна номером. Отдельных специальных идентификаторов нет. C заголовком накладной понятно - так как раз кортежная структура. Вопросов нет - значнение номер накладной одноханчно соотносится со всеми остальными скалярами, составляющий этот кортеж. вот интересно... с "закоголовками - понятно, а со строками - непонятно"..... Мне вот непонятно, как это понятно с первым и непонятно со вторым - ведь использована одна и та же структура данных.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 00:19 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
И вообще, повторюсь - было бы неплохо чего нить почитать "по теме". Потому как вопросы, пардон, на уровне "а как это она без лошадей ездит?" EAV разжевывалась уже не раз, в т.ч. в "сравнении" (если правильно помню), рассматривались различные варианты реализации, преимущества/недостатки и т.п. Имеет смысл поискать/почитать, а не перетирать всё снова в стотысячный раз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 00:21 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
lockyИ вообще, повторюсь - было бы неплохо чего нить почитать "по теме". Конечно неплохо. Но мне и с умными людьми приятно пообщаться. Надеюсь, взаимно :) 2ViPRos Я правильно понял, что каждую строку накладной мы рассматриваем как отдельный объект? Соответственно, объект "заголовок накладной" связан с "объектами - строками" множеством "ссылок" - то есть идентификаторов объектов строк? Да, так отношение представить можно. Но, вообще, нехило мы извернулись, что бы представит отношение(!) в реляционной БД (!!). Это как взять блокнот и вместо того, что бы написать записку (связный текст) на одном листочке, писать этот же текст по одной букве на листочек. Хотя, возможно, где то это оправдано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 02:11 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-genelockyИ вообще, повторюсь - было бы неплохо чего нить почитать "по теме". Конечно неплохо. Но мне и с умными людьми приятно пообщаться. Надеюсь, взаимно :) Чтобы получать правильные ответы нужно задавать правильные вопросы. Не думаю что такой формат общения будет весьма продуктивным. U-gene 2ViPRos Я правильно понял, что каждую строку накладной мы рассматриваем как отдельный объект? Соответственно, объект "заголовок накладной" связан с "объектами - строками" множеством "ссылок" - то есть идентификаторов объектов строк? Да, так отношение представить можно. Но, вообще, нехило мы извернулись, что бы представит отношение(!) в реляционной БД (!!). Это как взять блокнот и вместо того, что бы написать записку (связный текст) на одном листочке, писать этот же текст по одной букве на листочек. Хотя, возможно, где то это оправдано. Я повторюсь: преимущества и недостатки EAV были уже неоднократно(!) разобраны, разжеваны и т.п. Почитайте по теме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 02:19 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-gene 2ViPRos Я правильно понял, что каждую строку накладной мы рассматриваем как отдельный объект? Соответственно, объект "заголовок накладной" связан с "объектами - строками" множеством "ссылок" - то есть идентификаторов объектов строк? Да, так отношение представить можно. Но, вообще, нехило мы извернулись, что бы представит отношение(!) в реляционной БД (!!). Это как взять блокнот и вместо того, что бы написать записку (связный текст) на одном листочке, писать этот же текст по одной букве на листочек. Хотя, возможно, где то это оправдано. "Связный текст" состоит из параграфов, предложений, а они из слов. Как они хранятся- пофиг, главно, что бы в любой момент можно было бы восстановить их Порядок. Для этого служит метаописание. "Это" оправдано везде, где нет возможности Один раз и окончательно определить модель предметной области и пользовательское (дальнейшее) расширение модели должно однозначно трактоваться интерпретатором модели. Я тут где то описывал систему непрерывной классификации(типизации) объектов, когда типы рождаются/умирают динамически в течении жизненного цикла системы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 13:25 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
ViPRos"Это" оправдано везде, где нет возможности Один раз и окончательно определить модель предметной области и пользовательское (дальнейшее) расширение модели должно однозначно трактоваться интерпретатором модели. +100 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 16:06 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-geneкакой идентификатор строки? у меня нет такого атрибута. Он всегда неявно присутствует в таблице, а EAV его скрытно генерирует при insert. Точно так же как генерируются id объектов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 16:15 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
On 11/09/2011 12:14 AM, U-gene wrote: > Строка уникальна артикулом. > накладная уникальна номером. > Отдельных специальных идентификаторов нет. В EAV всё имеет специальные сурогатные идентификаторы. Одно из основных свойств объекта в ООП -- идентифицируемость каждого объекта. Идентификатор обязателен. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 18:01 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
MasterZivВ EAV всё имеет специальные сурогатные идентификаторы. Одно из основных свойств объекта в ООП -- идентифицируемость каждого объекта. Идентификатор обязателен. У меня есть такое скромное желание - самому управлять тем, что считать объектом, а что не считать. Например, я считаю, что есть такой объект "накладная". Соответственно этой накладной, как любому другому объекту, должен быть присвоен OID. В EAV у строки идентификатор появляется, потому что по-другому не получится. Это вынужденная мера и я не думаю, что ее надо связывать с ООП. Это скорее "ассоциативный адрес" который необходим при такой организации хранения данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 18:48 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-geneMasterZivВ EAV всё имеет специальные сурогатные идентификаторы. Одно из основных свойств объекта в ООП -- идентифицируемость каждого объекта. Идентификатор обязателен. У меня есть такое скромное желание - самому управлять тем, что считать объектом, а что не считать. Например, я считаю, что есть такой объект "накладная". Соответственно этой накладной, как любому другому объекту, должен быть присвоен OID. В EAV у строки идентификатор появляется, потому что по-другому не получится. Это вынужденная мера и я не думаю, что ее надо связывать с ООП. Это скорее "ассоциативный адрес" который необходим при такой организации хранения данных. Т.е. "строка накладной" - не является объектом? Хотя сама накладная - является. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 18:50 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
btw, PK необходим вроде как всегда :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 18:50 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
lockyТ.е. "строка накладной" - не является объектом? Хотя сама накладная - является. Я так хочу. Что бы не плодить сущностей, сверх надобности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 18:54 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
locky, да он не вникает в подробности да, объект может содержат какие то коллекции, а элементы этих коллекций тоже и т.д. теперь построй запрос от обратного, тип значение само вложенной коллекции = чему то и пойдет перебор или придется предварительно выпрямить всю эту фигню и построить индексы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 18:59 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-gene, да ты уже наплодил, вводив Именованную коллекцию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:00 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-genelockyТ.е. "строка накладной" - не является объектом? Хотя сама накладная - является. Я так хочу. Что бы не плодить сущностей, сверх надобности. Хм... а в обычной 3НФ у вас строки накладной, простите, тоже не выражаются таблицей? И если таки так и есть - то чем они выражаются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:01 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
если хошь что бы эта коллекция была не видна снаружи, о сделай ее без точки доступа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:02 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
lockyU-geneпропущено... Я так хочу. Что бы не плодить сущностей, сверх надобности. Хм... а в обычной 3НФ у вас строки накладной, простите, тоже не выражаются таблицей? И если таки так и есть - то чем они выражаются? А как связаны 3НФ и EAV? Я как раз и говорю, вмето того, что бы представить строки накладной в виде таблицы (как в 3НФ), мы (в EAV) городим огород. В 3НФ мое желание (накладная есть целый объект, у которого есть свой OID) легко реализуется. В таблицы заголовков OID есть ключ. В таблице строк OID есть часть ключа. Стоп-стоп. не налдо драк :) На самом деле это реакция на замечание MasterZiv В EAV всё имеет специальные сурогатные идентификаторы. Одно из основных свойств объекта в ООП -- идентифицируемость каждого объекта Я просто хочу сказать, что идентификаторы EAV не стоит сравнивать с OID. Разве это не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:17 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-gene Я просто хочу сказать, что идентификаторы EAV не стоит сравнивать с OID. Разве это не так? стоит. они и есть ОИД просто некоторые ОИД могут быть не доступными снаружи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:25 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-geneА как связаны 3НФ и EAV? Я как раз и говорю, вмето того, что бы представить строки накладной в виде таблицы (как в 3НФ), мы (в EAV) городим огород. мы и в 3нф городим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:28 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
ViPRosU-gene Я просто хочу сказать, что идентификаторы EAV не стоит сравнивать с OID. Разве это не так? стоит. они и есть ОИД просто некоторые ОИД могут быть не доступными снаружи Значит у Вас "объект" - это термин хранения. а не термин связанный с предметной областью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:35 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
lockyU-geneА как связаны 3НФ и EAV? Я как раз и говорю, вмето того, что бы представить строки накладной в виде таблицы (как в 3НФ), мы (в EAV) городим огород. мы и в 3нф городим. Правильно. Но вы в 3НФ городите огород не о предметной области, а о системе хранения, в которой представлены данные о предметной области. EAV это когда в реляционном хранилище изображена линейная память, предназначенной для хранения скаляров, . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:42 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-genelockyпропущено... мы и в 3нф городим. Правильно. Но вы в 3НФ городите огород не о предметной области, а о системе хранения, в которой представлены данные о предметной области. EAV это когда в реляционном хранилище изображена линейная память, предназначенной для хранения скаляров, . В скуле в "реляционном хранилище" всегда "отображена линейная память". Да и в любой другой СУБД - тоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 19:53 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
U-gene, предметная область описана в метамодели а ЕАВ Может быть способом хранения (хотя бы для расширений) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 20:11 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
On 11/09/2011 07:48 PM, U-gene wrote: > У меня есть такое скромное желание - самому управлять тем, что считать объектом, > а что не считать. Например, я считаю, что есть такой объект "накладная". > Соответственно этой накладной, как любому другому объекту, должен быть присвоен OID. Желание очень хорошее. Только что ж ты тогда от нас хочешь -то ? > В EAV у строки идентификатор появляется, потому что по-другому не получится. Это > вынужденная мера и я не думаю, что ее надо связывать с ООП. Это скорее > "ассоциативный адрес" который _необходим_ при такой организации хранения данных. Да, это именно вынужденная мера и по-другому не получится. Да, ассоциативный адрес (адрес или идентификатор объекта), да, необходим. Только к чему это всё было сказано ? А с ООП её нельзя не связывать, именно потому, что тут моделируется ООП, применяется его подходы. А в ООП идентифицируемость объекта -- одно из важнейших свойств. Собственно, и в рел. теории идентифицируемость кортежа -- одно из важнейших свойств. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 21:51 |
|
||
|
EAV - это выворачивание реляционной модели наизнанку.
|
|||
|---|---|---|---|
|
#18+
On 11/09/2011 07:50 PM, locky wrote: > Т.е. "строка накладной" - не является объектом? > Хотя сама накладная - является. Является, или нет, в EAV всё будет объектом, что имеет атрибуты. Иначе придётся делать не чисто EAV, а гибрид. В этом тоже ничего плохого нет. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2011, 21:52 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=37518948&tid=1541471]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
140ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 445ms |

| 0 / 0 |
