powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / наиболее подходящая структура БД для описания характеристик объетов
25 сообщений из 54, страница 1 из 3
наиболее подходящая структура БД для описания характеристик объетов
    #37842748
PG81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть объекты, например вооружение, каждый объект имеет свой класс со своим свойтсвами.
Делаю БД по ведению значений храрактеристик этих объектов

Поделитесь опытом, как лучше всего реализовать структуру БД для этого случая.

Я думаю, попытаться сделать аналогично описанию классов в языках программирования.
Т.е. есть класс у него базовые свойсва, а в наследуемых классах свойства присутствуют класса родителя плюс свои

Какие есть еще варианты, и какие могут быть сложности с реализацией такого варианта?
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37842763
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PG81Поделитесь опытом, как лучше всего реализовать структуру БД для этого случая.

По моему опыту, для характеристик лучше всего использовать EAV.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37842794
PG81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

а по русски как такая схема называется?
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37842799
PG81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может EAV не очень подойдет, так как классов описания будет несколько милионов?
Будет ли это все нормально работать на MS SQL Server 2005
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37842875
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PG81а по русски как такая схема называется?

"Схема имени Тенцера". У самого Тенцера она как раз работает на MS SQL и миллионах
номенклатуры.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37842928
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PG81Я думаю, попытаться сделать аналогично описанию классов в языках программирования.
в языках программирования все объекты одного класса хранятся в одном списке или массиве. В БД аналог: один класс- одна таблица. Подходит ? Если нет, то как сказано : EAV.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37843222
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам эта база для чего, чтобы была или для работы (искать, вставлять, изменять, делать отчеты...)
Если чтобы была - то вперед в EAV. (ищите здесь на форуме все по слову EAV)
Если для работы тогда метод сущность-связь (ER)
PG81Может EAV не очень подойдет, так как классов описания будет несколько милионов?Сдается мне, что вы слегка преувеличиваете. Я не могу представить себе работу с базой в миллионы связанных таблиц. С другой стороны миллионы экземпляров вполне возможны.
PG81Я думаю, попытаться сделать аналогично описанию классов в языках программирования.Плохое начало. В языках программирования во главу угла ставятся функции (код), а в БД данные.
PG81Т.е. есть класс у него базовые свойсва, а в наследуемых классах свойства присутствуют класса родителя плюс свои
На вашем месте, я бы сначала расписал все известные классы по типу ER (один класс- одна таблица) без абстрактрых и только потом вытащил повторяющиеся части в общие таблицы предки. Это не упростит, а усложнит схему, ухудшит (в лучшем случае незначительно) производительность, но облегчит понимание структуры новыми людьми и ее модификацию.
PG81Будет ли это все нормально работать на MS SQL Server 2005 А какой смысл использовать устаревшую (не 2012, не 2008R2, не 2008) версию для нового проекта? А работать будет как сделаешь, от бренда СУБД зависит мало.
PG81Какие есть еще вариантыЕсли задача не суперсекретная, то можешь выложить сюда описание поподробнее, плюс свою реализацию и мы можем накидать примерную схему, отловить грубые ошибки в реализации, подсказать возможные проблемы для негрубых ошибок и т.д.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37843609
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
несколько миллионов классов. не могу представить себе такую классификацию. можно пример?
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37843840
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕАВ однозначно. Решается в 5-6 таблиц.
Возможности настроек неограничены и не требуют перепрограммирования.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37844400
PG81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257, kmaw

чет с милионом я загнул, несколько тысяч.
благодарю за развернутый ответ.
вот еще статья на тему
http://foxserver.narod.ru/tenser.htm
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37845496
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да видел я этого вашего Тенцера, даже реализовывал. Наряду с "универсальным" справочником (одна таблица на все справочники) это "открытие" делал, наверное, каждый. У этой схемы только одно достоинство - добавление таблицы или поля делается без DDL (уменьшение количества таблиця достоинством не считаю). А вот недостатков выше крыши (поиском по форуму они ищутся). Короче нишевое решение для всяких определяемых пользователем свойств или справочников.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37845525
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PG81,

ну вот, от нескольких миллионов осталось несколько тысяч - в 1000 раз меньше. а теперь, если проанализировать детально реалии конкретного ТЗ, то наверное несколько тысяч уменьшится до около тысячи.

при этом с каждым типом наверняка будет связано множество специфических индивидуальных или специфических родовых ограничений, и это может быть не просто каталог, а нечто более сложное. поэтому "легкое и быстрое" добавление записей в EAV-структуру (об "автомате" и "пистолете") все равно потребует "долгой и тяжелой" реализации этих ограничений в BLL. так что смысла в использовании EAV лично я не вижу - теряются преимущества нормальной реляционной схемы и добавляется масса гемороя
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37846006
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257нишевое решение для всяких определяемых пользователем свойств

