AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Администрирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.02.2017, 12:23   #1  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2155 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Про Дикси понятно. Скрипты мы тоже писали на больших проектах еще для 3.0. Но это действительно хакерство и не для всех.

Как MS официально предполагает делать синхронизацию? Кроме скриптов больше никак не ускорить?
__________________
Ivanhoe as is..
Старый 16.02.2017, 13:32   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
Как MS официально предполагает делать синхронизацию? Кроме скриптов больше никак не ускорить?
как это написано сейчас - последовательно, таблица за таблицей.
что, может быть, и оправдано в общем случае, когда все таблицы на одном диске в одном сегменте.

когда все в одном все равно узким местом будет диск.
и давать параллельные команды - бессмыслено.

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

но тут начинаются: вопросы логической целостности при параллельных заданиях, вопросы как разбито на физические устройства, deadlock и прочее.

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

примерно так.
Старый 19.02.2017, 14:25   #3  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,038 / 1629 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от mazzy Посмотреть сообщение
но тут начинаются: вопросы логической целостности при параллельных заданиях, вопросы как разбито на физические устройства, deadlock и прочее.
Все же думаю алгоритм немного кривоват, а не "физические диски". т.е. самый простой случай - запускаем синхронизацию без каких то изменений в структуре данных. она работает минут 20
Кстати в АХ7 реализована наконец-то параллельная синхронизация, т.е. выполняется побыстрее при 100% загрузке процессора
Документ "Microsoft Dynamics AX 2012 White Paper: Deploying Customizations Across Microsoft Dynamics AX 2012 Environments" описывает довольно экзотические способы снижения downtime "Import a model store with minimal downtime", интерестно так кто нибудь делает?
Цитата:
To reduce downtime, we recommend that you import the metadata into a new schema next to the old one, and then switch to the active schema. This methodology lets users continue using the system until the AOS instance needs to be restarted so that the new schema can be applied.
Ну и развертывание всех отчетов - тоже по времени сравнимо с полной синхронизацией, думаю очевидным решением будет развертывать и синхронизировать только то что менялось

Последний раз редактировалось trud; 19.02.2017 в 14:31.
За это сообщение автора поблагодарили: Logger (1).
Старый 19.02.2017, 15:00   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от trud Посмотреть сообщение
Все же думаю алгоритм немного кривоват, а не "физические диски". т.е. самый простой случай - запускаем синхронизацию без каких то изменений в структуре данных. она работает минут 20
Кстати в АХ7 реализована наконец-то параллельная синхронизация, т.е. выполняется побыстрее при 100% загрузке процессора
возможно. для синхронизации в общем случае узким местом является не процессор.
а можно подробнее про параллельную синхронизацию в акс7 или ссылку? похоже, я пропустил.
Старый 19.02.2017, 15:50   #5  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,038 / 1629 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от mazzy Посмотреть сообщение
а можно подробнее про параллельную синхронизацию в акс7 или ссылку? похоже, я пропустил.
Было в каком-то whats new. В принципе достаточно просто запустить, и увидеть что грузятся все ядра, а не одно как было в 2012
Старый 19.02.2017, 17:50   #6  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от trud Посмотреть сообщение
Было в каком-то whats new. В принципе достаточно просто запустить, и увидеть что грузятся все ядра, а не одно как было в 2012
А толку с нее ? В продуктиве MS сам деплоит, и резервирует на все про все 5 часов. По факту - последнее время управляются за 2.5-3
__________________
-ТСЯ или -ТЬСЯ ?
За это сообщение автора поблагодарили: trud (1).
Старый 20.02.2017, 03:47   #7  
trud is offline
trud
Участник
Лучший по профессии 2017
 
1,038 / 1629 (57) ++++++++
Регистрация: 07.06.2003
Записей в блоге: 1
Цитата:
Сообщение от Vadik Посмотреть сообщение
А толку с нее ? В продуктиве MS сам деплоит, и резервирует на все про все 5 часов. По факту - последнее время управляются за 2.5-3
О..
Кстати вчера вышел Update4, теперь обещают greatly reduced

Цитата:
Apply deployable packages with reduced downtime.
Currently, the average downtime needed to apply a single package in an environment deployed through LCS is 5 hours. With this feature, the package application is optimized so that the downtime is greatly reduced.
Кстати а вот вопрос - если после обновления надо что-нибудь поотлаживать на копии текущей рабочей БД, сколько времени по факту занимает получение такой копии? я так понимаю создается запрос в поддержку на получение копии БД, который может выполняться 1 бизнес день?, потом еще сколько то на развертывание этой копии.. и т.д. Как вы решаете такое?
Старый 19.02.2017, 17:48   #8  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
Цитата:
Сообщение от trud Посмотреть сообщение
Документ "Microsoft Dynamics AX 2012 White Paper: Deploying Customizations Across Microsoft Dynamics AX 2012 Environments" описывает довольно экзотические способы снижения downtime "Import a model store with minimal downtime", интерестно так кто нибудь делает?
А что там экзотичного ? Когда время ограничено - я так делал. Импортнули modelstore во временную схему "на ходу" (не останавливая работу), остановили AOS-ы, переключили схему, запустились на выделенном AOS, синхронизация - и можно запускать остальных и деплоить отчеты
P.S. Ждать пока задеплоятся все отчеты - совсем необязательно
__________________
-ТСЯ или -ТЬСЯ ?

