powered by simpleCommunicator - 2.0.46     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как назвать эту структуру и подход, основанные на EAV?
25 сообщений из 454, страница 6 из 19
Как назвать эту структуру и подход, основанные на EAV?
    #39848787
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЯ говорю про поделки-конструкторы, которые тут на sql.ru обсуждаютсяПоделки тоже продаются.
И готовые решения на них.
Среди них не все финансово успешные, но тем не менее эта тема не гаснет.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848807
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo,

Да кто ж против-то?

Я с точек зрения: разработки, пользователя и бизнеса хотел бы увидеть преимущества этих решений, киллер-фичи, крутую, качественную, современную реализацию. Удобные, быстрые решения, чего ещё не делали раньше, чего ещё нет на рынке.

Хоть что-то такое, чего не делали 20 лет назад, потому что унылое велосипедостроение не представляет никакого интереса, ни для бизнеса, ни технически и вообще уже надоело и набило оскомину.

Ну невозможно без слёз смотреть на очередную наивную реализацию MS Access-а, например. Или попытку повторить 1С, на сомнительных, скучных и наивных решениях.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848808
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ключевое тут, устарелое, застарелое. Хочется так и сказать, человек открыл для себя какой-нибудь дельфи, всё -- держись 1С!
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848829
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
drynnyMegabyteпропущено...

А тип поля для Value у вас какой выбран?

Концептуально – это байты данных, трактуемые в зависимости от их типа.
В существующих приложениях и сервисах – это текстовое поле, в котором также текстом хранятся числовые значения, в т.ч. datetime.

Данные можно преобразовать к тому виду, в котором они хранятся, чтобы использовать индекс.
Затруднение вызывает только применение индекса к диапазону чисел, потому что у них различается порядок — нельзя ранжировать по первым цифрам, нужно считать всё число.



поэтому вся арифметика потянет за собой конвертации. ну и - для хранения каждого, абсолютно каждого числа отдельная запись в таблице БД.

Просто из любопытства - объемы сравнивали? Сколько на мускуле займут объекты, когда таблички уложены по простому, и сколько - когда через квинтеты?

В старые, не помню уж насколько добрые времена занимался я OEBS.
B и там, конечно все было сделано на нормальных таблицах. А для пользовательской гибкости, таблицы объектов дополнялись десятком - другим текстовых полей и полем - тэгом, говорившим о том, как это надо трактовать. это называлось описательным гибким полем - descriptive flex field.

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

Если юзеры которым внедрено довольны - все хорошо...
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848884
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladimir Baskakov,

Самое смешное, что в СУБД сто лет назад придумали колонки с типом, ограничениями, ссылочной целостностью, с оптимизацией хранения, с дескрипшенами и прочим.

Как раз для того, чтобы потом поверх лепили костыли в виде EAV и кривых "квинтетов", чтобы решать проблему с типами полей
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848885
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttСамое смешное, что в СУБД сто лет назад придумали колонки с типом, ограничениями, ссылочной целостностью, с оптимизацией хранения, с дескрипшенами и прочим.
У СУБД есть фатальный недостаток .
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848930
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttVladimir Baskakov,

Самое смешное, что в СУБД сто лет назад придумали колонки с типом, ограничениями, ссылочной целостностью, с оптимизацией хранения, с дескрипшенами и прочим.

Как раз для того, чтобы потом поверх лепили костыли в виде EAV и кривых "квинтетов", чтобы решать проблему с типами полей Пустое замечание. Ниачомъ.

Реши нам простой кейс: товарам (их миллион и они разнородные) нужно добавлять параметры.
Как в интернет-магазине. И фильтровать по этим параметрам.

В двух словах, но по сути. По строчке на вариант.

Вариант 1: все свалить в XML/JSON.
Вариант 2: классический EAV

Итак, мы внимательно слушаем про другие варианты.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848942
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoВариант 1: все свалить в XML/JSON.
Вариант 2: классический EAV

Вариант 3: широкая таблица с отдельным столбцом на каждый параметр.
Многие СУБД поддерживают так называемые разреженные столбцы (sparse column), так что место не будет тратиться впустую.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848993
drynny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
softwarerhVosttСамое смешное, что в СУБД сто лет назад придумали колонки с типом, ограничениями, ссылочной целостностью, с оптимизацией хранения, с дескрипшенами и прочим.
У СУБД есть фатальный недостаток .

СУБД придумали во времена дефицита ресурсов, а далее они больше полувека развивались экстенсивным путем. Таким же путем с брутальной упорностью человечество пыталась сделать однотабличные и прочие конструкторы, сохранив для потомков ярчайшие примеры былинных неудач, как вот этот: https://www.simple-talk.com/opinion/opinion-pieces/bad-carma/ .

