powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как бороться с частыми изменениями схемы данных?
103 сообщений из 103, показаны все 5 страниц
Как бороться с частыми изменениями схемы данных?
    #38350940
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понимаю, что бизнес не стоит на месте - все растет, все развивается, но как же нам разработчикам учитывать изменения схем данных?
Вот и сегодня, мне за 2 дня до отпуска, сказали что нужно внести изменения в тарифный план (план разрабатываем не мы и повлиять на него никак не можем - ведем его для корректного формирования стоимости наших услуг).
Но проблема в том, что якобы маленькие изменения в цифрах, на самом деле являются изменениями в существующей схеме данных и там работы не на пару дней.
Я понимаю, когда ну раз в 2 года, а лучше раз 5 лет, что-то в схеме данных можно незначительно поменять и скорректировать старые документы под новую схемы, чтобы на них не повлияли изменения, но когда это происходит минимум раз в полгода и когда изменения схемы влекут за собой наслоения "сохранений" старых документов под новые схемы - это становиться адом!

Поделитесь пожалуйста опытом борьбы с таким явлением. Есть ли какие либо способы или шаблоны проектирования такого безобразия!? )
Хочется в отпуск...
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350943
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как бороться технически или организационно?

Технические варианты:
1) Делать запасные поля.
2) Вместо добавления полей делать дополнительную таблицу, связанную с исходной как 1:[0-1].
3) Использовать сериализованные поля. Например ,строковое поле с содержимым вида "param1=value1;param2=value2".
4) Использовать EAV и подобные структуры.
Естественно, любой из вариантов нужно применять осторожно и к месту.

Организационные:
1) Добиться, чтобы о будущих изменениях предупреждали не за 2 дня до запуска, а еще на этапе планирования.
2) Начать разбираться в предметной области лучше. Цитирую нашего DBA (который еще и немалую часть БД проектирует и в предметной области понятие имеет) - "хвостом чую, они здесь еще вот это захотят" :)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350946
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

в предметной области - съедим и мамонта, но к сожалению, зависимости параметров тарифном плане никак не связаны с предметной областью, а лишь с фантазиями и какими-нибудь периодами у методолога той компании, которая нам план спускает :)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350947
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

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

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

еав - ничего не меняет в данном случае - это лишь методология проектирования и на изменения в схеме БД он требует таких же усилий как и при стандартном подходе проектированияЗависит от того, что именно понимать под схемой БД. Физическая схема в EAV не изменяется при изменении логической.
Впрочем, настаивать не буду, вам к своим условиям виднее.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350958
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftЕще вариант - оторвать бизнес-зависимости от зависимостей в СУБД. Написать свой код (например, хранимые процедуры), реализующий проверку этих бизнес-зависимостей. Дать права на изменение данных только через этот код/хранимки. Есть минус - может резко ухудшиться быстродействие/производительность модификации данных.

проблема в том чтобы отображать эти зависимости в интерфейсе - а при подходе с сохраненной процедурой ничего не выйдет - она лишь будет отдавать/проверять вставку изменения данных определенной структуры сущности...а ежели и структура сущности данных меняется от плана к плану...
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350959
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, и при этом необходимо чтобы, документы, выписываемые задним числом, правильно обрабатывались новой схемой и считали по старым данным!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350961
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spпроблема в том чтобы отображать эти зависимости в интерфейсе - а при подходе с сохраненной процедурой ничего не выйдет - она лишь будет отдавать/проверять вставку изменения данных определенной структуры сущности...а ежели и структура сущности данных меняется от плана к плану...Вводите скрипты более высокого уровня. Что-то типа как SQL по отношению к процедурным языкам.
Впрочем, реализация может оказаться сложнее, чем каждый раз править код руками.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350962
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spда, и при этом необходимо чтобы, документы, выписываемые задним числом, правильно обрабатывались новой схемой и считали по старым данным!Это уже возможно, имхо, только после "человеческого" анализа совместимости старых данных и новой схемы.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350966
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftspда, и при этом необходимо чтобы, документы, выписываемые задним числом, правильно обрабатывались новой схемой и считали по старым данным!Это уже возможно, имхо, только после "человеческого" анализа совместимости старых данных и новой схемы.

при нечеловеческих извращениях методолога!?))
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350969
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

если бы мы являлись бы разработчиками тарифного - плана - проблем бы не было - учли бы, домыслили или додумали бы все, но ...есть страшный сволочь методолог в конторе, которая нам спускает план и в разговорах с ним выяснилось - а нету никакой схемы - он типа с потолка хочу тут добавлю, а тут убавлю за счет изобретения условно-подчиненных связей - к примеру, если поставщик Иванов и сегодня пятница и еще и полнолуние - то 1, а если лимузин и на заборе написано х..й то - 2 - а мы то эти связи должны зафиксировать, спроектировать и воплотить!
И вот такие у него ассоциации возникают каждый раз при смене тарифов...
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38350974
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spИ вот такие у него ассоциации возникают каждый раз при смене тарифов...А что если однажды отказать ему на основании "потому что гладиулос" ? :)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351008
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spПонимаю, что бизнес не стоит на месте - все растет, все развивается, но как же нам разработчикам учитывать изменения схем данных?
...
Поделитесь пожалуйста опытом борьбы с таким явлением. Есть ли какие либо способы или шаблоны проектирования такого безобразия!? )
Хочется в отпуск...

Разделить данные и бизнес-логику (БЛ)
БЛ - обязана меняться, данные - нет.
В частности для вашей задачи нужно спроектировать БД, т.о. чтобы в БД хранились "метаданные" для конструктора тарифных планов.
А расчет тарифного плана вынести в код ЯП.
Т.е.
В БД храниться биллинговая информация.
В БД хранятся "методанные" для конструктора тарифов
Конструктор тарифов на основе биллинговых данных и "методанных" по тарифам заполняет данные "начисления за услугу".

Основная сложность здесь в проектировании схемы для "методанных" для конструктора тарифов.
Где-то так.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351178
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо sp, затронул очень жизненную тему Data Livetime Cycle.
Сталкиваюсь с аналогичной проблемой регулярно 3 раза в год.
Регулярность и предсказуемость позволяют планировать внесение изменений и требуют постоянно людские затраты, которые в принципе не возможно избежать. Бизнес с этим согласен и на операционном уровне проблемой не является. Проблема же в моём понимании, это очень большие людские затраты на выявление всех Impacts, и большие на внесение изменений и поддержку накопленный данных. Из всех в этом топике спонтанно приведённых решений нет ни одного приемлемого для моего случая. Для понимания, почему, необходим более глубокий анализ проблемы. Описанные проблема и решения застрагивают только поверхностные изменения в схеме. Что есть схема? Разбиение по таблицам и полям. Другими словами проекция модели данных на физическое представление в базе. Отсюдого видны разные классы изменений:
1. Изменения в схеме модель данных не затрагивают: таблица разделилась, индексы добавились, партиционирование и т. д. Есть много очевидных и простых решений.
2. Модель дополнилась/урезалась атрибутами и изменения переносятся в схему.
3. Изменилась модель данных. Возможно даже что при этом проекция(схема) не меняется.
Вот именно последней класс самый ресурсоёмкий. К нему я отношу и проблемы scm.
Инмон в работе dw 2.0 тему затрагивает а вот конкретных готовых под ключ решений я пока не видал.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351208
АнатоЛой
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351240
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikron,

