|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
Hi all. Все статьи еще нечитал. Много материала. Выписал список. Квинтет как базовая сущность для описания предметной области https://habr.com/en/company/neoflex/blog/433058/ Запатентованная мечта программистов 80-90-х https://habr.com/en/post/358934/ Альтернативная архитектура СУБД и подход к разработке приложений https://habr.com/en/post/346816/ Запатентованная мечта программиста — часть II https://habr.com/en/post/414255/ Business Intelligence по-русски — на квинтетах https://habr.com/en/company/neoflex/blog/451218/ Что мне пока не нравится. 1) Не приводится сравнительный бенчмарк системы ДО декомпозиции на квинтеты и после. Не нашел нигде технических деталей по индексной организации. 2) Я нарисовал для себя базовую DML но как все понимают без индекса она - неэффективна а беря во внимание универсализм подхода... все петабайты нужно толкать в одну табличку его (индекс) обсуждать НУЖНО. Он является частью АРХИТЕКТУРЫ. Код: plsql 1. 2. 3. 4. 5. 6. 7.
Если я где-то ошибся в базовой DML - прошу поправить меня. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 14:13 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
mayton, Как реализуются несколько предков для одной сущности и соотношения многие ко многим? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 14:27 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
В квинтетной модели? Понятия не имею. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 14:32 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
iOracleDevmayton, Как реализуются несколько предков для одной сущности и соотношения многие ко многим? По первой ссылке в сообщении mayton 21966285 рассматривается структура для вот этих данных: Давайте её разберем. Здесь есть ссылка на справочник состояний (1 заявка — 1 состояние) и связанная таблица комментариев (1 заявка — много комментариев) Вот это структура квинтета: В метаданных есть базовые типы (строка, число, файл, текст, дата и так далее): и пользовательские типы (стрелками показано как они связаны): А вот как хранятся сами данные: Но пользователю мы их показываем в более привычном виде. Структура: и данные в виде таблиц в начале этого сообщения. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 15:10 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
помню ещё статья была много лет назад на хабре, как засунуть всю БД в одну таблицу ради фана (без патентов, открытии америки и прочих унылых трепетаний), но я чёт не нашёл её к сожалению iOracleDev, видимо до раздела учебника "многие ко многим" ТС не дошёл, надо же было скорее разобраться с патентованием и придумывать название гениального решения для патента drynnyiOracleDevКак реализуются несколько предков для одной сущности и соотношения многие ко многим? По первой ссылке в сообщении mayton 21966285 рассматривается структура для вот этих данных: это шедевр! М:М в примере-то где? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 15:34 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
drynny, вы пишете все что угодно но только не DDL. Зачем вы приводите пример конкретной задачи с заявками и комментариями? Я-же это не спрашиваю. Я - спрашивую другое. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 15:34 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
mayton1) Не приводится сравнительный бенчмарк системы ДО декомпозиции на квинтеты и после. Не нашел нигде технических деталей по индексной организации. Сравнение систем, быстродействия и планов запросов приведено в четвертой ссылке вашего сообщения: Запатентованная мечта программиста — часть II habr.com/ru/post/414255 Про индексы написано в стартовом сообщении этой темы: Для навигации в этом списке построены 3 упорядоченных указателя – индексы: ID, Entity+Attribute, Attribute+Value mayton2) Я нарисовал для себя базовую DML но как все понимают без индекса она - неэффективна а беря во внимание универсализм подхода... все петабайты нужно толкать в одну табличку его (индекс) обсуждать НУЖНО. Он является частью АРХИТЕКТУРЫ. Код: plsql 1. 2. 3. 4. 5. 6. 7.
Если я где-то ошибся в базовой DML - прошу поправить меня. В целом правильно. Для Value мы используем 127 байт, а всё, что превышает, записываем в подчиненные записи с типом 0 и заданной очередностью. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 15:36 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
drynnymayton1) Не приводится сравнительный бенчмарк системы ДО декомпозиции на квинтеты и после. Не нашел нигде технических деталей по индексной организации. Сравнение систем, быстродействия и планов запросов приведено в четвертой ссылке вашего сообщения: Запатентованная мечта программиста — часть II habr.com/ru/post/414255 Дружище! Да ты совсем не умеешь презентовать результаты своих достижений! Я расчитывал увидеть вывод. Дескыть квинтетная системы позволяет сэкономить 30% датасемгента и бла-бла... упростить дизайн и в то-же время дает просадку на 15% по сравнению с классической реляционной моделью на конкретных запросах конкретной продуктовой задачи. Этого нигде нет! Это разбросано по всей статье равномерным слоем! Это - не акцентировано. А ведь это - главное. В целом правильно. Для Value мы используем 127 байт, а всё, что превышает, записываем в подчиненные записи с типом 0 и заданной очередностью. Но зачем? БД - позволяет! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 15:46 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
mayton, а в статьях там все графики, взятые с потолка, и ничего, что можно было бы взять и проверить самому на практике. об этом уже и в комментариях писали, но ТС тупо наплевал. вот вам нарисовал в пейнте красные и зелёные линии, не хотите -- не верьте дело ваше ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 15:51 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
hVosttmayton, а в статьях там все графики, взятые с потолка, и ничего, что можно было бы взять и проверить самому на практике. об этом уже и в комментариях писали, но ТС тупо наплевал. вот вам нарисовал в пейнте красные и зелёные линии, не хотите -- не верьте дело ваше Не гоните, да не гонимы будете. Там везде есть ссылки самому пощупать, часто с админскими правами. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 15:56 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
iOracleDevmayton, Как реализуются несколько предков для одной сущности и соотношения многие ко многим? Собственно Многие-ко-многим будут выглядеть так: iduptypordval348300Гость349300Номер3501300Бронирование351348003523490035335135013553523502 Для вот такой структуры, когда много гостей бронируют много номеров: ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:00 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
drynnyНе гоните, да не гонимы будете. Там везде есть ссылки самому пощупать, часто с админскими правами. Пока ни в статьях, ни по ссылкам нет ничего, что можно было бы прогнать локально на своём железе. Что толку щупать ваш интерфейс с админскими правами? Речь про бенчмарки и возможность написать, например, рекурсивные табличные запросы, оконные функции, сложные выборки со сложными подвыборками и т.д. и т.п. Поэтому выглядит это как шоу с фокусами на средневековом рынке. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:05 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
Это больше похоже на иерархическую DBMS реализованную поверх реляционной. Наподобие Lotus и всяких там М-систем. А эти магические константы такие как 3 и 13 - зарезервированы? (Вы не обижайтесь если я спрашиваю что-то что уже упомианлось в ваших статьях. Они плохо структурированы и без глоссариев. Трудно искать ответы на простые вопросы а я- нетерпеливый.) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:14 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
drynny Прошу помочь мне с названием для этой структуры и/или подхода вообще. heap small bunch little (куча мала) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:15 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
Патчик на свой DDL. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:26 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
maytonЧто такое "attribute" ? Где в таблице этот чортов attribute? Это parent. Автор замыслил хранить примерно такое дерево: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:39 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
softwarerЭто parent. Прошу прощения, сверился, у него это называется не parent, а typ. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:43 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
mayton Код: sql 1.
Это ссылка на запись, которая является типом, видимо.. mayton Код: sql 1.
1. для атрибутов в мета-типе, у них есть порядок 2. для связи М:М как в примере выше, тож есть порядок 3. для большого значения >127 байт 4. чет ещё? Кстати, если значение будет разбито посередине 127 байт, то как искать по подстроке без конкатенации? видимо никак. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:43 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
hVostt1. для атрибутов в мета-типе, у них есть порядок 2. для связи М:М как в примере выше, тож есть порядок 3. для большого значения >127 байт 4. чет ещё? Напоминает то, как писали софт в шестидесятые годы. Правда, тогда последнему идиоту не пришло бы в голову строить одну модель данных над другой, совершенно перпендикулярной. Тогда бы эти "квинтеты" реализовали бы поверх байтиков на диске, и не исключено, получили бы вполне приличное для тех лет решение, какой-нибудь предок ADABAS-а. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 16:49 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
softwarermaytonЧто такое "attribute" ? Где в таблице этот чортов attribute? Это parent. Автор замыслил хранить примерно такое дерево: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Аха... Он через иерархию хочет описать реляцию? А всегда-ли это возможно? А если у меня будет one-to-many-to-one-to-many? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 19:48 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
mayton...Он через иерархию хочет описать реляцию? А всегда-ли это возможно? А если у меня будет one-to-many-to-one-to-many?Это вроде и есть родная структура иерархии. Или же ты не так выразился ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 19:58 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
maytonАха... Он через иерархию хочет описать реляцию? А всегда-ли это возможно? А если у меня будет one-to-many-to-one-to-many? Можно. И гвозди тоже можно микроскопом забивать. Другое дело, что лично я не нашёл ответа на вопрос, на кой нужно было всё в одну таблицу засовывать. В чём профит? Ещё вопрос вызывает патентование схемы данных. Сам по себе патент не страшен, ценности подобная схема не представляет, она даже не нулевая, она отрицательная. Но вот сам прецедент вызывает опасения. Тем более, что всё держится чисто на индексации БД. Если бы оно шло со своей БД со своими индексами -- ради бога, но нет. Если там и правда патент, голову бы оторвать тем, кто подобное допустил. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 20:48 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
softwarerНапоминает то, как писали софт в шестидесятые годы. Правда, тогда последнему идиоту не пришло бы в голову строить одну модель данных над другой, совершенно перпендикулярной. Тогда бы эти "квинтеты" реализовали бы поверх байтиков на диске, и не исключено, получили бы вполне приличное для тех лет решение, какой-нибудь предок ADABAS-а. Это называется клиника. Когда ищешь не эффективное решение, а наиболее хитровывернутым способом с переподвыподвертом решить абсолютно тривиальную задачу. Но до меня начало таки доходить в чём смысл. Дело в патенте. Да, я уже встречался с таким. Когда человек патентует наколеночное решение, элементарный алгоритм на экселе, который любое школо-ло напишет за пару дней, но оно уже в продакшене и в крупной компании. А потом тупо ходит и снимает сливки. Это не шутка, в моей практике я с этим сталкивался. И тогда всё становится на свои места. Все эти квинтеты -- не более чем пыль в глаза. Тут не нужно ума палата, что увидеть, что решение -- хреновое по всем фронтам, и это ещё мягко сказано. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 20:54 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
hVostt, Да мне тоже непонятно зачем данные и метаданные нужно хранить в общей таблице. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 21:12 |
|
Как назвать эту структуру и подход, основанные на EAV?
|
|||
---|---|---|---|
#18+
hVosttДа, я уже встречался с таким. Когда человек патентует наколеночное решение, элементарный алгоритм на экселе, который любое школо-ло напишет за пару дней, но оно уже в продакшене и в крупной компании. А потом тупо ходит и снимает сливки. Это не шутка, в моей практике я с этим сталкивался. А что он запатентовал и где? Иерархические СУБД известны давно, закостылить разрешение отношений сущностей и множественное наследование, скрестить с EAV и попытаться запихнуть в реляционную субд, все это уже давно в том или ином виде делалось, он не пионер, если покопаться в дореляционной эпохе и в ее начале, таких опубликованных в виде статей материалов найдется вагон и маленькая тележка, по идее его патент не должен был быть принят, нельзя патентовать общеизвестные вещи и вещи которые публиковались ранее. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2019, 21:44 |
|
|
start [/forum/topic.php?fid=32&msg=39858984&tid=1539762]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
others: | 232ms |
total: | 383ms |
0 / 0 |