Описанный в теме подход возвращает нас во времена незамутненного докерами и кубернетесами разума и даже еще раньше, когда зараза ООП не разъела мозг энтузиастов, когда можно было начать с чистого листа и применить разумную избыточность хранения и вычисления там, где это действительно выгодно.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39848998
drynny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vladimir Baskakovпоэтому вся арифметика потянет за собой конвертации. ну и - для хранения каждого, абсолютно каждого числа отдельная запись в таблице БД.

Просто из любопытства - объемы сравнивали? Сколько на мускуле займут объекты, когда таблички уложены по простому, и сколько - когда через квинтеты?

В старые, не помню уж насколько добрые времена занимался я OEBS.
B и там, конечно все было сделано на нормальных таблицах. А для пользовательской гибкости, таблицы объектов дополнялись десятком - другим текстовых полей и полем - тэгом, говорившим о том, как это надо трактовать. это называлось описательным гибким полем - descriptive flex field.

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

Если юзеры которым внедрено довольны - все хорошо...

Сравнивал объемы. Не поленюсь ещё раз дать ссылку: habr.com/ru/company/neoflex/blog/451218/#volumes

Да тут все читатели и писатели в ветке вспоминают свой опыт с улыбкой скрывающего боль Гарольда, у всех что-то было и кончилось, скажем так, неидеально.

Про карму почитайте, обязательно, я выше дал ссылку. Есть бесконечное количество способов сделать что-то, и не всегда удается прийти к успеху.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39849072
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вариант 3: широкая таблица с отдельным столбцом на каждый параметр.Очень плохой вариант. Типов параметров может быть многие тысячи. Даже не все СУБД умеют создавать такие таблицы. Тем более такой вариант не позволит хранить более одного значения параметра или зависимость параметра от времени. Создание параметров на лету тоже может вызвать большие проблемы.
Не говоря уже о репликации данных.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39853244
drynny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mr.FontainedrynnyИтак, пока в финале 2 названия:
QDM – Quintet Data Model – уникально идентифицирует подход
IdeaV – содержит ID, EAV, V (пять – квинтет) и в целом выглядит модно

Ну в таком случае, естественно должна победить лёгкая и красивая "идея ви", а не аморфный "кьюди эм"

По-русски QDM будет «квинтетная модель данных», да, не очень звучит.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854033
ldfanate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторпростой кейс: товарам (их миллион и они разнородные) нужно добавлять параметры

во времена СССР очень любили всё подряд классифицировать (целые НИИ, ЦНИИ при отраслевых министерствах и проч. над этим штаны протирали :).
Все эти миллионы товаров наверное могут быть классифицированы по какому либо Общероссийскому классификатору? Т.е. количество категорий товаров - величина конечная. А значит можно спроектировать какоето ограниченное количество реляционных таблиц, которые бы какойто обобщённый набор характеристик (атрибутов) товара хранили бы в конечном наборе таблиц БД.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854038
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoПустое замечание. Ниачомъ.

Сурьёзно?


L_argoРеши нам простой кейс: товарам (их миллион и они разнородные) нужно добавлять параметры.
Как в интернет-магазине. И фильтровать по этим параметрам.

В двух словах, но по сути. По строчке на вариант.

Вариант 1: все свалить в XML/JSON.
Вариант 2: классический EAV

Итак, мы внимательно слушаем про другие варианты.

Я уже говорил.

CQRS + Event Sourcing + нормальные проекции в SQL с нормальными колонками, типами, ограничениями и полным набором всей целостности, полный фарш в ваши руки. Как нормализованные, так и не нормализованные. Для конкретных больных извращенцев можно даже делать EAV проекции

Никакого убогого УГ в виде EAV и всех его не менее убогих вариаций, который является ни чем иным, как результат ограниченного, импотентного мышления.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854414
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttCQRS + Event Sourcing + нормальные проекции в SQL с нормальными колонками, типами, ограничениями и полным набором всей целостности, полный фарш в ваши руки.


и какими инструментами сие реализуется?
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854423
stenford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёёи какими инструментами сие реализуется?
видимо CQRS + Event Sourcing Когда хочется ввернуть умное слово прочитанное вчера в интернете, то контекст значения не имеет. На своих фрилансерских проектах он видимо так и развлекается - когда в руках молоток, то вокруг одни гвозди
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854669
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёёи какими инструментами сие реализуется?

мы на C# писали, знакомые коллеги на Java, другие знакомые коллеги на Go

stenfordвидимо CQRS + Event Sourcing
Когда хочется ввернуть умное слово прочитанное вчера в интернете, то контекст значения не имеет. На своих фрилансерских проектах он видимо так и развлекается - когда в руках молоток, то вокруг одни гвозди