в нашем случае операции изменения затрагивают ваши пункты 2 и 3
Я уже решил для себя вообще создавать отдельные сущности тарифных планов и объединять их с помощью "наследования" в БД, а на клиенте при выборе даты будет загружаться нужный экземпляр тарифного плана в плане клиентских компонентов и серверных данных
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351276
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Честно говоря, не очень понимаю, почему нельзя сделать структуру данных тарифного плана, которая может пережить любое извращение методолога.
Тарифный план - это, грубо говоря, n-мерный куб, измерения которого заданы набором интервалов неких численных параметров. И в чем тут проблема? Отображать n-мерный куб? Добавить измерение n+1 к n-мерному кубу?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351295
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,

мне сложно представить о каком кубе вы ведете речь, но о своем коне я вам поведаю - в нашем тарифном плане есть куча атрибутов плана списочного характера с кучей бизнес правил -типа: тут мы читаем, тут не читаем если выбрано то, а тут мы вообще рыбу заворачиваем.. т.е эти атрибуты имеют множественные зависимости и сложную бизнес-логику
При изменении тарифов зачастую меняются связи и бизнес логика, редко изменяется и сам список атрибутов. Все это нужно отобразить на клиенте и естественно проверить в БД. Ну у меня никак куб не получается - только конь!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351318
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spНо проблема в том, что якобы маленькие изменения в цифрах, на самом деле являются изменениями в существующей схеме данных и там работы не на пару дней.Если изменения на самом деле маленькие, то налицо недостаток модели, которая не может отразить эти маленькие изменения.

Если изменения реально большие, то почему бы их не сделать? Неразумно жаловаться, что у вас много заказов и вы слишком хорошо зарабатываете :-)

То есть в итоге нужно с одной стороны делать лучше модель, с другой - уметь обосновывать затраты.

Был бы интересен пример, когда с точки зрения заказчика изменения маленькие, а с точки зруния разработчика они выливаются в огромную работу "и вообще надо всё переделать".
Чаще всего я вижу, что это следстивия плохих моделей, в частности следствие незначительной экономии времени при создании модели БД и/или архитектуры приложения (например, категорическое нежелание делить систему на уровни, типа замапили классы на таблицы каким нибуть ORM, и порядок, а при элементарном изменении объектной модели начинаются охи-ахи).
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351324
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spПри изменении тарифов зачастую меняются связи и бизнес логика, редко изменяется и сам список атрибутов.Ну вообще это довольно рутинные операции.

Ну добавился аттрибут, и что? Скриптик на добавление аттрибутов, изменение ХП таким образом, что бы клиент мог работать со старой и новой базой, потом изменение клиента, использование этих новых аттрибутов. Может, не один день, но и не месяц работы.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351337
Cane Cat Fisher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Расскажу о реальной эволюции крохотной части БД, с которой пришлось столкнуться.

Итак, биллинговая система - расчеты с населением за газ. Вопрос цены.

1. Давным-давно, когда система начинала проектироваться, цена была выбита на огромном камне для всего СССР, и не было величины постояннее. Поэтому сначала это была константа в коде.

2. Затем цена стала расти со временем. Появилась таблица PRICES(DATE_ACCEPT, DATE_FROM, PRICE) (две даты - для учета изменений задним числом: в каком отчетном периоде учитывается, с какой расчетной даты пересчитывается).

Константа в коде заменилась на функцию get_price(ADATE_ACCEPT, ADATE_FROM), внутри нее сидело обращение к таблице.

3. Затем ученые придумали бытовые счетчики, и, чтобы поощрить население их ставить, сделало цену по счетчикам ниже, чем без них.

Программисты поматерились, и ответили на это тремя важными шагами:

а) у функции get_price добавили параметр ABONENT_ID. Теперь функция внутри себя лезла в параметры абонента и смотрела, есть ли у него счетчик.

б) в зависимости от этого, она по-разному обращалась к таблице PRICES. Туда вроде бы добавили поле PRICE_BY_METER с ценой для счетчиков. Или ввели логический признак WITH_METER и помножили строки. Или вообще сделали новую таблицу. Я специально напускаю в этом месте туману, поскольку уже не помню подробностей, и это правильно. Потому что:

в) ...подробности отныне и навеки остались внутри функции get_price. Все прямые SQL-обращения к таблицам PRICE и им подобным были запрещены.

4. Затем цены стали зависеть от многоквартирности дома. Добавили таблицу (или поля, не помню).
5. Затем это отменили, и ввели особые цены для отопления, и для его отсутствия. Добавили таблицу (-..-).
6. Затем вспомнили про автономное отопление в многоквартирных домах, и ввели для него особые цены. Добавили таблицу (-..-).
7. Затем ввели целых десять цен, в зависимости от годового объема потребления газа. Добавили таблицу (-..-).
8. Надо ли говорить, что все эти категории цен продолжали расти со временем. Записи множились.

...А весь остальной код на все это не обращал внимания. Вызывал себе функцию get_price, и все. Ее формат вызова не менялся: get_price(ADATE_ACCEPT, ADATE_FROM, ABONENT_ID).

Внутри get_price был большой некрасивый CASE, и, в зависимости от заданного периода и данных абонента, шли обращения к нужным полям нужных таблиц. Но об этом знала только get_price.

Мораль: нужно предвидеть, где будут частые изменения в будущем, и максимально программно изолировать этот кусок от остального кода. Как учил товарищ Гради Буч, сложность системы определяется не количеством объектов, а количеством и характером связей между ними. Упрощайте логические связи, не допускайте лишних обращений одних подсистем в потроха к другим. И тогда отдельные подсистемы можно будет переделывать быстро и легко, без ущерба для остальных.

Замечание по производительности. Результаты расчетов хранятся в отдельной таблице - расчетной ведомости, которая слегка денормализована: в нее подтянуты фактические значения цен и других параметров, использовавшихся при расчете. Поэтому при формировании отчетов не нужно снова многократно вызывать функцию get_price, которая, конечно, получилась слегка громоздкой, а берутся сохраненные значения.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351345
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvg,

никакой модели нет - иначе бы я не писал этот топик - если бы была модель и все изменения происходили в рамках этой модели - вообще бы вопрос не стоял!
В том то и дело что при каждом изменении речь идет об изменении модели.

"Если изменения на самом деле маленькие..." - я же по русски написал что эти маленькие изменения в цифрах влекут за собой БОЛЬШИЕ изменения в схеме - или вы невнимательно читаете?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351346
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgspПри изменении тарифов зачастую меняются связи и бизнес логика, редко изменяется и сам список атрибутов.Ну вообще это довольно рутинные операции.

Ну добавился аттрибут, и что? Скриптик на добавление аттрибутов, изменение ХП таким образом, что бы клиент мог работать со старой и новой базой, потом изменение клиента, использование этих новых аттрибутов. Может, не один день, но и не месяц работы.

читайте все с самого начала!
Про атрибуты речь вообще нигде не шла!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351349
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cane Cat FisherМораль: нужно предвидеть, где будут частые изменения в будущем, и максимально программно изолировать этот кусок от остального кода. Как учил товарищ Гради Буч, сложность системы определяется не количеством объектов, а количеством и характером связей между ними. Упрощайте логические связи, не допускайте лишних обращений одних подсистем в потроха к другим. И тогда отдельные подсистемы можно будет переделывать быстро и легко, без ущерба для остальных.Вот именно, +1