А теперь перечитываем сабж и видим там те самые определяемые пользователем свойства, они
же - характеристики.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37846048
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257 У этой схемы только одно достоинство - добавление таблицы или поля делается без DDL (уменьшение количества таблиця достоинством не считаю). А вот недостатков выше крыши (поиском по форуму они ищутся). Короче нишевое решение для всяких определяемых пользователем свойств или справочников.
Добавление таблицы без DDL - не единственное и даже не главное достоинство EAV. Главное - это базовая обработка нового типа обьектов вообще без написания какого-либо кода (не только DDL).
А то что оно не везде уместно - ну ясное дело. С любым инструментом так
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37846659
Bogdanov Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинГлавное - это базовая обработка нового типа обьектов вообще без написания какого-либо кода (не только DDL).Это вполне и без EAV достигается.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37846946
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov А теперь перечитываем сабж и видим там те самые определяемые пользователем свойства, они же - характеристики.
Еще раз перечитал топик. ТС просит помощи в создании базы объектов. Не заметил требований максимальной кастомизации на местах а ля 1С.
Во избежании разночтений, еще раз прошу ТС дать подробности.
Кот Матроскин Главное - это базовая обработка нового типа обьектов вообще без написания какого-либо кодаТо что форму, ввода, поиска, редактирования, отчеты будет делать местный кастомизатор, а не программист, не значит "без написания какого-либо кода"
Еще раз повторю: в качестве заплатки, "сопли", нужной еще вчера, ЕАВ вполне уместен. Но делать соплю в новом проекте...
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37846998
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SERG1257ТС просит помощи в создании базы объектов.
Причем с наследованием.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37847124
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257ТС просит помощи в создании базы объектов. Не заметил требований
максимальной кастомизации на местах а ля 1С.
"Кастомизация на местах" тут вовсе ни при чём. ТС просил совета у людей с опытом хранения
характеристик объектов в БД. Согласно моему опыту , EAV для этого подходит
лучше остальных способов. А что говорит тебе твой опыт?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37847381
Bogdanov Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov"Кастомизация на местах" тут вовсе ни при чём. ТС просил совета у людей с опытом хранения
характеристик объектов в БД. Согласно моему опыту , EAV для этого подходит
лучше остальных способов. А что говорит тебе твой опыт?
Не знаю насчет опыта у SERG1257, а мой опыт говорит, что EAV подходит только для хранения характеристик. Если в системе предполагается с этими харктеристиками делать хоть что-то еще кроме хранения, то есть решения лучше EAV. А если говорить исключительно о хранении, то еще меньше кода потребуется для хранения характеристик в xml, например. Только не считайте это - советом. :)
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37847455
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bogdanov Andreyесли говорить исключительно о хранении, то еще меньше кода потребуется для хранения
характеристик в xml, например

Ну, в EAV их ещё чуть-чуть искать можно с использованием индексов, что для XML несколько
тяжелее.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37847511
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А мой опыт говорит что умение коротко, ясно, недвусмысленно, понятно всем формулировать задачу есть великий и редкий талант.
Хрустальный шар подсказывает, что перед ТС стоит задача ведения базы таки объектов, сложной со множеством характеристик.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37848914
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bogdanov Andrey Это вполне и без EAV достигается.

Это достигается "без EAV", да, но накладные расходы при этом обычно еще выше, чем у EAV.

SERG1257 То что форму, ввода, поиска, редактирования, отчеты будет делать местный кастомизатор, а не программист
Какую форму? какой кастомизатор? Вы вообще о чем?
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37848996
Bogdanov Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинЭто достигается "без EAV", да, но накладные расходы при этом обычно еще выше, чем у EAV.Чьи накладные расходы и на что? Может быть хотя бы пример приведете чтобы легко решалось с EAV и тяжело без него?
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37849081
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bogdanov AndreyЧьи накладные расходы и на что? Может быть хотя бы пример приведете чтобы легко решалось с EAV и тяжело без него?Качественный ЕАВ можно сделать один раз и использовать всю жизнь.
По сабжу - самое оно.
...
Рейтинг: 0 / 0
наиболее подходящая структура БД для описания характеристик объетов
    #37849119
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bogdanov Andrey,

Накладные расходы - на сопровождение и развитие системы(включая и проблемы с проиводительностью, и с написанием дополнительных фич в дальнейшем, и т.п.)

Пример - ну вот пример, котрый привел ТС в начале дискуссии - потенциальное наличие в системе нескольких миллионов разных типов сущностей. Стандартные операции по ним - сохранение, извлечение, поиск.
...
Рейтинг: 0 / 0
25 сообщений из 54, страница 1 из 3
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / наиболее подходящая структура БД для описания характеристик объетов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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