powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Стоит ли хранить значения атрибутов отдельными столбцами ?
25 сообщений из 88, страница 3 из 4
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874777
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovL_argoТому, что "Документы" это разные таблицы. Там может быть ссылка на любую сущность в системе.

Прэлеестно. Сначала криво проектируем базу, разгоняя одну сущность "Документ" по разным
таблицам, а потом лечим неотвратимо вытекающий из этого геморрой ампутацией.
Не понял толстого сарказма.
Коллега, у Вас все возможные документы в одной таблице ???????

И товарные и кассовые и кадровые и еще чорте_какие ?

Только не надо тут писать, что принципиально разного типа документ тут быть "не должен".

Например ссылка на документ-основание...
Иногда это может быть что угодно: складская отгрузка, счет, возврат, жалоба, акт порчи и т.д.. Т.е. практически любой документ системы.

В том же 1С таких разнородных ссылок - сотни. Подобное есть и в других системах.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874785
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А мы сделали полную СЦ для всех атрибутов всех объектов системы. Атрибуты добавляются в рантайме в мета-модели...

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

Можно сделать ссылку на документ базового мета-типа.
БД легко может обеспечить СЦ по методам TPH или TPT.

В общем, на роль экстра-сложной/невыполнимой задача никак не тянет, сорян :)
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874807
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно сделать ссылку на документ базового мета-типа.
БД легко может обеспечить СЦ по методам TPH или TPT.Т.е. еще одну ненужную таблицу ? Пардон, а зачем ?????
А как контролировать связь между записями в этой таблице и ключами в разных таблицах ? Вдруг в ней останутся записи, ссылки которых будут пустыми ?
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874901
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoМожно сделать ссылку на документ базового мета-типа.
БД легко может обеспечить СЦ по методам TPH или TPT.Т.е. еще одну ненужную таблицу ? Пардон, а зачем ?????
А как контролировать связь между записями в этой таблице и ключами в разных таблицах ? Вдруг в ней останутся записи, ссылки которых будут пустыми ?
все эту фигню познаешь - когда делаешь что нить универсальное (и при том работающее)
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874977
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosвсе эту фигню познаешь - когда делаешь что нить универсальное (и при том работающее)Привет Сахават ! Рад тебя видеть здесь !
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874982
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoКоллега, у Вас все возможные документы в одной таблице ???????
А что, у Вас иначе? И Вы ещё этому радуетесь?

Заголовки со всеми базовыми атрибутами однозначно надо выносить в одну общую таблицу. А расширения для некоторых типов документов общей погоды не делают.

L_argoИ товарные и кассовые и кадровые и еще чорте_какие ?
Да.

L_argoНапример ссылка на документ-основание...
Ссылка на таблице сама на себя для простоты (скажем, допник у договора). Если документы в цепочке собираются из нескольких разных - есть отдельная таблица для взаимосвязи.

L_argoПодобное есть и в других системах.
Да-да, мы помним про сантехников, пишущих ERP в перерывах между вызовами на чистку бассейна ))))
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874990
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМожно сделать ссылку на документ базового мета-типа.
БД легко может обеспечить СЦ по методам TPH или TPT.
+1 Только что сам хотел про TPH/TPT упомянуть.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39874991
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoМожно сделать ссылку на документ базового мета-типа.
БД легко может обеспечить СЦ по методам TPH или TPT.Т.е. еще одну ненужную таблицу ? Пардон, а зачем ?????

Что значит не нужную? В задачи СУБД входит обеспечение ссылочной целостности, есть различные методы, как решать эту задачу средствами СУБД, и она прекрасно решается. Странный у вас вопрос :)

L_argoА как контролировать связь между записями в этой таблице и ключами в разных таблицах ? Вдруг в ней останутся записи, ссылки которых будут пустыми ?

Не останутся, СУБД не даст такому случиться, и не придётся работать негром, постоянно вычищать данные, чтобы не получать ошибки в ПО и в отчётах.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875000
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заголовки со всеми базовыми атрибутами однозначно надо выносить в одну общую таблицу. А расширения для некоторых типов документов общей погоды не делают.Слово "Документ" прозвучало для простоты. Ссылки в общем случае могут быть и на справочник, в т.ч. микросправочник (Да/Нет, Муж/Жен). Их тоже залепим в одну таблицу ? :)

Вообще нет четкой грани между "документ" и "справочник" (или часть справочника). Эта грань условна.

И что мы в итоге получим ? Какой-то мега EAV. Большую систему, состоящую всего из 20 таблиц. И ад из связей.

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

Почему EAV-то? Если вы добавляете атрибут в сущности, то появляется соответствующая колонка, а то и не одна (Value Object). Если атрибут является ссылкой, то добавляете связь в СУБД на соответствующую таблицу.

Если добавление и настройка атрибутов происходит в рантайме, точно также в рантайме могут производится вышеуказанные действия. Рассказывать, что это не работает не нужно, мы это сделали, у нас всё прекрасно работает.

В чём проблема-то? ))
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875007
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoСсылки в общем случае могут быть и на справочник, в т.ч. микросправочник
Говорите уж сразу - "ссылка неизвестно на что".

Не понимаю, зачем такая нужна. Какую бизнес-задачу может решить такая ссылка. Но самое интересное - о какой целостности в этом случае вообще может идти речь?
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875008
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoПроектируя систему вообще не должно быть понятия "документ" и "справочник"
Позвольте полюбопытствовать, сколько систем спроектировали лично Вы, чтобы позволять себе бросаться подобными тезисами?
Между документами и справочниками есть принципиальные отличия. Подумайте, какие. Что вводится в систему документами, а что используется в качестве справочников.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875011
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей ВаскецовПозвольте полюбопытствовать, сколько систем спроектировали лично Вы, чтобы позволять себе бросаться подобными тезисами?
Между документами и справочниками есть принципиальные отличия. Подумайте, какие. Что вводится в систему документами, а что используется в качестве справочников.