Любая логика изолируется в одном месте, это касается как расчётов, так и вообще всего остального. Для примера, мне сразу всё понятно, если в средней или крупной системе работа с классами доступа к СУБД пишется непосредственно в прикладном коде. После этого жалобы "ну для этого всё надо переписывать" воспринимаются с подозрением.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351353
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sp"Если изменения на самом деле маленькие..." - я же по русски написал что эти маленькие изменения в цифрах влекут за собой БОЛЬШИЕ изменения в схеме - или вы невнимательно читаете?А, то есть это вы имели в виду, что итоговые значения поменяются немного, а то, что изменения кода большие - это все понимают?
Ну так я и пишу - если заказчик понимает, что изменения кода большие, то в чём проблема? Больше работы - больше денег.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351361
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spКот Матроскин,

мне сложно представить о каком кубе вы ведете речь, но о своем коне я вам поведаю - в нашем тарифном плане есть куча атрибутов плана списочного характера с кучей бизнес правил -типа: тут мы читаем, тут не читаем если выбрано то, а тут мы вообще рыбу заворачиваем.. т.е эти атрибуты имеют множественные зависимости и сложную бизнес-логику
При изменении тарифов зачастую меняются связи и бизнес логика, редко изменяется и сам список атрибутов. Все это нужно отобразить на клиенте и естественно проверить в БД. Ну у меня никак куб не получается - только конь!

Можете привести пример описания тарифного плана?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351367
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spalexeyvg,

никакой модели нет - иначе бы я не писал этот топик - если бы была модель и все изменения происходили в рамках этой модели - вообще бы вопрос не стоял!
В том то и дело что при каждом изменении речь идет об изменении модели.Начнём с того, что модель есть всегда, даже если программист не подозревает о её наличии.

Далее, есть модель бизнеса, которая постоянно меняется, а есть модель данных, то есть модель БД.

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

Вы же зачем то создали этот топик, не просто же поплакаться? Вот я вам предложил 2 варианта решения проблемы - совершенствовать модель и совершенствовать отношения с заказчиком.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351377
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sp,

Поделитесь пожалуйста опытом борьбы с таким явлением. Есть ли какие либо способы или шаблоны проектирования такого безобразия!? )

Никаких шаблонов или способов нет.
Надо просто проектировать приложения гибко, так, чтобы оно допускало некоторые вольности, а не тупо по ТЗ шпарило.

Я часто реализую в приложениях некие "гибкие модели" вместо прямой реализации постановки. Они в частности реализуют и постановку, но могут больше.
Иногда прокатывает, и не надо делать очередную переделку. Конечно, это не всегда бывает.

Ну и обратное — иногда приструнить фантазии маркетологов вполне допустимо. Обычно очень хорошо помогает внутренняя тарификация работ по IT. Как только люди видят, сколько будет стоить переделка ПО, они все начинают видеть в другом свете.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351385
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftspmiksoft,

еав - ничего не меняет в данном случае - это лишь методология проектирования и на изменения в схеме БД он требует таких же усилий как и при стандартном подходе проектированияЗависит от того, что именно понимать под схемой БД. Физическая схема в EAV не изменяется при изменении логической.
Впрочем, настаивать не буду, вам к своим условиям виднее.

Это все не сильно лечит. Схему может менять и не надо будет, но приложение-то дописывать все равно надо.

Вообще, технические средства тут особенно не помогут.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351390
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spmiksoft,

если бы мы являлись бы разработчиками тарифного - плана - проблем бы не было - учли бы, домыслили или додумали бы все, но ...есть страшный сволочь методолог в конторе, которая нам спускает план и в разговорах с ним выяснилось - а нету никакой схемы - он типа с потолка хочу тут добавлю, а тут убавлю за счет изобретения условно-подчиненных связей - к примеру, если поставщик Иванов и сегодня пятница и еще и полнолуние - то 1, а если лимузин и на заборе написано х..й то - 2 - а мы то эти связи должны зафиксировать, спроектировать и воплотить!
И вот такие у него ассоциации возникают каждый раз при смене тарифов...

Ещё раз, выставить ему раз счет на работы — сразу присмиреет.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351412
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cane Cat Fisher,

ваш пример хорош, но не для нашего случая - у нас логика выбора каждого из параметров зависит от значений в других параметрах и она меняется во времени... у вас то всего один пустячек - выбрать цену а у нас все из таких пустячков состоит и при том что у вас структуры за get_price остаются постоянными а они у нас меняются..
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351417
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgsp"Если изменения на самом деле маленькие..." - я же по русски написал что эти маленькие изменения в цифрах влекут за собой БОЛЬШИЕ изменения в схеме - или вы невнимательно читаете?А, то есть это вы имели в виду, что итоговые значения поменяются немного, а то, что изменения кода большие - это все понимают?
Ну так я и пишу - если заказчик понимает, что изменения кода большие, то в чём проблема? Больше работы - больше денег.

Изменение не кода, а структуры БД!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351418
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivmiksoftЗависит от того, что именно понимать под схемой БД. Физическая схема в EAV не изменяется при изменении логической.
Впрочем, настаивать не буду, вам к своим условиям виднее.

Это все не сильно лечит. Схему может менять и не надо будет, но приложение-то дописывать все равно надо.

Вообще, технические средства тут особенно не помогут.ИМХО изменение схемы одинаково для EAV или классической схемы.
В конце концов, изменение таблиц и констрейнов такое же изменение таблиц метаданных, как и изменение метаданных в EAV, только в одном случае таблицы метаданных будут системные, в другом пользовательские, ну и язык изменений может отличаться.
Фактически EAV выгоден в том случае, когда бизнес-модель не меняется, когда изменения сводятся к некоему количественному изменению.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351420
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv,

к сожалению приструнить товарища из другой конторы мы не можем - они нам хлеб дают!))
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351421
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spalexeyvgА, то есть это вы имели в виду, что итоговые значения поменяются немного, а то, что изменения кода большие - это все понимают?
Ну так я и пишу - если заказчик понимает, что изменения кода большие, то в чём проблема? Больше работы - больше денег.

Изменение не кода, а структуры БД!"Код" подразумевается весь набор исходников, в том числе описания таблиц и т.п.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351426
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spMasterZiv,

к сожалению приструнить товарища из другой конторы мы не можем - они нам хлеб дают!))Что значит приситрунить не можем??? Если они дают хлеба меньше, чем нужно для реализации их хотелок, то они совсем не благодетели. Вот тут важно искусство работы с заказчиком - нужно ему доказать, что для изменений, которые он требует, нужно столько-то трудозатрат. Что бы он поверил и у него не было больше вопросов по стоимости.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351429
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgspalexeyvg,

никакой модели нет - иначе бы я не писал этот топик - если бы была модель и все изменения происходили в рамках этой модели - вообще бы вопрос не стоял!
В том то и дело что при каждом изменении речь идет об изменении модели.Начнём с того, что модель есть всегда, даже если программист не подозревает о её наличии.

Далее, есть модель бизнеса, которая постоянно меняется, а есть модель данных, то есть модель БД.

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

