Only 10 to 20% of the problems are due to infrastructural problems.When we think of "infrastructure", these items are important (in order of importance):
- RAM
- DISK
- CPU
- NETWORK
RAM:
There are some general guidelines what you need:
DB Size/Users | 0-50 | 51-100 | 101-150 | 151-200 | >200 |
<=25 Gb | 4 | 8 | 8 | 12 | 12 |
<=50 Gb | 8 | 8 | 12 | 12 | 16 |
>50 Gb | 8 | 8 | 12 | 12 | 16 |
DISK:
The disks are the slowest components, thus very important to choose the right DISK configuration.
First of all: Don't use RAID 5. Use as many disks as you can afford, with a minimum of 3 times RAID 1 (=6 disks). Why? To split all OS files, all Transaction Log files and All Data files. If you have more than 6 disks, scale the array of the data files up to RAID 10.
CPU:
The CPU is tupically not a bottleneck, but here are some guidelines:
DB Size/Users | 0-50 | 51-100 | 101-150 | 151-200 | >200 |
<=25 Gb | 2 | 4 | 4 | 6 | 6 |
<=50 Gb | 4 | 4 | 6 | 6 | 8 |
>50 Gb | 4 | 4 | 6 | 6 | 8 |
Now, Hynek wasn't that a fan of duo or quad cores, because it actually just performance 60% of the performance if you compare it with full CPU's... .
NETWORK:
Some very quice recommendations:
- 100Mb minimum
- The network should be switched (as switched as possible)
- On server side, best you use a 1Gb network
Now, for planning your hardware, you shouldn't only use these guidelines. Also take for instance in account other factors like the annual business growth, seasonality, ... .
On software side, it is best to keep everything up-to-date, but be aware:
- 2000 is not 2005: it does not behave the same
- 2005 uses tempdb more ... And it's may be a good idea to put it on a seperate spindle.
- 4.00 update 6 is a good release:
- It fixes some SIFT issues
- It does not use OPTION (FAST xx) any more
- Is uses index hinting by default ... Bewar of that!
There are many infrastructure software setup things to think about. Amongst them (didn't catch them all):
- Degree of Parallellism should be 1
- Split the TL, Data Files and Tempdb (if necessary)
- Maintenance:
- Update statistics
- Rebuild indexes
Finally, the things you can do at application level.
- SQL Profiler
Mainly used for analyzing queries that come from the Dynamics NAV client. Also for analyzing deadlocking and timeouts - Client Monitor
To record the server calls from within NAV. It links certain SQL queries to pieces of code in C/SIDE. - SQL Server Mgt Views
Keep in mind: only SQL Server 2005 has got these. Interesting dm views are:- Dm_db_index_usages_stats
- Dm_exec_query_stats
- Dw_os_wait_stats
No comments:
Post a Comment