Последний раз редактировалось Vadik; 19.02.2017 в 17:51.
Старый 19.02.2017, 22:26   #9  
skuull is offline
skuull
Участник
Most Valuable Professional
Лучший по профессии 2014
 
699 / 752 (27) +++++++
Регистрация: 08.03.2013
Адрес: ХЗ
Цитата:
Сообщение от trud Посмотреть сообщение
Документ "Microsoft Dynamics AX 2012 White Paper: Deploying Customizations Across Microsoft Dynamics AX 2012 Environments" описывает довольно экзотические способы снижения downtime "Import a model store with minimal downtime", интерестно так кто нибудь делает?
Мы так делаем, в итоге downtime упирается в те же 20 мин синхронизации. Потому что компилить ничего не надо только AOSы перегрузить, а компиляцию и CIL делаем на отдельной машине. В итоге подготовленный modelsore можно накатить на "PreProd" и потестить перед накаткой на PROD, а то бывает кто-то криво код сведет или чего забудет...
По поводу 7ки на яммере МС писали что и сейчас весь downtime уходит на синхронизацию, мол они работают над этим но пока ничего не придумали
За это сообщение автора поблагодарили: Logger (1).
Старый 20.02.2017, 11:01   #10  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5788 (200) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от trud Посмотреть сообщение
Документ "Microsoft Dynamics AX 2012 White Paper: Deploying Customizations Across Microsoft Dynamics AX 2012 Environments" описывает довольно экзотические способы снижения downtime "Import a model store with minimal downtime", интересно так кто нибудь делает?
Цитата:
To reduce downtime, we recommend that you import the metadata into a new schema next to the old one, and then switch to the active schema. This methodology lets users continue using the system until the AOS instance needs to be restarted so that the new schema can be applied.
Рассматривали такой вариант на крупном внедрении, к сожалению, он не подошел как раз из-за необходимости останавливать все АОСы одновременно, чтобы переключиться с одной схемы на другую. По описанию логично было бы ожидать, что есть какая-то настройка, указывающая название активной схемы и считываемая АОСом при запуске, однако, это, похоже, не так, и активная схема всегда dbo, а "переключение" заключается в перебивке "временного" названия схемы на dbo, что требует отключения всех АОСов от базы моделей.
Я, может, крамольную вещь скажу, но в моей практике очень часто бывает нужно обновлять рабочее приложение без одновременного перезапуска всех АОСов. Это связано с тем, что обычно АОСы делятся на различные группы по функциональной нагрузке:
  • пользовательские - для подключений виндовым клиентом Аксапты
  • пользовательские - для подключения через Корпоративный портал
  • интеграционные - для хостинга определенных сервисов
  • интеграционные - для хостинга еще каких-либо сервисов
  • пакетные - для, допустим, разноски розницы
  • пакетные - для, допустим, сводного планирования
  • пакетные - для еще каких нужд
При этом в каждой группе обычно используется более-менее явно выраженное подмножество функционала приложения, подчас слабо пересекающееся с другими группами. А еще эти группы характеризуются разной чувствительностью к перезапускам и простоям и разными периодами времени, наиболее подходящими для перезапуска и обслуживания. Пользовательские АОСы обычно можно произвольно перезапускать в нерабочее время (скажем, с 18:00 до 9:00 следующего дня), а пакетные АОСы сводного планирования, напротив, предпочтительнее перезапускать днем. В целом пакетники обычно можно произвольно перезапускать в течение суток, но при условии, что запущенные пакетные задания успели отработать. Прерывать выполняющиеся пакетные задания обычно не очень хорошо, а ждать "парада планет", когда на всех пакетниках завершатся текущие выполняемые задания, можно подчас очень долго. Интеграционные АОСы вообще должны иметь как можно меньшее время простоя, потому что такие простои зачастую приводят к отказу в обслуживании в связанных системах. К примеру, интернет-магазин может замечательно работать автономно от Аксапты, но оплата заказа подарочным сертификатом может завершиться в нем неуспешно из-за невозможности проверить и изменить в online статус подарочного сертификата в Аксапте.
При обновлении рабочего приложения, как правило, переносится функционал, который влияет на одну-две-три группы АОСов с т.з. используемых подмножеств функционала приложения, но очень редко - на все группы сразу. Да, может, это нельзя в каждом случае математически точно обосновать, но из опыта поддержки того или иного приложения обычно это достаточно очевидно. И вот наиболее удобным был бы способ обновления рабочего приложения, который позволял бы разнести во времени перезапуск различных групп АОСов. Скажем, online-интеграциям через WCF-сервисы может быть без разницы, что обновились какие-то формочки для Windows-клиента Аксапты, а АОСам разноски розницы - без разницы, что обновилась логика сводного планирования. Но штатного варианта по сути выполнять две разные версии приложения на разных группах АОСов, к сожалению, нет.
За это сообщение автора поблагодарили: EVGL (10), trud (2), sukhanchik (5), ax_mct (5).
Теги
ax2012, как правильно, обновление, синхронизация

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Перенос пакета и Перекрытие neopl DAX: Функционал 7 15.03.2012 23:12
Финансовые проводки по журналу "Перенос" (AX 2009) MrVlasoff DAX: Функционал 16 22.03.2010 11:32
Перенос конфигурации без данных rwx DAX: Администрирование 9 01.10.2009 10:15
Перенос переменной в конфигураторе продукции Serg DAX: Функционал 0 09.12.2005 13:43
Перенос номенклатуры со склада на склад efim DAX: Функционал 4 04.04.2003 13:56

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:26.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.