Вы же зачем то создали этот топик, не просто же поплакаться? Вот я вам предложил 2 варианта решения проблемы - совершенствовать модель и совершенствовать отношения с заказчиком.


Эх молодость.. наивность...
Мы уже столько лет в этом бизнесе, что про модель и все ньюансы сами кого хочешь полечить можем)))
Проблема в том что - данный тарифный план это абсолютная вольность методолога - у него нет никаких ограничений и рамок!
Ему нужно варьировать цену при различных условиях - вот он и варьирует их условиями и параметрами так как ему вздумается без всякой схемы!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351458
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,

План привести не могу по некоторым причинам но обрисовать его в общем могу так:
в плане есть около 15 постоянных списочных параметров с коэффициентами, не имеющими никакой привязки к предметной области!
а также имеется с 10 параметров условно постоянных.
Методолог эти параметры тусует как ему вздумается - к примеру: если изделие из такого-то цеха и поставляется в такой регион - коэффициент 1 для параметра #1.
Если параметр #1 имеет значение 1 и покупатель не плательщик НДС и из Лондона - то параметр №2 = 0.5

Не шучу! все так и представлено - важно в этом процессе - конечная стоимость, а она формируется такими вот правилами и значениями!
В следующей версии Лондона может и не быть вообще и второе правило переписано так: если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2!!!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351472
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spКот Матроскин,

План привести не могу по некоторым причинам но обрисовать его в общем могу так:
в плане есть около 15 постоянных списочных параметров с коэффициентами, не имеющими никакой привязки к предметной области!
а также имеется с 10 параметров условно постоянных.
Методолог эти параметры тусует как ему вздумается - к примеру: если изделие из такого-то цеха и поставляется в такой регион - коэффициент 1 для параметра #1.
Если параметр #1 имеет значение 1 и покупатель не плательщик НДС и из Лондона - то параметр №2 = 0.5

Не шучу! все так и представлено - важно в этом процессе - конечная стоимость, а она формируется такими вот правилами и значениями!
В следующей версии Лондона может и не быть вообще и второе правило переписано так: если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2!!!
обычные бизнес правила (тем более что базовое множество определено явно из 25 переменных)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351559
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spКот Матроскин,

План привести не могу по некоторым причинам но обрисовать его в общем могу так:
в плане есть около 15 постоянных списочных параметров с коэффициентами, не имеющими никакой привязки к предметной области!
а также имеется с 10 параметров условно постоянных.
Методолог эти параметры тусует как ему вздумается - к примеру: если изделие из такого-то цеха и поставляется в такой регион - коэффициент 1 для параметра #1.
Если параметр #1 имеет значение 1 и покупатель не плательщик НДС и из Лондона - то параметр №2 = 0.5

Не шучу! все так и представлено - важно в этом процессе - конечная стоимость, а она формируется такими вот правилами и значениями!
В следующей версии Лондона может и не быть вообще и второе правило переписано так: если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2!!!

Ну замечательно, не вижу тут особых проблем. на каждый из Ваших параметров делаем "кубик".
Итого тарифный план состоит из 3 основных таблиц
1. Параметры-"кубики"
2. Измерения кубов (N:1 c параметрами)
3. Диапазоны измерений (N:1 c измерениями)

Первый кейс описывается (для цеха N6 и региона N18, Лондон считаем городом № 83 )
Параметры
ID параметраназвание параметра 1Параметр1 2 Параметр2
Измерения
ID измеренияID параметра ссылка на обьект измерения тип (и/или) дефолтное значение 1 1 Номер цеха И 0 2 1 Номер региона И 0 3 2 Покупатель - Плательщик НДС И 0 4 2 Город покупателя И 0 5 2 Параметр1 И 0
диапазоны
ID диапазона ID измерения Начало диапазона Конец диапазона значение 1 1 66 1 2 2 18 18 1 3 3 11 0.5 4 4 83 83 0.5 55 110.5


Если тип измерения И - проверяем что все отобранные диапазоны дают одно и то же значение, если ИЛИ - просто берем значение из первого отобранного диапазона.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351612
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot sp]alexeyvgЭх молодость.. наивность...
Мы уже столько лет в этом бизнесе, что про модель и все ньюансы сами кого хочешь полечить можем)))
Проблема в том что - данный тарифный план это абсолютная вольность методолога - у него нет никаких ограничений и рамок!
Ему нужно варьировать цену при различных условиях - вот он и варьирует их условиями и параметрами так как ему вздумается без всякой схемы!

Так не надо эту схему (расчет тарифных планов) хранить в БД :-)
Храните "метаданные" для расчета тарифных планов.
Алгоритм расчета либо выносите в ЯП, либо создайте "конструктор" тарифных планов.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351659
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgИМХО изменение схемы одинаково для EAV или классической схемы.

Как раз наоборот.
в EAV добавление нового атрибута -- штатное действие, выполняемое пользователем системы.
Без него -- это установка новой версии ПО, выполняемая программистом.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351783
Cane Cat Fisher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spесли изделие из такого-то цеха и поставляется в такой регион - коэффициент 1 для параметра #1.
Если параметр #1 имеет значение 1 и покупатель не плательщик НДС и из Лондона - то параметр №2 = 0.5

Не шучу! все так и представлено - важно в этом процессе - конечная стоимость, а она формируется такими вот правилами и значениями!
В следующей версии Лондона может и не быть вообще и второе правило переписано так: если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2!!!

Ничего особенного в этом я не вижу. Только я бы не стал моделировать все это структурами БД, а реализовал в каком-то месте прикладного кода. Со всей историей правил, диапазонами действия во времени и т.д. Особый вопрос - проверка полноты правил, то есть охвата всех возможных комбинаций параметров. "Если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2". А если не Пупкин, или Пупкин но не кожа в Цехе № 2, то что?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351833
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,

и того надо завести кубик 25 в степени 25!? т.е. предусмотреть все варианты скрещиваний!??
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351840
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cane Cat Fisher
Ничего особенного в этом я не вижу. Только я бы не стал моделировать все это структурами БД, а реализовал в каком-то месте прикладного кода. Со всей историей правил, диапазонами действия во времени и т.д. Особый вопрос - проверка полноты правил, то есть охвата всех возможных комбинаций параметров. "Если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2". А если не Пупкин, или Пупкин но не кожа в Цехе № 2, то что?

бывает альтернативный перечень, а бывает просто - ничто!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38351943
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spКот Матроскин,

и того надо завести кубик 25 в степени 25!? т.е. предусмотреть все варианты скрещиваний!??

Зачем "кубик 25 в степени 25"? По примеру же видно, что заводятся только реальные зависимости-измерения, а не потенциальные.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38352006
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spПлан привести не могу по некоторым причинам но обрисовать его в общем могу так:
в плане есть около 15 постоянных списочных параметров с коэффициентами, не имеющими никакой привязки к предметной области!
а также имеется с 10 параметров условно постоянных.
Методолог эти параметры тусует как ему вздумается - к примеру: если изделие из такого-то цеха и поставляется в такой регион - коэффициент 1 для параметра #1.
Если параметр #1 имеет значение 1 и покупатель не плательщик НДС и из Лондона - то параметр №2 = 0.5

