|
|
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621> При одном взгляде "Пол" и "Национальность" - это разные сущности, а при другом одна, "справочник" Продемонстрируйте, пожалуйста, взгляд, при котором пол и национальность - одна сущность. Дико интересно. Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 13:34 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
> давайте посмотрим с этой стороны Давайте. Если честно, я не очень понимаю, для какой цели обобщённый справочник вообще может быть нужен. Всё, что может быть измерено стандартным образом, стандартным образом можно и хранить. Семантические шкалы - да, их можно рассматривать отдельно. И для них реализовывать специальный геморрой? Оно того стоит? > эти формальные требования - никак не зависят от задачи, которую решает схема данных? Зависят. Нужно подумать, как лучше сформулировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 14:19 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621> давайте посмотрим с этой стороны Давайте. Если честно, я не очень понимаю, для какой цели обобщённый справочник вообще может быть нужен. Чтобы работать при помощи ИС с сущностью "Справочник". СоздатьСправочникДляТипаСущности УстановитьЗначениеСправочникаДляЭкземпляраСущности и т.п. Бизнес-кейс у нас есть Контрагенты. Вдруг(!) появляется характеристика контрагента "Иностранный агент". Очень желательно, чтобы пользователи могли завести справочник/классификатор "Является иностранным агентом", посадить девочку Машу проставить значения этого справочника для существующих контрагентов, и студента Петю, чтобы он добавил в отчет по контрагентам колонку "является ли иностранным агентом". При этом ни девочке Маше, ни даже студенту Пете нельзя давать права на drop/create, поскольку доверия к ним мало и если они базу убьют, то чинить все это нам. Созданием/удалением виртуальных справочников в единой физической таблице Маша с Петей не убьют базу при всем желании. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 14:46 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621Если честно, я не очень понимаю, для какой цели обобщённый справочник вообще может быть нужен. Всё, что может быть измерено стандартным образом, стандартным образом можно и хранить. Так вот для того чтобы хранить стандартным образом и вводится общий справочник и правила работы с ним определяются один раз. Сугубо для удобства и экономии времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 14:50 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
Есть подозрение, что создание справочников в виде отдельных таблиц (ну и соответственно методов работы с ними) является немалой частью профессиональной деятельности у нескольких собеседников в данной ветке. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 14:53 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
> эти формальные требования - никак не зависят от задачи, которую решает схема данных? Давайте разделим базы данных на две группы: промышленные и потребительские. Потребительские исключим из рассмотрения сразу и напрочь как маркетинговый булшит. Представим, что у нас есть туева хуча технологических процессов, описанных в соответствии со стандартами соответствующих предметных областей. Тогда зависимость от задачи будет выражаться в выборе уровня абстракции, достаточного для описания техпроцессов _за пределами предметной области_. Причём, выбор должен предполагать возможность перехода к любой другой предметной области. Корявенько получилось, но смысл, надеюсь, передал. Детально - предметная область и необходимые пересечения, контурно - всё остальное (если есть необходимость). > Можно выделить универсальные ФТ? А вот это я бы и хотел обсудить. Семейства стандартов + законодательные особенности в качестве отправной точки подойдут? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:01 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
Кот Матроскин Бизнес-кейс у нас есть Контрагенты. Вдруг(!) появляется характеристика контрагента "Иностранный агент". Очень желательно, чтобы пользователи могли завести справочник/классификатор "Является иностранным агентом", посадить девочку Машу проставить значения этого справочника для существующих контрагентов, и студента Петю, чтобы он добавил в отчет по контрагентам колонку "является ли иностранным агентом". При этом ни девочке Маше, ни даже студенту Пете нельзя давать права на drop/create, поскольку доверия к ним мало и если они базу убьют, то чинить все это нам. Созданием/удалением виртуальных справочников в единой физической таблице Маша с Петей не убьют базу при всем желании.для того, чтобы поюзать характеристику "Иносранный агент" сущности "контрагент" либо Петя, либо Маша, либо упал намоченная мариванна должна отредактировать сущность "контрагент" добавив эту характеристику в описание сущности. и её, марьванны, действия над сущностью ничем не отличимы от альтер-тейбл (едд/дроп колумн). как и кто "не убьёт" в этом случае логическую модель БД (описанную прошлой марь-ванной), вернее "БД" - это отдельный вопрос. А так ----- рисовал я как-то по младости дерево самоописывающегося еав (самоописываемый лес сущностей с сущностными же атрибутами из того же леса). не то на 2-х, не то аж на 4-х табличках. сел заполнять от печки, с понятия "объект" (верхний корень (один из) леса), и задумалсо. надоооолго. т.е. задача философски сложнее, чем нарисовать дубовую реляционную базку. А отредактировать её до невменяемости - дело 2-х секунд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:01 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
Infernal V. RavenЕсть подозрение, что создание справочников в виде отдельных таблиц (ну и соответственно методов работы с ними) является немалой частью профессиональной деятельности у нескольких собеседников в данной ветке. :) Ну, вообще, не только в этой ветке юзают РМД, коея предполагает создание "отдельных" таблиц в принципе. Хотя, возможно, создание "отдельных" таблиц, которые называют тут "справочниками" может и являются "малой частью", по крайней мере, по времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:02 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
qwwqКот Матроскин Бизнес-кейс у нас есть Контрагенты. Вдруг(!) появляется характеристика контрагента "Иностранный агент". Очень желательно, чтобы пользователи могли завести справочник/классификатор "Является иностранным агентом", посадить девочку Машу проставить значения этого справочника для существующих контрагентов, и студента Петю, чтобы он добавил в отчет по контрагентам колонку "является ли иностранным агентом". При этом ни девочке Маше, ни даже студенту Пете нельзя давать права на drop/create, поскольку доверия к ним мало и если они базу убьют, то чинить все это нам. Созданием/удалением виртуальных справочников в единой физической таблице Маша с Петей не убьют базу при всем желании.для того, чтобы поюзать характеристику "Иносранный агент" сущности "контрагент" либо Петя, либо Маша, либо упал намоченная мариванна должна отредактировать сущность "контрагент" добавив эту характеристику в описание сущности. Нет, не должна. Ни одна сущность не пострадает Ни одно определение таблицы не изменится в процессе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:05 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
> появляется характеристика контрагента "Иностранный агент" Она не может появиться в одиночестве. Это деление всех юридических лиц на два типа: иностранный агент и не иностранный агент. Причём, даже не всех юридических лиц. И на физическом уровне я бы реализовал это как отдельную таблицу со ссылкой на организации, потому как размер её будет небольшим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:09 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621И на физическом уровне я бы реализовал это как отдельную таблицу со ссылкой на организации, потому как размер её будет небольшим. задача состоит в том, чтобы обойтись силами Маши и Пети. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:12 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
Infernal V. RavenЕсть подозрение, что создание справочников в виде отдельных таблиц (ну и соответственно методов работы с ними) является немалой частью профессиональной деятельности у нескольких собеседников в данной ветке. :)ну да: примитивные агрегирующие выборки из больших таблиц, и их джойнов, в т.ч. и по разрезам, описываемым справочниками -- изрядная часть деятельности sql-кодера. это сюрпрайс ? и тогда чистопородные интерфейсщики, заложившие кривые паттерны проектирования БД из ложно понимаемого ими удобства рисования интреморд (которые мне лично не в падлу один раз закодить на основе таблы метаданных "о мордах", а не уродовать схему собственно данных) -- особо лестно упоминаемая нами часть половых девиантов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:14 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621Представим, что у нас есть туева хуча технологических процессов, описанных в соответствии со стандартами соответствующих предметных областей. Тогда зависимость от задачи будет выражаться в выборе уровня абстракции, достаточного для описания техпроцессов _за пределами предметной области_. Причём, выбор должен предполагать возможность перехода к любой другой предметной области. Корявенько получилось, но смысл, надеюсь, передал. Детально - предметная область и необходимые пересечения, контурно - всё остальное (если есть необходимость). В моей поделке очень четко сами собой разложись сегменты "метаданных" и "универсальных форм". 1. Действительно универсалные формы, кочующие из одной предметной области (проекта, разработки) в другую без изменения. 2. Типовые общеупотребительный формы (пример - календари, отчетные интервалы/периоды и т.п.) 3. Метаконфигураторы, сделанные для реализаци конкретной проектной хотелки не на жестко определенных таблицах и связях а на "мягких" еавеподобных и других похожих механизмах, допускающие настройку ран-тайм "продвинутыми пользователям". 4. Конеретные пользовательские формы, пригодные только в этой предметной области. (несмотря на их реализацию на метаданных "продвинутые пользователи" не допускаются до их изменения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:16 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
Кот Матроскинqwwqпропущено... для того, чтобы поюзать характеристику "Иносранный агент" сущности "контрагент" либо Петя, либо Маша, либо упал намоченная мариванна должна отредактировать сущность "контрагент" добавив эту характеристику в описание сущности. Нет, не должна. Ни одна сущность не пострадает Ни одно определение таблицы не изменится в процессе. вы не правы, ни одна сущность и таблица не изменится, но изменятся "сущности" и соответствующие им "таблицы" (описание в еав). из того что пострадает не БД а "БД" ничего не изменится -- мы сами модели (и их катастрофы) вынесли в другой слой. только и всего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:18 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
[quot qwwq]Кот Матроскинпропущено... из того что пострадает не БД а "БД" ничего не изменится Спорить с точкой зрения "поскольку пользователи в любом случае изменяют данные в БД, то если дать все операторам права DBA, то ничего не изменится, просто катастрофа случится в другом слое" - мне не очень интересно, сорри. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:23 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
> задача состоит в том, чтобы обойтись силами Маши и Пети Хорошо. Задачу Маше и Пете вы будете должны сформулировать так: реализовать требования Федерального закона от 20.07.2012 N 121-ФЗ. Каких действий вы ожидаете от Пети и Маши? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:29 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
[quot Кот Матроскин]qwwqпропущено... Спорить с точкой зрения "поскольку пользователи в любом случае изменяют данные в БД, то если дать все операторам права DBA, то ничего не изменится, просто катастрофа случится в другом слое" - мне не очень интересно, сорри.вы очень выборочно вчитываете какие-то свои смыслы в аргументы оппонента. а именно - "дать права дба" и "дать права на выполнение определенной (разработчиком) процедуры (выполняемой от имени пользователя, но с правами ДБА)" - это существенно разные случаи, евпочя. при чём последняя альтернатива возникает в стороне от основного обсуждения - "нужно ли в классике (безо всякой необходимости что в 1, что во 2) портить структуру данных" ? и вас пробивает на отсылку к этому оффтопику всякий раз, когда вы не можете ответить по существу темы. забавно т.ч. спорить с вашей кочкой зрения, не зависимо от того, о чём вы в очередной раз её поимели, действительно не интересно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:35 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
> 2. Типовые общеупотребительный формы (пример - календари, отчетные интервалы/периоды и т.п.) До какой степени общеупотребительные? Есть календарный/финансовый год/квартал? Есть возможность пользоваться разными календарями? > 4. Конеретные пользовательские формы, пригодные только в этой предметной области. Какими стандартами и как именно вы пользовались? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:37 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621> задача состоит в том, чтобы обойтись силами Маши и Пети Хорошо. Задачу Маше и Пете вы будете должны сформулировать так: реализовать требования Федерального закона от 20.07.2012 N 121-ФЗ. Каких действий вы ожидаете от Пети и Маши? Я не ставлю задачу Маше и Пете. Я обьясняю руководству Маши и Пети "Если Вы приобретаете нашу систему - Вы можете делать ряд настроек силами ваших Маши и Пети, а не заказывать доработку у нас за 100500 денег. При этом Маша и Петя не повредят безвозвратно вашу базу. К системе мы прилагаем в документации ряд скриншотов для Маши и описание API для Пети. Более того - вы можете не напрягаясь сменить Петю на Васю, и Васе не надо будет тратить полгода разбирательство в куче мусора, которй оставил Петя - все эти настройки делаются стандартизированным образом ". По этому пути идут практически все тиражируемые ИС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:43 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
qwwqну да: примитивные агрегирующие выборки из больших таблиц, и их джойнов, в т.ч. и по разрезам, описываемым справочниками -- изрядная часть деятельности sql-кодера. это сюрпрайс ?Мда, с юмором у некоторых, видать, проблемы :) Речь шла о абстрактном создании справочников и их наполнении :) qwwqи тогда чистопородные интерфейсщики, заложившие кривые паттерны проектирования БД из ложно понимаемого ими удобства рисования интреморд (которые мне лично не в падлу один раз закодить на основе таблы метаданных "о мордах", а не уродовать схему собственно данных) -- особо лестно упоминаемая нами часть половых девиантов.Эк зацепило то :) Какая-та прям неприязнь к "интерфейсщики" наблюдается. Я, кстати, не видел, чтобы структуру БД проектировали "интерфейсщики", вернее в таких проектах не участвовал. Удобство одного справочника ключ/значение состоит не только в том, что это удобно в интерфейсе (хотя это тоже немаловажно). Выработка правил облегчает миграцию и использование значений в тиражируемой системе. Называют поле, например ref_val_gender и сразу понятно, что нужно смотреть справочник с названием gender. Стандартизация? Да. Удобно? Да. Индексы опять же уже созданы на общий справочник, создавать не нужно. Мелочь, а приятно. Вот из таких мелочей и складывается работа разработчика. Зачастую интеграцию тоже удается упростить (но тут нужно смотреть детальнее исходя из требований). Модель данных, поддерживаемая, например в CASE средствах тоже становится компактней. Исчезают CREATE TABLE в скриптах обновлений (для тиражируемых систем это немаловажно). P.S. Такой рьяный спор - как-будто зарплату у кого-то отбирают :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:47 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
> По этому пути идут практически все тиражируемые ИС. Неожиданно хороший пример получился, кстати. В базу данных в результате попадёт всё, что угодно, кроме того, что нужно. С очень большой вероятностью. Напомнило недавние комментарии к пенсионной реформе. Типа у нас же налоги платит работодатель, а не граждане. Думаю, что это было целевым передёргиваением, но, если пользоваться вашим примером как аналогией, вполне можно допустить, что Маша с Петей никогда не слышали о статусе налогового агента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 15:51 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
qwwqInfernal V. RavenЕсть подозрение, что создание справочников в виде отдельных таблиц (ну и соответственно методов работы с ними) является немалой частью профессиональной деятельности у нескольких собеседников в данной ветке. :)ну да: примитивные агрегирующие выборки из больших таблиц, и их джойнов, в т.ч. и по разрезам, описываемым справочниками -- изрядная часть деятельности sql-кодера. это сюрпрайс ? и тогда чистопородные интерфейсщики, заложившие кривые паттерны проектирования БД из ложно понимаемого ими удобства рисования интреморд (которые мне лично не в падлу один раз закодить на основе таблы метаданных "о мордах", а не уродовать схему собственно данных) -- особо лестно упоминаемая нами часть половых девиантов. DBA не способны обеспечить целостность без FK, но готовы любезно предоставить таблы о мордах. Универсальный справочник по сравнению с этим монстром - мелкие семечки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 16:01 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621> По этому пути идут практически все тиражируемые ИС. Неожиданно хороший пример получился, кстати. Из жизни потому что :) guest_20040621В базу данных в результате попадёт всё, что угодно, кроме того, что нужно. С очень большой вероятностью. Напомнило недавние комментарии к пенсионной реформе. Типа у нас же налоги платит работодатель, а не граждане. Думаю, что это было целевым передёргиваением, но, если пользоваться вашим примером как аналогией, вполне можно допустить, что Маша с Петей никогда не слышали о статусе налогового агента. Что попадет в базу - зависит от того, насколько серьезно рукововдство подойдет к делу. Если оно, как обычно, решит сэкономить на Маше, на Пете и на постановщике задач для Маши и Пети - то да, результат вряд ли будет впечталяющим. Но дело создателей ИС - предоставить возможность . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 16:08 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
Infernal V. Raven qwwqи тогда чистопородные интерфейсщики<> -- особо лестно упоминаемая нами часть половых девиантов.Эк зацепило то :) Какая-та прям неприязнь к "интерфейсщики" наблюдается. <>-- по девиантам возражений нет. это хорошо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 16:08 |
|
||
|
Проектирование атомарных справочников...
|
|||
|---|---|---|---|
|
#18+
guest_20040621> 2. Типовые общеупотребительный формы (пример - календари, отчетные интервалы/периоды и т.п.) До какой степени общеупотребительные? Есть календарный/финансовый год/квартал? Есть возможность пользоваться разными календарями? > 4. Конеретные пользовательские формы, пригодные только в этой предметной области. Какими стандартами и как именно вы пользовались? Все оценки общеупотребительности - субъективные. При использовании в нескольких проектах считаю форму и ее данные "общеупотребительным". Календари - как у всех - праздники и выходные дни по годам (только для одной станы ). Периоды - кварталы, годы. "Конкретные" формы и их данные присущи только решению, в котором они разрабатывались. На стандарты сослаться не могу. Разделение на 4 типа исключительно субъективное. 4 Сам принцип разделение форм и (мета)данных на эти типы кажется верной идеей, о чем и был смысл поста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2014, 16:10 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38531937&tid=1540946]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
156ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 15ms |
| total: | 275ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...