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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.10.2012, 00:11   #1  
Blog bot is offline
Blog bot
Участник
 
25,631 / 848 (80) +++++++
Регистрация: 28.10.2006
emeadaxsupport: White Paper on Common Upgrade Performance Tips
Источник: http://blogs.msdn.com/b/axsupport/ar...ance-tips.aspx
==============

Hello all - I recently posted a new White Paper available on CustomerSource which can be found here Common Performance Optimizations for Dynamics AX2012 Upgrade Code that talks about some very common areas of the upgrade code that customers and partners have needed to optimize in order to get acceptable performance. If the link isn't working for you, after logging on to CustomerSource, go search the Documentation - White Papers area for the document. The majority of these issues will be included in the base upgrade code for our next version, but for those customers and partners working on an upgrade to Dynamics AX 2012, the specific script changes in this document can save quite a bit of time with larger datasets. The areas covered in this new whitepaper are listed here:



Preprocessing Considerations.

Cleaning up your data.

Install and configure Dynamics Performance Analyzer

Upgrading from AX 4.0 - Address pre-processing scripts (generally namedupdateParty_XXXXX)

LedgerTrans pre-processing



Delta Processing Suggestions

Temporary Indexes on Original Dynamics Tables for delete_from Statements

Address Delta Processing Script Enhancements



Microsoft Dynamics AX 2012 Upgrade Suggestions

Index Changes for Upgrade

Recordset Update/Inserts that can help optimize runs



If you have run across other areas in your own testing that you would like to see about creating similar content, please leave a comment here on the blog with some detaills and I will look into adding them into the white paper. As a sample of the content, here is a very common scenario that occurs during delta processing on larger tables. Many times the routine may seem to stall with no indication of activity, but looking at the SQL Activity Monitor you can see a DELETE statement being executed.

Temporary Indexes on Original Dynamics Tables for delete_from Statements

The way that most of the delta scripts run is to use a delete_from statement with a notexists clause to remove rows from the Shadow tables when the original record in the Dynamics table has been deleted or modified. These delete_from statements will almost always include a where condition similar to the following:

custTrans.RecID == Shadow_CustTrans.RefRecID && custTrans.RecVersion == Shadow_CustTrans.RecVersionID

For some of the larger Dynamics tables, the delta script may appear to be "stalled" without ever changing the iteration value to indicate that it is processing rows. This can appear even if no records have been altered or deleted in the table being processed. For these "stalled" jobs, check the Processes list of the SQL Activity Monitor inside the SQL Server Management Studio and see if there is a query running which would be similar to this:



declare @P1 nvarchar(5),@P2 nvarchar(5);

set @P1 = 'dmo';
set @P2 = 'dmo';

DELETE FROM shadow_inventtransposting
WHERE (dataareaid = @P1)
AND NOT EXISTS

(SELECT 'x' FROM inventtransposting b
WHERE ((b.dataareaid = @P2)
AND ((b.recid = shadow_inventtransposting.refrecid)
AND (b.recversion = shadow_inventtransposting.recversionid))))

If that type of DELETE query is found in the Processes list of the SQL Activity Monitor, then the recommendation would be to do the following:

1. Kill the process by right clicking on the line in the Processes list and choosing Kill Process.

2. This step depends on if you are running in a test environment or live production with other users in the system.

a. If running in a test environment with no other users, then within the AOT, add an index to the original Dynamics table (in the example above it would be InventTransPosting) which would be RecID followed by RecVersion (the order is important). Save and Synchronize the table to create the new index.

b. If running in the live environment with other users, go to SQL Management Studio and create a new index directly in SQL Server on the original Dynamics table which contains the columns DataAreaID, RecID, RecVersion (the order is important).

3. Then refresh the upgrade cockpit and your batch job should have ended with an error - might take a little time if a rollback is needed).

4. Choose to Rerun the job with the error and the script should progress fairly quickly past the delete statement.

Once the delta processing is done, those indexes can be removed from the system so that they don't add more time to inserts and updates done through normal business processing. However, those indexes should be put back into place during the Single-User phase of the upgrade to guarantee quick performance during that critical down-time window.




Источник: http://blogs.msdn.com/b/axsupport/ar...ance-tips.aspx
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.
Старый 11.10.2012, 08:05   #2  
MikeR is offline
MikeR
MCT
Аватар для MikeR
MCBMSS
Лучший по профессии 2015
Лучший по профессии 2014
 
1,628 / 627 (24) +++++++
Регистрация: 28.11.2005
Адрес: просто землянин
А как быть с данными от предыдущих версий?
__________________
Axapta book for developer
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Writing Data Upgrade Scripts Part 1: Understanding the components of the process Blog bot DAX Blogs 0 10.02.2012 05:16
Microsoft Dynamics CRM Team Blog: White Paper: Optimizing and Maintaining the Performance of a Microsoft Dynamics CRM 2011 Server Infrastructure Blog bot Dynamics CRM: Blogs 0 20.09.2011 23:12
Microsoft Dynamics CRM Team Blog: White Paper: Optimizing and Maintaining the Performance of Microsoft Dynamics CRM Clients Blog bot Dynamics CRM: Blogs 0 11.05.2011 00:01
Microsoft Dynamics CRM Team Blog: White paper: Performance and Scalability Assessments of an Implementation Case Study Blog bot Dynamics CRM: Blogs 0 24.02.2009 01:10
Microsoft Dynamics CRM Team Blog: White Paper: Improving Microsoft Dynamics CRM Performance and Securing Data with Microsoft SQL Blog bot Dynamics CRM: Blogs 0 06.02.2009 04:05

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:16.