Не шучу! все так и представлено - важно в этом процессе - конечная стоимость, а она формируется такими вот правилами и значениями!
В следующей версии Лондона может и не быть вообще и второе правило переписано так: если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2!!!Так, отлично. То есть модель постоянна, постоянное количество таблиц и аттрибутов, меняется только код в процедуре расчёта, и всё?
spЭх молодость.. наивность...Спасибо за комплимент :-)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38352070
Гхостик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 sp:

Прочитай внимательно старый топик .

spда, и при этом необходимо чтобы, документы, выписываемые задним числом, правильно обрабатывались новой схемой и считали по старым данным!
Как раз по его мотивам: надо вести версионность алгоритмов. Это значит, в базе должны храниться как старые, так и новые версии алгоритмов расчета (хранимых процедур с разными именами), должна быть структура, в которой хранится, на какой период времени какой алгоритм действует, и должна быть сводная ХП, которая по дате расчета берет нужные версии расчетных ХП разных алгоритмов и считает по ним в сумме.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38352148
Фотография pureproft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spКот Матроскин,

План привести не могу по некоторым причинам но обрисовать его в общем могу так:
в плане есть около 15 постоянных списочных параметров с коэффициентами, не имеющими никакой привязки к предметной области!
а также имеется с 10 параметров условно постоянных.
Методолог эти параметры тусует как ему вздумается - к примеру: если изделие из такого-то цеха и поставляется в такой регион - коэффициент 1 для параметра #1.
Если параметр #1 имеет значение 1 и покупатель не плательщик НДС и из Лондона - то параметр №2 = 0.5

Не шучу! все так и представлено - важно в этом процессе - конечная стоимость, а она формируется такими вот правилами и значениями!
В следующей версии Лондона может и не быть вообще и второе правило переписано так: если это цех №1 и материал кожа, а начальник смены сегодня Пупки - параметр #2 = 2!!!
Если (вами названные) списочные параметры содержат не очень большое количество значений в каждом списке, то попробуйте вместо всех если то иначе ....(рыбу заворачивали) составить таблицу решений: ПСпис.1,ПСпис.2,.....,ПСпис.15,ПУслПост1,ПУслПост2,....,ПУслПост10 = какойто окончательный или промежуточный результат с которым можно воити в другую таблицу решений. Если одна или несколько таких таблиц покрывают львиную долю случаев алгоритм упрощается невероятно и дайте любителю по фантазировать с вариантами инструмент заполнения подобных таблиц.
Про версионность алгоритмов вам уже писали.

p.s. большой опыт ассемблера и особенно ковыряние в чужём коде с кучей логики давно заставил обязательно пробовать сначала такой вариант, т.е. зарание просчитать всё что можно просчитать заранее. А что не удаётся вынести в кучу мелких с поддержкой версионности модулей.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38352265
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гхостик,

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

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

да мы тоже после 3го изменения сели просчитывать варианты - но у нас фантазии на такие выкрутасы не работали!)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38352792
sp... маленькие изменения в цифрах, на самом деле являются изменениями в существующей схеме данных и там работы не на пару дней.

Охрентительно!

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

Схему вашей БД ф студию !
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38352865
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тролль Лейбус,

почитайте выше - схемы в том то и речь, что нету! - она каждый раз разная - основная таблица мало изменяется, зато таблицы справочников меняются очень сильно в плане изменения количества связей - бизнес-правила у методолога меняются в зависимости от его настроения, состояния атмосферы, желания пойти в туалет ну и остальное можете сами добавить...)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38353005
Inkelyad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пример почти из жизни. Для тех, кто не знает, как это бывает.

Есть в системе процедуры вычисления стоимости доставки какой-то транспортной компанией.
Соответственно, есть небольшая кучка справочников, с этим связанная. Куда старательно
перенесены данные и алгоритм вычисления из документов этой компании. Исходные данные (например) масса груза/размеры/пункт доставки.

И вот в какой-то момент транспортную компанию решают сменить.
Новая компания, разумеется, все по другому и по своему считает. С исходными данными
тип используемой стандартной тары/расстояние/требуемое время доставки.

Приходится в базу и софт вписывать новые схемы и новые модули вычисления.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38353318
Inkelyad,

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

Например, встал методолог не с той ноги (или у методологички сложные дни) - програмер покивал головой (мол, усё сделаем), залез в хранимую процедурку (ALTER PROCEDURE ...) и глядь - через полдня усё действительно готово - процедурка выдаёт другой результат в соответствии с изменившимися правилами.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38353520
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Long Live Torrent Trackers !Ну в том-то и дело, что в нормально спроектированной БД при изменении бизнес-правил меняются только алгоритмы вычислений хранимых процедур (ну может еще несколько функций). Но уж никак не таблички и взаимосвязи между ними.

Это только скудость фантазии. В жизни конечно все не так.
Без машины времени в принципе нельзя знать заранее как повернёт бизнес завтра.
Смотри пример выше.
На первом этапе может тара вобще не рассматривалась как критерий и не учитывалась.
А следуюшим этапом будет вобще переход с расчёта за поездку к оплате за перевезённуё тонну.
А вы всё будете пытатся засунуть модели бизнеса в устаревшее представление модели.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38353763
mikronЭто только скудость фантазии. В жизни конечно все не так.
Без машины времени в принципе нельзя знать заранее как повернёт бизнес завтра.


Это у вас буйство фантазии, а не у меня скудость.

mikronНа первом этапе может тара вобще не рассматривалась как критерий и не учитывалась.
А следуюшим этапом будет вобще переход с расчёта за поездку к оплате за перевезённуё тонну.


Если ЭТО условие влечет за собой изменение схемы вашей БД, то отсюда вывод - вам противопоказано заниматься проектированием БД. И вам лучше не приближаться ни к какой БД вообще (ну может быть только к той, которая read only).
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38353928
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Long Live Torrent Trackers !Например, встал методолог не с той ноги (или у методологички сложные дни) - програмер покивал головой (мол, усё сделаем), залез в хранимую процедурку (ALTER PROCEDURE ...) и глядь - через полдня усё действительно готово - процедурка выдаёт другой результат в соответствии с изменившимися правилами.

Если возможно алгоритмы расчета тех же тарифных планов держать в исключительно в коде и каждый раз их дорабатывать силами программистов - это халява.
Зачастую задача стоит так, чтобы эти алгоритмы настраивали пользователи, их можно было легко посмотреть в системе, и т.д. Т.е. хранить в базе нужно не данные для алгоритма, а сам алгоритм.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38353940
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Long Live Torrent Trackers !Это у вас буйство фантазии, а не у меня скудость.
Сразу видна молодая горячая кровь.
Это не буйство, это опыт. А с моей то фантазией или скорее её ущербностью я даже пытатся не буду предугадать. Я ещё раз повторю свою тезу: в принципе нельзя знать заранее как повернёт бизнес завтра. Можно пытатся минимировать риски возможных сценариев развития событий. Но только бизнес знает эти риск, и он же должен принимать решения о целесообразности каких либо действий. А программистов -астрологов, -провидцев и -гадателей надо ставить перед выбором профессии.

[quot Long Live Torrent Trackers !]mikronmikronНа первом этапе может тара вобще не рассматривалась как критерий и не учитывалась.
А следуюшим этапом будет вобще переход с расчёта за поездку к оплате за перевезённуё тонну.