+1 отличный вопрос :)
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875015
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не останутся, СУБД не даст такому случиться, и не придётся работать негром, постоянно вычищать данные, чтобы не получать ошибки в ПО и в отчётах. Ну прям серебряная пуля..... )
Ошибки в данных совсем нечасто случаются от нарушения СЦ.

Если с данными работать правильно, нарушение СЦ вообще не должно возникать.

СЦ нужна для тех, кто небрежно работает с данными. Что попало вставляет и удаляет.

И вопрос ошибок целостности не раскрыт.
Допустим есть большой SQL-скрипт автоматической обработки(импорта) данных, запускаемой по расписанию.
Вдруг происходит попытка вставить несуществующий ключ (или удалить задействованный).
СЦ выдаст ошибку. Что далее ?
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875017
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей ВаскецовПозвольте полюбопытствовать, сколько систем спроектировали лично Вы, чтобы позволять себе бросаться подобными тезисами? Между документами и справочниками есть принципиальные отличия.
Вообще-то, в этих словах коллеги доля истины больше, чем в Ваших - хотя он криво и безобразно сформулировал. О принципиальном различии документов и справочников как правило говорят те, чей опыт сводится к OLTP, причём довольно локальному OLTP. Когда поработаешь с хранилищами данных либо с большими бизнес-процессами, становится очевидно: то, что на одном этапе (для одного отдела, одной ИС) является документом, для следующего этапа (соседнего отдела, другой ИС) становится справочником.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875018
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoЕсли с данными работать правильно, нарушение СЦ вообще не должно возникать.
Верно. И тем, кому не нужно СЦ, БД тоже не нужна - они вполне способны обработать данные в уме и сразу выдать финальный результат.

L_argoВдруг происходит попытка вставить несуществующий ключ (или удалить задействованный).
СЦ выдаст ошибку. Что далее ?
Так в чём проблема? Вы ставите задачу - так Вы и скажите, что должно быть далее. А то Вы как-то весело просите угадать, чего же Вы хотите.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875037
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так в чём проблема? Вы ставите задачу - так Вы и скажите, что должно быть далееЯ задаю вопрос. Куда и в каком виде упадет ошибка ? Что из нее можно узнать (можно ли установить значения ключей, вызвавших проблему) ? Что будет после ошибки ? Рассматриваем абстрактную SQL-СУБД.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875045
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerКогда поработаешь с хранилищами данных либо с большими бизнес-процессами, становится очевидно: то, что на одном этапе (для одного отдела, одной ИС) является документом, для следующего этапа (соседнего отдела, другой ИС) становится справочником.
Для этого придумали термин "bound context". Для большой системы невозможно создание всеохватывающей модели. Для различных actors и use cases модель будет своя, хотя в чем-то эти модели могут пересекаться.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875163
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoЯ задаю вопрос.
Это-то и странно. Всё равно как садясь в такси, спрашивать у водителя: "Куда Вы поедете?"

L_argoКуда и в каком виде упадет ошибка ?
(пожимая плечами) Куда скажу, туда и упадёт.

L_argoЧто из нее можно узнать (можно ли установить значения ключей, вызвавших проблему) ?
Можно.

L_argoЧто будет после ошибки ?
(пожимая плечами) Что скажу, то и будет.

L_argoРассматриваем абстрактную SQL-СУБД.
"Обычный стиральный порошок"? Этот подход годится только для того, чтобы впаривать хомячкам всякий бред.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875164
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerВообще-то, в этих словах коллеги доля истины больше, чем в Ваших - хотя он криво и безобразно сформулировал. О принципиальном различии документов и справочников как правило говорят те, чей опыт сводится к OLTP, причём довольно локальному OLTP
Мне ближе позиция, что об отсутствии различий между документами и справочниками говорят как раз те, кто не касался этих различий. ERP - это же не только витрина данных. Если осознать, что именно вводится в систему документами, то различия будут понятны (скажем, я не видел ни в одной системе проводок по справочникам). А если касаться только обобщённых отчётов и все данные воспринимать только статическими, то тогда конечно.

softwarerКогда поработаешь с хранилищами данных либо с большими бизнес-процессами, становится очевидно: то, что на одном этапе (для одного отдела, одной ИС) является документом, для следующего этапа (соседнего отдела, другой ИС) становится справочником.
То есть в одной кучке аспектов нет разницы, с чем работать.
Как отсюда следует хоть что-то про другую кучку аспектов?
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875168
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Васкецовскажем, я не видел ни в одной системе проводок по справочникам
Вы не видели. Очень точная формулировка. Теперь подумайте, например, о справочнике лицевых счетов в ЖКХ. Вы правда не видели проводок по лицевым счетам?
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875170
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разве проводка сама по себе не является документом?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875171
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovРазве проводка сама по себе не является документом?..
Ну не совсем. Проводка обычно имеет документ-основание, но сама по себе проводка - не документ, во всяком случае в "бумажном" смысле.
...
Рейтинг: 0 / 0
Стоит ли хранить значения атрибутов отдельными столбцами ?
    #39875188
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerПроводка обычно имеет документ-основание, но сама по себе проводка - не документ, во
всяком случае в "бумажном" смысле.

В бумажном-то может и да, но формально на основании документа создаются проводки, на
основании проводок изменяются остатки по счетам, так что признаки документа таки
присутствуют по-моему. С другой стороны, моя собственная бухгалтерия не имеет ни проводок
ни остатков, так что не мне об этом говорить.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
25 сообщений из 88, страница 3 из 4
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Стоит ли хранить значения атрибутов отдельными столбцами ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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