We are busy with the upgrade of our Navision database from version 4.00 SP3 to NAV 2009 R2 -(classic version).
The database is now 250 GB, Sql server 2005 - 90 users in 8 companies.
SQL server : Win 2003 x64, SQL 2005 X64 Standard editition, 4 dual processors and 32 GB RAM. All data is stored on a SAN (HP EVA 4000).
The navision-clients are isstalled on citrix servers and connecting to the sql database with Named Pipes (is faster than tcp).
It's a highly modified database with 250 non standard tables and Item tracking is on (serial no. + exact costing per serial no).
Used modules : Financials (with extended dimensions) , Fixed Assets, Sales & Purchase, Inventory, Production, Transport (ad-on) and a part of WMS (with scanners).
Nav client at this moment : BE 4.00 PS3 - Build 26702
SQL server build at this moment : SQL 2005 - SP2 - 9.00 3200.00
The most performance problems in the past were solved by changing the navision code (findfirst, findset, .....), changing keys (maintain sql index, changing sql index, ...), disabling sift levels, ... At this moment we can live with the performance !!
What's the best scenario to do the upgrade ?
Scenario 1 :
Step 1 : Upgrade to client 2009.
-> Sift tables will be changed to the views. probably this will give some performance troubles..
Step 2 : Upgrade SQL 2005 to SQL 2008 R2
Step 3 : Upgrade navision code to nav 2009
Step 4 : Add SQL tools (SQL performance, stryck, ...) to check for performance problems.
Or would it be better to work like this :
Scenario 2 :Step 1 : Upgrade SQL 2005 to SQL 2008 R2
Step 2 : Add SQL tools (SQL performance, stryck, ...) to check for performance problems.
Step 3 : Upgrade to client 2009.
Step 4 : Upgrade navision code to nav 2009
Or should I monitor first with the SQL tools to check the performance problems..... solve them before we start with the upgrade. If I do this, could it be that I'm solving troubles that maybe are solved by the new client (2009) or sql server (2008 R2).
For every scenario I see some issues.... So what scenario would you take to do this upgrade ?
Your advice is extremly welcome.
Thanks in advance,
BR
Nico
0
Comments
1. Upgrade client
2. Upgrade code/db for new client
3. Leave SQL server as is and monitor/improve performance on current version
4. Upgrade SQL server to 2008
Do it on production as one step.
You will need a separate testing environment.
That testing environment should be a sql 2008 with 2009 executables and you would give them the upgraded database to test in.
Once they have tested it, upgrade the production.
As far as performance testing goes. You could do it in the testing environment but have to still monitor the production for additional tuning.
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n
Of course we will use a test server. But it's not so easy to "test" the actual load in a "test environment" al together.
(users, WMS- scanners, application servers, ...).
I tought by splitting up the upgrade in several steps, we could easily identity the (performance) problems.
If we are going for 4 steps together, it can be much more difficult to find the exact reason (is it now a sql (index) problem ? or navision code problem ? or maybe caused by changing the SIFT technology...)
Nico
You'll have more headache finding out what the problems are in each steps.
Make it easier on yourself.
For your upgrade, you'll need to validate all the workflow processes anyways.
by have the old setup and new setup you can go through each process and valid that the upgrade works and logic works correctly.
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n