Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
Прочитал кучу постов по проектированию номенклатурных справочников, но так и не нашел для себя четкого ответа на данный вопрос. Задача спроетировать справочник товаров в котором: - можно заводить любое количество разнородных товаров без перепроектирования структуры справочника - при создании товара предоставлять возможность создавать неограниченное количество аттрибутов с возможностью указания обязательности заполнения, значения по умолчанию, списка выбора значений поля - нормально работающего поиска по аттрибутам Тут в форуме предлагают 2 варианта - таблица аттрибутов в которой перечислены все возможные типы данных и указанием какой тип данных используется (большая избыточность) - использование типа variant - говорят медленный поиск Поелитесь пожалуста опытом! Заранее благодарен всем за ответы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2004, 14:52 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2004, 15:45 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2004, 15:47 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
>>Здесь: http://www.interface.ru/fset.asp?Url=/misc/hran_02.htm С объектами не хочется связываться т.к. нужно только на них потратить год разработки - меня интересуют реляционные решения :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2004, 15:53 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
Можно сделать так: Создай табличку с атрибутами AttributeID TypeID и табличку со значениями GoodsID AttributeID Value varchar(250) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2004, 16:51 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.06.2004, 16:59 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
> можно заводить любое количество разнородных товаров без перепроектирования структуры справочника Эта задача в общем случае не имеет решения. Hint: придется-таки разбить товары на несколько групп. ;) > http://www.interface.ru/fset.asp?Url=/misc/hran_02.htm Очень хороший пример того, как не надо делать. Где Анатолий такую траву берет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 04:29 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
С объектами не хочется связываться т.к. нужно только на них потратить год разработки Это вам кто-то сказал или сами щас придумали???? НЕ надо бояться! Мы разрулили эту ситуацию за два месяца. При чем не самого активного программирования, а так когда руки дойдут. И все работает отлично. В вашей ситуации объектное решение максимально вас устроит. Хотя можно конечно и отдельной табличкой этих атрибутов. Но все равно в итоге будут те же объекты только вид сбоку. Очень хороший пример того, как не надо делать. А есть хороший? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 06:33 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
Guest_ Почему ж не имеет ? Это называется работа с неструктурированными данными. В Открытых Системах помнится статья была на эту тему. А что медленно - так сделать на Альфе, поднять базу в оперативку и вперед :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 09:42 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
to Klick >>Это вам кто-то сказал или сами щас придумали???? НЕ надо бояться! Мы >>разрулили эту ситуацию за два месяца. При чем не самого активного >>программирования, а так когда руки дойдут. И все работает отлично. >>В вашей ситуации объектное решение максимально вас устроит. >>Хотя можно конечно и отдельной табличкой этих атрибутов. Но все равно в >>итоге будут те же объекты только вид сбоку А можно попросит вас рассказать чуть по-подробнее: какой сервер баз данных, какую модель вы взяли за основу (Тенцера?) с какими сложностями столкнулись и что получили в итоге. Всегда интересен успешеный опыт. Надо срочно реализовывать справочник - а я на распутье ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 11:18 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
/topic/78322&hl= Вариант номер три я реализовал (только для таблиц данных используется всего три: для текста, для числовых значений, для дат). В конечном итоге структура полностью релиационная. Для удобства доступа к информации из справочников создал процедуру, которая создает представления, которые и являются необходимыми справочниками. Две таблицы пришлось хранить как таблицы, а не в этой структуре (ну извините, в них более сорока полей и боле двух тысяч записей). Если в ваших справочниках полей больше пятнадцати - то такая система хранения не подходит. Таблицы хранятся в кластере. Еще я не совсем понял чем система Green2 отличается от той, которуя я предложил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 11:50 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
СУБД Firebird 1.5 Идеи Тенцера были основой в общем то... ну а дальше арзвивали сами... таблица объектов, связей, типов объектов, атрибутов, типов атрибутов, есть историчесие атрибуты, причем все атрибуты всех типов хранятся в одной табличке... Запросы конечно получились опупительские, но мы написали процедуры которые возвращают эти самые запросы (прямо текст их) ну а потом уже обрабатываем их - создаем вьюшки и погнали... В процедуру передаем тип объекта и получаем текст запроса который выдергивает все объекты этого типа со всеми атрибутами. Для исторических атрибутов отдельная процедура. Тестили все это дело с примерно парой млн записей. Скорость хорошая. Т.к. практически все запросы пользуют индексы. Но только решили использовать эту модель только для справочников, а не как у Тенцера для учета и т.д. Побоялись. Все таки всяких данных учетных будет уж очень много. А так тока справочники. Но и их набирается уже туева хуча. Особенно большие кадры, номенклатура, контрагенты, и всякие общероссийские классификаторы типа ОКУД, ОКСМ, ОКЕИ и т.д. Трудности - решались в общем то в рабочем порядке. Например: понадобилось ввести поле отвечающее за порядок объектов. Т.к. юзерам порой надо выводит какие то данные именно в том порядке в каком они привыкли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 12:23 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
> Почему ж не имеет? Это называется работа с неструктурированными данными. Неструктурированные - это одна проблема. Вторая - неоднородные. Поэтому и нет решения. В принципе. Оговорочка: средствами реляционной структуры данных. Эта задача решается xml-подобными структурами, частный случай чего Тенцер и описал. > В Открытых Системах помнится статья была на эту тему. С каких пор они стали источником информации? > А что медленно - так сделать на Альфе, поднять базу в оперативку и вперед :) Только стоимость кластера будет _на порядки_ больше стоимости разработки. ОЗУ емкостью терабайт - для Вас не проблема? > Тестили все это дело с примерно парой млн записей. Несерьезные объемы. > Скорость хорошая. При одновременной работе какого количества пользователей? Какой сервер? Какая ос? Какая dbms? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 13:41 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
Guest_ Ну по поводу Альфы я, конечно же пошутил. Еще в стародавние времена ( в 80-е ) в САПРовских системах для таких задач делались специализированные СУБД, конечно же нереляционные. И никакого XML не было. Но все-же при помощи РСУБД нереляционные модели эмулировать можно. Вопрос, какой ценой. sp В свое время подобную задачу делал на Oracle Практически все как у Klick + отдельная таблица для графических данных и документов + шаблоны для ввода и поиска данных. При их же помощи делалась и сортировка. Плюс еще пара фич. Такую задачу лучше всего делать на Oracle, т.к. есть замечательный оператор INTERSECT. Он помогает упростить генерацию "опупительских" запросов и некоторые запросы выполняются в разы быстрее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 14:50 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
>>Эта задача решается xml-подобными структурами, Натолкните на мысль. Где можно почитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 14:58 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
Анатолий такую траву берет в окрестностях Новосибирска. Там ее дофига. Но система , на этом сделаная, работает по его утвеждениям хорошо. Система не маленькая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 15:39 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
> Анатолий такую траву берет в окрестностях Новосибирска. Спасибо, я в курсе. ;) > Но система , на этом сделаная, работает по его утвеждениям хорошо. Система не > маленькая. Опять же в курсе, но все равно спасибо. ;) Вполне возможно, что работает и, возможно, всех устраивает. На самом деле, это мина замедленного действия. На минуту представьте, что потребовалось добавить этой системе версионность (что, кстати, актуально для фармдистрибьюторов) параллельно с разграничением доступа или еще какой-нибудь серьезной функциональности. Представили? Последствия оценили? Про хранилище данных надо говорить? ;) Отмечу, что у этой лавки нет возможности поменять dba (или ведущего программера, или кто всем этим хозяйством там заведует?), - получится _очень_ дорого. Так что вопрос о цене владения предметами художественных промыслов остается открытым. ;) Я ни в коей мере не хочу усомниться в профессиональных навыках г-на Тенцера; вызывает сомнения необходимость тиражирования таких решений. > Натолкните на мысль. Где можно почитать? Начните с "Mapping DTDs to Databases" By Ronald Bourret. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 17:31 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
А я вот эдак запетлял... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2004, 19:33 |
|
||
|
проектирование структур с меняющимися аттрибутами
|
|||
|---|---|---|---|
|
#18+
А может каждый товар хранить в виде XML поля ? но тогда в стает вопрос о том как контролировать создание товаров (чтоб товары одного типа создавались с одинаковыми аттрибутами и не создавать дубликаты) Кто-нибудь пробовал реализовывать такие решения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.06.2004, 10:38 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=32577754&tid=1546392]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
61ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 372ms |

| 0 / 0 |