Если ЭТО условие влечет за собой изменение схемы вашей БД, то отсюда вывод - вам противопоказано заниматься проектированием БД. И вам лучше не приближаться ни к какой БД вообще (ну может быть только к той, которая read only).
Я уже понял что вы специалист ооочень широкого профиля. Программист-астролог-аудитор-тренер. Да чего уж там, без лишней скромности - икар.

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

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

Разработчиков, которые думают, что перемещение грузов может происходить посредством телепортации, нужно увольнять за профнепригодность. Без вариантов.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38354195
guest_20040621> На первом этапе может тара вобще не рассматривалась как критерий и не учитывалась.

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

Увы,
уважаемый mikron никак не может успокоиться и взять себя в руки (молодая горячая кровь).
Он все порывается по каждому чиху изменять схему БД.
Тара не рассматривалась как критерий, а теперь рассматривается - выход один - срочно менять схему БД !
Изменился цвет бутылок с зелёного на коричневый - спасёт только изменение схемы БД.
Бутылки были литровые, а стали двухлитровые - менять, менять схему БД !

Подозреваю, что на работе он так всё же не делает.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38354527
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Подозреваю, что на работе он так всё же не делает.

Imho беспочвенные подозрения. Чел вполне искренен.

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

Дейт написал великолепную книгу. В ней не хватает буквально нескольких глав, которые определили бы ключевые парадигмы. Что есть сущность и процесс, какова между ними разница? Каковы практические критерии атомарности? Каким образом формализуются определения сущностей и процессов? Что представляет собой жизненный цикл сущностей и процессов? Были бы написаны ответы на эти вопросы, 99% сообщений в форуме бы не было.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38354823
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинmikronПокажите как вы проведёте изменение системы не внося изменений в схему бд при условии
пропущено...

Другой вопрос что непонятно зачем именно такое ограничение (не изменять структуру). Говорить имеет смысл о минимизации изменений вообще, код + структура.

Это был персоналный вопрос астрологу любителю.
Он утверждал что изменения схемы не требуются даже если аттрибут "тара" в системы не учитывается. Вот из какого астралного канала он собирался брать ету информацию я и хотел от него услышать. Ждёмсс.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38354832
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[Long Live Torrent Trackers !] + [guest_20040621]

Если вы хотите обсуждать меня и мою работу то я в принципе и не против, но идите в отделный топик и оплодотворяте там себя духовно.

http://www.sql.ru/forum/question-answer
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38355944
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> идите

Дружище, всё просто: вы не говорите, что мне делать, я не говорю, куда вам идти. Легко запомнить. Что до вашей работы, ты вы льстите себе, думая, что её кому-то интересно обсуждать: ваши комментарии сказали о её качестве гораздо больше, чем вы хотели.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38356216
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621Дружище, всё просто: вы не говорите, что мне делать, я не говорю, куда вам идти. Легко запомнить. Что до вашей работы, ты вы льстите себе, думая, что её кому-то интересно обсуждать: ваши комментарии сказали о её качестве гораздо больше, чем вы хотели.

Во первых у меня нету друзей придурков и умственноотсталых.
Во вторых: вы же обсуждаете, но мне это не льстит.
Но и в третьих, ваше говнометание хотя и оффтоп но создаёт фон, котоый только подчёркивает мой проффесионализм.
Топик конечно жалко, но вас же это не остановит, так что продолжайте, хоть мне на ПР сработаете.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38356782
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> у меня нету друзей придурков и умственноотсталых.

Это хорошо. Если бы вы чуть лучше знали русский язык, то отметили бы для себя интересный факт. Назвать быдло быдлом - просто. Сложнее - создать у адресата подозрение подвоха, явно не идентифицируемого, заставить его быть агрессивным. Что и было блестяще проделано. Причём, очень компактно и эффективно. Домашнее задание: определить, каким образом ваша реакция сыграла против вас.

> вы же обсуждаете, но мне это не льстит.

Не выдавайте желаемое за действительное. Лезть в код каждого олигофрена - жизни не хватит. Пишу я исключительно для того, чтобы ваша самооценка соответствовала вашей квалификации. У вас в голове, не у окружающих.

> котоый только подчёркивает мой проффесионализм.

Дружище, вы бредите.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38356894
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> На первом этапе может тара вобще не рассматривалась как критерий и не учитывалась.

Разработчиков, которые думают, что перемещение грузов может происходить посредством телепортации, нужно увольнять за профнепригодность. Без вариантов.
конечно.. eav для ВСЕГО - решит все проблемы :)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357149
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> вы же обсуждаете, но мне это не льстит.

Не выдавайте желаемое за действительное. Пишу я исключительно для того, чтобы ваша самооценка соответствовала вашей квалификации. У вас в голове, не у окружающих.

Значит реч всё же обо мне. Кто вы такой что бы оценивать мою квалификацию? и на основании чего?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357244
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Значит реч всё же обо мне.

Не совсем. Речь о том, что быдлокодеры должны очень осторожно выбирать время, место и аудиторию для словоизлияния.

> Кто вы такой что бы оценивать мою квалификацию? и на основании чего?

Дружище, вас не должно беспокоить, кто я. Ник guest_20040621 на sql.ru - это бренд. Несмотря на анонимность. Многие из пользователей могли бы пенять на мою несдержанность или излишнюю эмоциональность, но никто - на отсутствие профессиональных знаний.

Вообще, вы бы пользовались какой-нибудь тулзой для проверки орфографии и пунктуации, - хотя бы встроенной в браузер. Неприятно читать писанину безграмотного двоечника. К слову о коде, да? - научитесь говорить на родном языке, чтобы был повод оценивать ваши навыки владения машинными языками.

Мне не интересен контакт с вами. Всё, что считал необходимым до вас донести, донёс.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357421
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> Значит реч всё же обо мне.

Не совсем. Речь о том, что быдлокодеры должны очень осторожно выбирать время, место и аудиторию для словоизлияния.

> Кто вы такой что бы оценивать мою квалификацию? и на основании чего?

Дружище, вас не должно беспокоить, кто я. Ник guest_20040621 на sql.ru - это бренд. Несмотря на анонимность. Многие из пользователей могли бы пенять на мою несдержанность или излишнюю эмоциональность, но никто - на отсутствие профессиональных знаний.

Вообще, вы бы пользовались какой-нибудь тулзой для проверки орфографии и пунктуации, - хотя бы встроенной в браузер. Неприятно читать писанину безграмотного двоечника. К слову о коде, да? - научитесь говорить на родном языке, чтобы был повод оценивать ваши навыки владения машинными языками.

Мне не интересен контакт с вами. Всё, что считал необходимым до вас донести, донёс.
"guest_20040621 - это бренд" я даже больше скажу - это как лакмусовая бамажка.
Вопрос остался открытым: кто скрывается за "брендом"? соберём факты:
В этот топик вы написали 5 раз. По теме топика - 0.
советы отделу кадров, "говнокодеры", пользователи, последние считают профессионалом, не сдержан, излишне эмоционален, пренебрежительное отношение к разработчикам, выраженное графоманство, убеждён что глупость написанная орфографически верно обязать быть верной.
Могу предположить что вы работаете в тех. поддержке или очень смежной/схожей специальности. Я угадал?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357452
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621Всё, что считал необходимым до вас донести, донёс.
Если ты нёс но не что не донёс значит ты ничего не принёс. (С)
Я понимая вашу дилему: по теме вам сказать нечего а без темы кому нужны вы и ваши жизненные советы. С другой стороны я уже так много отвечаю на ваши посты, что просто сбежать уже не вежливо. Пожалуйста, продожайте изливатся мудростью.