когда нечего по существу сказать, но очень сильно хочется, стенфорд по своему обыкновению зачем-то выставляет себя дурачком на форуме.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854693
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttёёёёёи какими инструментами сие реализуется?

мы на C# писали, знакомые коллеги на Java, другие знакомые коллеги на Go

...
С вами все ясно.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854756
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ldfanateВсе эти миллионы товаров наверное могут быть классифицированы по какому либо Общероссийскому классификатору? Т.е. количество категорий товаров - величина конечная. А значит можно спроектировать какоето ограниченное количество реляционных таблиц, .

Ни один классификатор не покроет всех задач, потому что с точки зрения методологии в учете могут быть разные ракурсы и срезы, и нет единственно верного. поэтому какую то гибкость в параметризации оставлять необходимо. Но, делать на этой гибкости все сверху донизу, вряд ли целесообразно. По моему. Это одно из возможных по вопросу мнений
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854776
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёёС вами все ясно.

вот это вряд ли
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39854951
ldfanate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор потому что с точки зрения методологии в учете могут быть разные ракурсы и срезы, и нет единственно верного. поэтому какую то гибкость в параметризации оставлять необходимо.
Ну по видам характеристик (характеристики веса товара, характеристики материала изготовления товара, характеристики производителя товара, характеристики товарной упаковки и проч.) можно ведь покрыть все даже достаточно дикие классификации.

Это в каком то смысле будет чтото переходное между идеологией EAV и противоположной ей "пихаем все атрибуты поколоночно в одну гигантскую разреженную таблицу". И скорее всего порождать достаточно дикие планы поисковых запросов. Но всёравно почемуто думается что задача вполне решается классическим реляционным подходом, а не наслоением EAV на глобус.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39855440
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но всёравно почемуто думается что задача вполне решается классическим реляционным подходом, а не наслоением EAV на глобусА вы не думайте, а реализуйте. Потом нам расскажете об успехах, если таковые будут. Вместе и посмеёмся.
Это будет весело. И не сомневайтесь.
Особенно интересно будет с различными интеграциями и синхронизациями.
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39855499
drynny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ldfanate... наслоением EAV на глобус.

Вот вам не дает покоя этот глобус... Хотя мне тоже нравится тот анекдот.

Квинтетная модель сама по себе весьма проста, её можно постичь за 20 минут. Но вам ничего натягивать не нужно, потому что есть конструктор , он всё сделает за вас. Ваша задача: продумать и описать структуру в визуальном конструкторе, а далее соблюдать 3 простых правила при проектировании запросов.

Всё, о чем вы тут так страшно рассуждаете, будучи далеко не в материале, уже давно сделано, протестировано и работает.

Вот, кстати, свежак: habr.com/ru/post/465161
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39855506
drynny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
L_argo Но всёравно почемуто думается что задача вполне решается классическим реляционным подходом, а не наслоением EAV на глобусА вы не думайте, а реализуйте. Потом нам расскажете об успехах, если таковые будут. Вместе и посмеёмся.
Это будет весело. И не сомневайтесь.
Особенно интересно будет с различными интеграциями и синхронизациями.

Абсолютно все оппоненты уже пробовали, причем неоднократно. Многие при этом облажались самым жалким образом, поэтому неприемлют возможность преуспеть на поприще EAV: «у меня не получилось» = «это невозможно».
...
Рейтинг: 0 / 0
Как назвать эту структуру и подход, основанные на EAV?
    #39855578
ldfanate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo Но всёравно почемуто думается что задача вполне решается классическим реляционным подходом, а не наслоением EAV на глобусА вы не думайте, а реализуйте. Потом нам расскажете об успехах, если таковые будут. Вместе и посмеёмся. Это будет весело. И не сомневайтесь.
Особенно интересно будет с различными интеграциями и синхронизациями.

Ну наблюдал много лет данное решение в ПАО "Газпром" - там номенклатура единого корпоративного справочника МТР куда как ширше, чем у вебмагазинов. И интеграций в части его ведения и использования там немало наворочено, всё прекрасно работает на реляционках.
Ещё лучше (слышал но не видел лично) удался справочник у МТРщиков Росатома, у них тоже номенклатура очень - там даже классификации и атрибуты МТР соотносятся с некой "обобщённой номенклатурой", которую на порталах госзакупок необходимо заявлять, в целях соблюдения требований последних тендерных ФЗ.
...
Рейтинг: 0 / 0
25 сообщений из 454, страница 6 из 19
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как назвать эту структуру и подход, основанные на EAV?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]