Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Имеется база данных, SQL Server, работающая в режиме 24/6. Примерно чуть более 20 тыс одновременных пользователей, несколько тысяч одновременных пользователей глубокой ночью. Периодически выходят новые версии системы, на базу данных накатываются скрипты, переводящие ее к новой версии. Перевод к новой версии занимает несколько часов, обычно 2-4 часа. Руководство теперь хочет чтобы система работала 24/7, для этого есть причины. В обычные выходные это несложно обеспечить, но при переходе на новую версию так не получится. Простой все равно будет, но его время надо как-то уменьшать. Идеи как это сделать имеются, но интересен опыт других. Сталкивался ли кто-нибудь с похожей проблемой, как решали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 14:15 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsm, Да. Видел я такое. База изначально проектировалась так, что таблицы не обновлялись. Остальное вертелось и обновлялось штатным образом... Данные хорошо реплицировались но логика была слишком тяжела. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 14:22 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmРуководство теперь хочет чтобы система работала 24/7, для этого есть причины. Для обеспечения этого понадобится кластер. С ним всё просто: отключаешь одну ноду, обновляешь её, переключаешь на неё систему, повторяешь обновление на второй ноде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 14:42 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
У вас на какие именно изменения уходит больше всего времени? Структуры, данных, еще чего-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 15:13 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovandsmРуководство теперь хочет чтобы система работала 24/7, для этого есть причины. Для обеспечения этого понадобится кластер. С ним всё просто: отключаешь одну ноду, обновляешь её, переключаешь на неё систему, повторяешь обновление на второй ноде. Такое может работать, только если данные не изменяются. Иначе потеряются данные, измененные за время обновления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 15:58 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Гавриленко Сергей АлексеевичУ вас на какие именно изменения уходит больше всего времени? Структуры, данных, еще чего-то? Основное - изменение данных. Структуру поменять легко и быстро. И, усложняющий фактор, вообще-то БД это не одна БД, одна БД не справилась бы с нагрузкой. Это более 15 географически распределенных серверов SQL Server, на каждом из которых находится одна база данных. Все базы данных между собой соединены репликацией, реализован шардинг, геокластеры, и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 16:05 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsm, не изменять апгрейдом кучу данных не предлагать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 16:12 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Пользователи читатели? Если да, то возможно поможет database snapshot. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 16:36 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
WarAntandsm, не изменять апгрейдом кучу данных не предлагать? Разумеется. Если бы настолько очевидное решение подходило бы, то и вопроса бы не было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 16:50 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
invmПользователи читатели? Если да, то возможно поможет database snapshot. Нет конечно, активно пишут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 16:51 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Похоже, очень редко встречающаяся задача, судя по отсутствию идей в топике. При этом, не сказать чтобы она не имеет решений. Я как-то переводил БД с одной схемы данных на совсем другую, тоже для 24/7 системы и с активно пишущими пользователями. Некоторые таблицы превращались в несколько других таблиц, некоторые таблицы наоборот объединялись. Содержимое многих полей менялось при обновлении, и т.п. Размер БД был примерно 1.5 Тб. Так вот, время простоя составило 15 секунд. Да-да, секунд. Другое дело, что разработка такого перехода заняла несколько месяцев. Хочется поискать менее трудоемкие варианты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 16:59 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Да, решали подобную задачу и кучу раз. Решается репликацией и только репликацией.(крастера типа AlwaysOn, онлайн индексы это другие задачи). Задача эта очень обширная, чего вас конкретно интересует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:15 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
В контексте того что у вас используется репликация, тем более вы должны понимать концепт того каким образом это решать и сколько это будет стоить. Еще момент, если архитектурно в самом начале разработки системы не было принято стратегическое о ее дальнейшей работе в 24*7 то это может быть и нерешаемой задачей(то есть без окон не обойтись никак). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:28 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmРуководство теперь хочет чтобы система работала 24/7, для этого есть причины. В обычные выходные это несложно обеспечить, но при переходе на новую версию так не получится. Простой все равно будет, но его время надо как-то уменьшать. Идеи как это сделать имеются, но интересен опыт других.Если было требование 24х7, то обновления мы писали так, что бы не прерывать работу системы. Сделать это не просто, а очень просто, так что это вопрос административный, а не технологический. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:38 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmWarAntandsm, не изменять апгрейдом кучу данных не предлагать? Разумеется. Если бы настолько очевидное решение подходило бы, то и вопроса бы не было.Вообще трудно представить обновление, для которого нельзя придумать способ сделать его так, что бы это не затронуло пользователей. Хотелось бы пример, тем более чсто вы говорите про это, как о чём то очевидном. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:41 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
МуМуВ контексте того что у вас используется репликация, тем более вы должны понимать концепт того каким образом это решать и сколько это будет стоить. Еще момент, если архитектурно в самом начале разработки системы не было принято стратегическое о ее дальнейшей работе в 24*7 то это может быть и нерешаемой задачей(то есть без окон не обойтись никак).Да, увидел дополнение про репликации... Согласен, тогда придётся что то либо менять в архитектуре, либо отказаться от идеи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:44 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
alexeyvgandsmпропущено... Разумеется. Если бы настолько очевидное решение подходило бы, то и вопроса бы не было.Вообще трудно представить обновление, для которого нельзя придумать способ сделать его так, что бы это не затронуло пользователей. Хотелось бы пример, тем более чсто вы говорите про это, как о чём то очевидном. я про то же, странная система которая требует переделки кучи данных при простом обновлении версии системы, на лицо кривая архитектура, явно не подразумевающая работу без остановки, и для такой архитектуры есть тольок два варианта, либо переписать либо открыть чулан с костылями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:47 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
МуМуДа, решали подобную задачу и кучу раз. Решается репликацией и только репликацией.(крастера типа AlwaysOn, онлайн индексы это другие задачи). Задача эта очень обширная, чего вас конкретно интересует? Так-то я тоже умею. Но уж очень это трудоемко... Хочется чего-нибудь попроще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:57 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
МуМуВ контексте того что у вас используется репликация, тем более вы должны понимать концепт того каким образом это решать и сколько это будет стоить. Еще момент, если архитектурно в самом начале разработки системы не было принято стратегическое о ее дальнейшей работе в 24*7 то это может быть и нерешаемой задачей(то есть без окон не обойтись никак). Без окон мы обходимся по факту и сейчас, но не во время обновления системы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:58 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
alexeyvgandsmпропущено... Разумеется. Если бы настолько очевидное решение подходило бы, то и вопроса бы не было.Вообще трудно представить обновление, для которого нельзя придумать способ сделать его так, что бы это не затронуло пользователей. Хотелось бы пример, тем более чсто вы говорите про это, как о чём то очевидном. Мелкие обновления у нас и так выходят без остановки системы. Речь то идет о выходе новой версии системы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 17:59 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmalexeyvgпропущено... Вообще трудно представить обновление, для которого нельзя придумать способ сделать его так, что бы это не затронуло пользователей. Хотелось бы пример, тем более чсто вы говорите про это, как о чём то очевидном. Мелкие обновления у нас и так выходят без остановки системы. Речь то идет о выходе новой версии системы.Так надо изменения версии делать по той же схеме, что и мелкие обновления. Знаете, из вашего описания ведь неявно следует, что новые версии клиентского софта не работают со старой версией базы, и наоборот. А это важный признак противоречия архитектуры и 24х7 Какая разница, можно ли останавливать базу, или нельзя, если клиент превращается ровно в пполночь превращается в тыкву? Впрочем, может, у вас клиент один, то есть сайт? Вот, значит, пора менять архитектуру на 24х7, раз бизнес захотел. То есть отойти от принципа "программисты ваяли-ваяли, работали-работали, и вот, у них готова новая версия. Она накатывается на сервер, и на клиент, и пока накатывают, ничего не работает." Значит, старый клиент (или Веб-сервер) должен работать с новой базой, все изменения в базе должны делаться без остановки, клиент тоже должен обновляться быстро (мы, правда, сессии всё таки теряли, не получалось без этого) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 18:24 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
WarAntalexeyvgпропущено... Вообще трудно представить обновление, для которого нельзя придумать способ сделать его так, что бы это не затронуло пользователей. Хотелось бы пример, тем более чсто вы говорите про это, как о чём то очевидном. я про то же, странная система которая требует переделки кучи данных при простом обновлении версии системы, на лицо кривая архитектура, явно не подразумевающая работу без остановки, и для такой архитектуры есть тольок два варианта, либо переписать либо открыть чулан с костылями. "Простое" обновления версии системы? Ну вот пример. Новая версия системы, выходит через несколько недель. 100+ скриптов по внесению изменению в данные и в схему. Чуть менее 1000 измененных хранимых процедур. Это можно назвать простым обновлением? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 18:30 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
alexeyvgЗнаете, из вашего описания ведь неявно следует, что новые версии клиентского софта не работают со старой версией базы, и наоборот. А это важный признак противоречия архитектуры и 24х7 Какая разница, можно ли останавливать базу, или нельзя, если клиент превращается ровно в пполночь превращается в тыкву? Впрочем, может, у вас клиент один, то есть сайт? Клиентский софт вообще не имеет прямого доступа к БД. Он соединяется к серверам приложений, и только серверные компоненты работают с БД. Работа с клиентскими приложениями идет по определенному протоколу, который при выходе версии не меняется, Вот для серверных компонентов версия БД важна. Обновление клиентских приложений вообще отдельная процедура, никак с выходом версии не связанный. И это не сайт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 18:44 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmWarAntя про то же, странная система которая требует переделки кучи данных при простом обновлении версии системы, на лицо кривая архитектура, явно не подразумевающая работу без остановки, и для такой архитектуры есть тольок два варианта, либо переписать либо открыть чулан с костылями. "Простое" обновления версии системы? Ну вот пример. Новая версия системы, выходит через несколько недель. 100+ скриптов по внесению изменению в данные и в схему. Чуть менее 1000 измененных хранимых процедур. Это можно назвать простым обновлением?А что такого? Каждое изменение, каждый скрипт, делается так, что бы система как работала, так и продолжала работать. Даже серьёзное изменение модели (типа, было несколько таблиц, стало несколько совсем других таблиц, связанных по другому, и с другими данными) можно делать так, что бы всё продолжало работать. Конечно, общий деплой сначала обкатывается на копии продакшен-системы, и проверяется тестерами; ну, это уже в принципе банальная органицация изменений, это само собой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 18:45 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmalexeyvgВпрочем, может, у вас клиент один, то есть сайт? Клиентский софт вообще не имеет прямого доступа к БД. Он соединяется к серверам приложений, и только серверные компоненты работают с БД. Работа с клиентскими приложениями идет по определенному протоколу, который при выходе версии не меняется, Вот для серверных компонентов версия БД важна.А, ну ок, это даже лучше, удобнее контролировать. Под "сайт" я имел в виду некую единую, контролируемую вами, систему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 18:47 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
alexeyvgПод "сайт" я имел в виду некую единую, контролируемую вами, систему. Как раз клиентскую сторону никак не проконтролировать. Можно только, со временем, отключать поддержку старых протоколов. Но к вопросу изменения версии БД это, думаю, уже не относится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 18:53 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
alexeyvgА что такого? Каждое изменение, каждый скрипт, делается так, что бы система как работала, так и продолжала работать. Даже серьёзное изменение модели (типа, было несколько таблиц, стало несколько совсем других таблиц, связанных по другому, и с другими данными) можно делать так, что бы всё продолжало работать. Я думаю, это практически нереально. При таком подходе слишком высокий риск появления багов в коде. И если для какого-нибудь сайта это может быть допустимо, то для финансовой системы это не допустимо. Качество должно быть на первом месте. alexeyvgКонечно, общий деплой сначала обкатывается на копии продакшен-системы, и проверяется тестерами; ну, это уже в принципе банальная органицация изменений, это само собой. Ну это само собой, хотя и этого вообще-то недостаточно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 19:02 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsm, 24/7 - это Enterprise edition + Always on. Придется раскошелиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 22:53 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
На обновление версий уходит пара минут, онлайн-платежи этого не чувствуют, к примеру. С учетом методик рефакторинга баз данных переезд на новые версии можно делать практически бесшовным. Поищите книгу "Рефакторинг баз данных эволюционное проектирование". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 22:58 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsm, Попробуйте перейти на недельные релизы, тогда объем изменений будет невелик, соответственно и периоды обновления будут меньше по длительности. Доведете их, скажем, до 15 минут в неделю - большинство пользователей это должно устроить. Обновления с учетом изменений делать можно, но это довольно сложно, по сути трудоемкость разработки будет существенно выше (в разы). И все равно тогда 100% кому-то придется оправдываться в духе "я забыл, я это не учел", а кому-то придется это слушать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2019, 23:06 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmalexeyvgА что такого? Каждое изменение, каждый скрипт, делается так, что бы система как работала, так и продолжала работать. Даже серьёзное изменение модели (типа, было несколько таблиц, стало несколько совсем других таблиц, связанных по другому, и с другими данными) можно делать так, что бы всё продолжало работать. Я думаю, это практически нереально. При таком подходе слишком высокий риск появления багов в коде. И если для какого-нибудь сайта это может быть допустимо, то для финансовой системы это не допустимо. Качество должно быть на первом месте.Я не вижу разницы в смысле "качества". Но это в принципе неважно. Если вы говорите, что система должна прекращать функционирование на период обновления, что любые средства уменьшения времени простоя недопустимо, потому что "Качество должно быть на первом месте", то непонятен вопрос топика. Получается, исходный вопрос ставится так: "Как уменьшить время простоя, при условии, что его уменьшать недопустимо?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2019, 10:50 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
КритикПопробуйте перейти на недельные релизы, тогда объем изменений будет невелик, соответственно и периоды обновления будут меньше по длительности. Доведете их, скажем, до 15 минут в неделю - большинство пользователей это должно устроить.Сомневаюсь, что это уменьшит время простоя. Конечно, надо анализировать процесс, но наверняка основное время уходит на включение и повторную инициализацию репликаций КритикОбновления с учетом изменений делать можно, но это довольно сложно, по сути трудоемкость разработки будет существенно выше (в разы). И все равно тогда 100% кому-то придется оправдываться в духе "я забыл, я это не учел", а кому-то придется это слушать.Конечно, трудоёмкость увеличится, скрипты деплоя будут сложнее, даже не скрипты как таковые, а усложняется процесс плавного бесшовного изменения при некоторых модификациях модели. А ошибки будут и при варианте с остановкой системы на период обновления. Какая разница то? Тут какой то особой зависимости нет, кроме очевидного "количество багов пропорционально количеству кода". Бизнес заказал дополнительную функциональность, добавились ошибки по этой функциональности, как и должно быть. Что бы их не добавлять, единственный вариант - ничего не делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2019, 11:00 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmЯ как-то переводил БД с одной схемы данных на совсем другую, тоже для 24/7 системы и с активно пишущими пользователями. Некоторые таблицы превращались в несколько других таблиц, некоторые таблицы наоборот объединялись. Содержимое многих полей менялось при обновлении, и т.п. Размер БД был примерно 1.5 Тб. Так вот, время простоя составило 15 секунд. Да-да, секунд. Другое дело, что разработка такого перехода заняла несколько месяцев. Хочется поискать менее трудоемкие варианты.Да-да, вот, возможно же. Но придётся заплатить трудоёмкостью. Как иначе решить такую задачу? Кнопки волшебной нет. Именно так все и делают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2019, 11:19 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Владислав Колосов24/7 - это Enterprise edition + Always on. Придется раскошелиться.У автора вопрос в другом. Есть достаточно сложная система, состоящая из множества серверов СУБД, серверов приложений, клиентского софта и т.д. Нету такого "Enterprise edition + Always on", который бы включал все эти компонеты. Что бы половинку можно было бы обновить, а потом оно бы само синхронизировалось (например, при изменении модели данных). И без потери траназкций. И что бы ничего не писать, и что бы гарантированно рисков/багов не добавилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2019, 11:23 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
alexeyvg, тогда только методики рефакторинга баз данных помогут с обязательным Test Driven Development. Эти две компоненты как раз и обеспечивают 24/7 при публикациях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2019, 13:40 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
andsmпотеряются данные, измененные за время обновления. Не потеряются: накатятся после возврата обновлённой ноды в строй. Просто надо сразу закладываться на multimaster и сосуществование баз разных версий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2019, 14:25 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Вообще то изначально хорошо когда стретегически прописывается и учитывается возможность работы 24*7 в ИТ системе. Простейший пример, вы делаете изменения на Table1, например добавляете вычисляемое агрегационное поле. При разработке должны быть прописаны изменения которые пойдут в продуктив с учетом 24*7. То есть должна быть реплика с таблицы Table1 в копию Table_Guid, сервер приложения должен учитывать состояние реструктуризации, вычисляемое поле должно учитывать работу с ненулевой очередью репликации,до какого то момента работать по старому а потом уже по новому(потом замена таблиц). Разумеется это доп. нагрузка на систему(возможны доп. блокировки на репликаторе), разумеется это требования к разработке и накатыванию релизов, это всегда доп. трудозатраты и доп. риски. Ну а куда без этого. Тоже самое касается системы в которой нужно обеспечить регулярную полуавтоматическую или автоматическую обрезку, если с самого начала при разработке описывают правила обрезки, устаревания НСИ, секционирования то все просто. Если есть историческая монструозная система и говорят мы ее хотим обрезать - то это целый проект, в большинстве случаев по изменению ее архитектуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2019, 16:42 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Но по личному примеру подобные вопросы даже если и ставятся при создании ИТ системы то регламенты разработки со временем не поддерживаются и потому все равно серьезное структурное изменение превращается в творчески-исследовательскую задачу с ненулевыми рисками создания простоя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2019, 16:49 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
МуМу, По моему, у вас описан какой то аццки сложный алгоритм :-) Для добавления поля можно придумать более простые методы, без всяких сложных репликаций, которые как раз и могут создать проблемы. Сложные схемы приходится придумывать для более сложных изменений, да ещё связанных с большими объёмами данных (например, большую таблицу, занимающую весь рейд, превратить в секционированную, без остановки). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2019, 16:55 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
Алгоритм с полем приведен как пример когда в логике приложения это поле учавствует, то есть раньше считалась какая то сумма из чего то а вот теперь решили сделать агрегацию. Получилось две ветки алгоритма, старый и новый. При учете непрерывности работы системы должны на сервере приложения работать два алгоритма до тех пор пока изменения не будут применены и останется только новый. А в жизни чего только не бывает, попытайтесь например 1С сделать с ее регламентами сделать 24*7, боюсь практически это будет сделать без окон невозможно при текущей архитектуре. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2019, 17:08 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
а в итоге оказывается, что топег был-то "ниобчём" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2019, 17:19 |
|
||
|
Обновление 24/7 базы данных
|
|||
|---|---|---|---|
|
#18+
МуМуАлгоритм с полем приведен как пример когда в логике приложения это поле учавствует, то есть раньше считалась какая то сумма из чего то а вот теперь решили сделать агрегацию. Получилось две ветки алгоритма, старый и новый. При учете непрерывности работы системы должны на сервере приложения работать два алгоритма до тех пор пока изменения не будут применены и останется только новый.Это в системах 24*7 делается проще. На первом этапе добавляем новое поле, обеспечиваем его начальное заполнение и поддержку актуальности. Когда этот этап завершён, и на продакшене всё работает, обновляется сервер приложений (клиент), на использование нового поля. И в этот же деплой удаляется старое (если, к примеру, новое вместо старого). Такой подход, конечно, замедляет изменения, но зато в 2 раза дешевле, и менее багоёмкий. Конечно, если фича нужна срочно, то можно и забашлять "за 2 алгоритма". МуМуА в жизни чего только не бывает, попытайтесь например 1С сделать с ее регламентами сделать 24*7, боюсь практически это будет сделать без окон невозможно при текущей архитектуре.Ну понятно, что мы говорим о случае, когда есть контроль над всей системой. Если нет, то тут 50% - либо получится, либо не получится :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2019, 17:25 |
|
||
|
|

start [/forum/topic.php?all=1&fid=46&tid=1688026]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
56ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 402ms |

| 0 / 0 |