@ модераторам, пожалуйста отдайте нам эту площадку на пару дней , а потом потрите.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357528
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Экий настырный юноша-мазохист. ОК, переведём разговор в практическую плоскость. Мои ответы для вас будут стоить $800/академический час, минимальный контракт - пятидневная рабочая неделя. Дайте знать, когда будете готовы платить. Время для вас смогу выбрать где-нибудь ближе к концу года.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357568
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621Экий настырный юноша-мазохист. ОК, переведём разговор в практическую плоскость. Мои ответы для вас будут стоить $800/академический час, минимальный контракт - пятидневная рабочая неделя. Дайте знать, когда будете готовы платить. Время для вас смогу выбрать где-нибудь ближе к концу года.
С тех поддержкой не совсем угадал. С практической точки зрения расценки скорее похожи на элитную проститутку. Выкладывайте своё CV что бы не было недоразумений. Если вы нам понравитесь мы вас наймём на неделю и сделаем нам всем хорощий подарок к новому году.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357592
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дружище, это минимально разумные деньги, за которые я готов что-то писать. Только всё немного не так, как вы себе представляете. Не я вам буду рассказывать, что я знаю и умею, а вы постараетесь заинтересовать меня своими задачами. Сумеете - что, если честно, сомнительно - будем считать, что вам повезло. Нет - как это обычно бывает - пойдёте туда же, куда все обычно и идут.

Можете начинать.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38357642
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если действительно сможете заинтересовать, - готов работать бесплатно при условии свободного распространения исходного кода.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38358044
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621 & mikron

Ребята, давайте жить дружно!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38358738
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Ребята, давайте жить дружно!

Никаких проблем. Видите ли, жутко раздражает, когда без каких бы то ни было причин люди начинают делиться тем, чего у них нет и никогда не было. Раздражает неадекватная самооценка. Раздражают стереотипы. Чел - не первый, кто пренебрежительно отнесся к анонимному нику, хотя - это очевидно - даже пятьсот легальных аккаунтов не добавят пользователю знаний. Из мелочей складывается общая оценка. Намерения специально кого-то обидеть нет.

Чтобы вы, mikron, не бродили в потемках, вот вам пример интересной задачи. Есть индекс международной безопасности iSi. Предложите методику, позволяющую автоматизировать его расчет. Намеренно определил задачу максимально расплывчато, чтобы не ограничивать вашу фантазию. Факультативно: попробуйте сформулировать, чем интересна эта задача.

И - традиционно - домашнее задание. Очень простое. "Мысли у него были маленькие-маленькие, коротенькие-коротенькие, пустяковые-пустяковые", - Назовите автора и произведение.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38358946
Фотография Chop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spПоделитесь пожалуйста опытом борьбы с таким явлением. Есть ли какие либо способы или шаблоны проектирования такого безобразия!? )1. когда Заказчик грит "у меня в таблице Контрагентов будет только три номера телефона, зуб даю" -
я автоматом создаю подчиненную таблицу "один-ко-многим", а не добавляю три поля в таблицу контрагентов
2. для расчета тарифов реализовал N-мерную матрицу в БД,
после этого - что цифирки меняйте, что количество параметров...

как-то так...

грят, еще можно доки сохранять одним xml-полем...
без изменения структуры БД доки можно ваять хоть по одному новому каждый час :)
никогда не видел, только слышал :)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38358955
Фотография Chop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sp...обрисовать его в общем могу так:
в плане есть около 15 постоянных списочных параметров с коэффициентами, не имеющими никакой привязки к предметной области!
а также имеется с 10 параметров условно постоянных.
не вижу проблемы...

1. многомерная матрица/куб в БД (в моей реализации это было дерево+ЕАВ)
2. создание нового тарификатора на основании предыдущего (для упрощения ввода новых цифирь и параметров)
3. "запоминание" периода действия "тарификатора"

фсе... документы никакие не меняются, структура БД не меняется
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38359924
Inkelyad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну ладно. Для "разминки".
один тарифный документ , еще один .

Изначально система была заточена, скажем, под второй. Можно наброски схемы, которая
потом легко и просто может быть использована и с первым? И, самое главное, это понять можно ли будет? Или новому человеку придется понимать, как все эти таблицы Универсального Вычислителя Тарифов между собой связаны и работают?

И да, в этих документах только кажется, что все каким-то закономерностям следует. В реальности выясняется, что есть какие-то населенные пункты вроде Байконура, которые в эти 'закономерности' не укладываются.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38360149
Фотография Chop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InkelyadНу ладно. Для "разминки".
один тарифный документ , еще один .

Изначально система была заточена, скажем, под второй. Можно наброски схемы, которая
потом легко и просто может быть использована и с первым? И, самое главное, это понять можно ли будет? Или новому человеку придется понимать, как все эти таблицы Универсального Вычислителя Тарифов между собой связаны и работают?

И да, в этих документах только кажется, что все каким-то закономерностям следует. В реальности выясняется, что есть какие-то населенные пункты вроде Байконура, которые в эти 'закономерности' не укладываются.не увидел проблем...
набросок схемы не можно, увы и ах,
моя вам не подойдет, сидеть над вашей задачей - оно денег стоит,
это не на 5 мнут троллинга на форуме
подсказка уже дана - N-мерная матрица/куб - дерзайте, спрашивайте, обсуждайте

пысы: если прог не может реализовать реальность в своих терминах/схемах, то зачем нам такой прог? :)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38360249
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Chop не вижу проблемы...



Но в то же время

Chopв моей реализации это было ....+ЕАВ)


Наличие ЕАВ, скорее всего, все же есть нечто вызывающее обеспокоенность. Ну, в самом деле, юзается же РСУБД, а не ЕАВСУБД.
Как бы получается ухищрение, узкое место в общем случае
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38360260
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Inkelyad,

Не вижу, с чем тут не справиться приведенной мной схеме.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38360445
Inkelyad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кот МатроскинInkelyad,

Не вижу, с чем тут не справиться приведенной мной схеме.
Проблема не в этом. Справится можно.
Проблема в том, что потом универсальную схему несколько труднее понимать и использовать, чем схему, 'заточенную' по термины конкретного способа вычисления тарифа.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38360667
Cane Cat Fisher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тоже не вижу проблем, если спокойно применить эволюционный подход. Сделайте для каждого варианта нормальную реляционную схему. Если постановка расширяется, меняется - сделайте новые поля, или новые таблицы. Организуйте код, чтобы "диспетчеризация" старых-новых полей-таблиц сидела строго в одном месте сервисного слоя системы. Работайте только через этот слой.

Преимущества: каждый отдельный кусок БД остается простым, понятным, реляционным - со справочниками, связями, декларативным контролем целостности и т.д. Не боится расширения в любую сторону.

Все это, как и мнения предыдущих ораторов, доказывает: нет ничего сложного в работе, которую не обязан делать сам :-)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38370704
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Long Live Torrent Trackers !Inkelyad,

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

Например, встал методолог не с той ноги (или у методологички сложные дни) - програмер покивал головой (мол, усё сделаем), залез в хранимую процедурку (ALTER PROCEDURE ...) и глядь - через полдня усё действительно готово - процедурка выдаёт другой результат в соответствии с изменившимися правилами.

а кто constraints будет ослеживать? как на клиенте логику менять?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38370708
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Long Live Torrent Trackers !guest_20040621> На первом этапе может тара вобще не рассматривалась как критерий и не учитывалась.

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

Увы,
уважаемый mikron никак не может успокоиться и взять себя в руки (молодая горячая кровь).
Он все порывается по каждому чиху изменять схему БД.
Тара не рассматривалась как критерий, а теперь рассматривается - выход один - срочно менять схему БД !
Изменился цвет бутылок с зелёного на коричневый - спасёт только изменение схемы БД.
Бутылки были литровые, а стали двухлитровые - менять, менять схему БД !

Подозреваю, что на работе он так всё же не делает.

уподдерживаю предыдущих товарищей - вы товарисч - Троль - если у вас меняется схема данных а вы ее не меняете в БД, а все держите в коде - подпускать вас к проектированию БД опасно - у вас нет представления зачем нужны БД
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38370711
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durakконечно.. eav для ВСЕГО - решит все проблемы :)

+1, и Эксель его лучший брат!)))
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38370718
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChopspПоделитесь пожалуйста опытом борьбы с таким явлением. Есть ли какие либо способы или шаблоны проектирования такого безобразия!? )1. когда Заказчик грит "у меня в таблице Контрагентов будет только три номера телефона, зуб даю" -
я автоматом создаю подчиненную таблицу "один-ко-многим", а не добавляю три поля в таблицу контрагентов

тут все понятно и банально..

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

т.е. если у меня 24 параметра и многие из них списочные с иерархическими зависимостями от других параметров - вы предлагаете строить (затрудняюсь как называется такое...) 24х24Х...... куб или как его там получится????

Chopкак-то так...

грят, еще можно доки сохранять одним xml-полем...
без изменения структуры БД доки можно ваять хоть по одному новому каждый час :)
никогда не видел, только слышал :)

В этом варианте вам и БД не нужна - держите все в коде! - БД нужна для хранения непротиворичивых и целостных данных, а в случае с xml - это просто текст а не БД!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38370720
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Chopне вижу проблемы...

1. многомерная матрица/куб в БД (в моей реализации это было дерево+ЕАВ)
2. создание нового тарификатора на основании предыдущего (для упрощения ввода новых цифирь и параметров)
3. "запоминание" периода действия "тарификатора"

фсе... документы никакие не меняются, структура БД не меняется

я вам таки ее добалю...)
параметры - не просто одинокие цыхверки - а справочники с иерархическими зависимостями между другими справочниками-списками
Интересно как вы ничего не будете менять если меняются связи и условия в этих иерархических зависимостях?
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38370726
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cane Cat FisherЯ тоже не вижу проблем, если спокойно применить эволюционный подход. Сделайте для каждого варианта нормальную реляционную схему. Если постановка расширяется, меняется - сделайте новые поля, или новые таблицы. Организуйте код, чтобы "диспетчеризация" старых-новых полей-таблиц сидела строго в одном месте сервисного слоя системы. Работайте только через этот слой.

Преимущества: каждый отдельный кусок БД остается простым, понятным, реляционным - со справочниками, связями, декларативным контролем целостности и т.д. Не боится расширения в любую сторону.

Все это, как и мнения предыдущих ораторов, доказывает: нет ничего сложного в работе, которую не обязан делать сам :-)

Спасибо за конструктивный и рациональный ответ!
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38374960
Фотография Chop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spChop2. для расчета тарифов реализовал N-мерную матрицу в БД,
после этого - что цифирки меняйте, что количество параметров...т.е. если у меня 24 параметра и многие из них списочные с иерархическими зависимостями от других параметров - вы предлагаете строить (затрудняюсь как называется такое...) 24х24Х...... куб или как его там получится????я как-то не интересовался какой там куб получается NxN или MxM,
ни мне, ни БД до этого никакого дела нет,
это не имеет никакого значения :)

в БД как было 3-4 (уже не помню, сколько точно) таблицы,
так и остается
структура БД тоже неизменна,
а сколько параметров понадобиться Пользователю туда вогнать - решает Пользователь
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38374974
Фотография Chop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spChopне вижу проблемы...

1. многомерная матрица/куб в БД (в моей реализации это было дерево+ЕАВ)
...

фсе... документы никакие не меняются, структура БД не меняетсяя вам таки ее добалю...)
параметры - не просто одинокие цыхверки - а справочники с иерархическими зависимостями между другими справочниками-списками
Интересно как вы ничего не будете менять если меняются связи и условия в этих иерархических зависимостях?параметр он параметр и есть,
подозреваю, что под "параметр - справочник" вы подразумеваете,
что каждый элемент справочника используется как параметр
ничего от этого не меняется,
вместо текстового/цифрового значения будет стоять ссылка,
только и всего
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38378274
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Chopпараметр он параметр и есть,
подозреваю, что под "параметр - справочник" вы подразумеваете,
что каждый элемент справочника используется как параметр
ничего от этого не меняется,
вместо текстового/цифрового значения будет стоять ссылка,
только и всего

Нет - вы неправильно подозреваете: параметр-список это список, значение которого выбирается в зависимости от текущих значений нескольких связанных параметров-списков. К примеру: если сегодня день недели (список дней недели) - пятница и руководит цехом Иванов (список руководителей цеха) и сегодня 3я фаза лунного цикла (список фаз) то в суп добавить 1.5767 мг соли. При других значениях зависимостей - другое значение соли - список. Да, еще и при этом каждое значение в списках "день недели", "руководители цеха", "фазы луны" имеют свои весовые коэффициенты, которые участвуют в расчете других параметров.!
Как вам такая каша!?) думаете выдумываю - нет! утрирую -да!)
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38379839
Фотография Chop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spChopпараметр он параметр и есть...Нет - вы неправильно подозреваете: параметр-список это список, значение которого ...
Как вам такая каша!?) думаете выдумываю - нет! утрирую -да!)то, что вы рассказали, и есть взаимосвязанные списки параметров...
нет там никакой каши...
не думаю, что вы выдумываете - вполне нормальная ситуация
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38414586
mikronНо и в третьих, ваше говнометание хотя и оффтоп но создаёт фон, котоый только подчёркивает мой проффесионализм
Писать грамотно сначала научись, проФФесионал ...
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38415690
mikron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Long Live Torrent Trackers !Писать грамотно сначала научись, проФФесионал ...
Связь между "грамотно писать" и "професионал" распространяется наверно только на журналистов.
Алберт Энштейн был например легастеником.
Но помимо лигастении есть ещё и другие аномалии. твои случай больше похож на графоманию . И когда будеш читат, загляни в смежным слинкованые темы.
...
Рейтинг: 0 / 0
Как бороться с частыми изменениями схемы данных?
    #38415942
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mikron, дружище, вам удобно делать замечания окружающим сидя в луже и обделавшись? Стирайтесь и сушитесь. Молча. Это будет разумным вариантом поведения.
...
Рейтинг: 0 / 0
103 сообщений из 103, показаны все 5 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как бороться с частыми изменениями схемы данных?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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