I'm writing a report about the best configuration for a Navision implementation, and I could use some references. What I would like to know (of as many Navision implementations as possible) is the following:
* how many HDs
* RAID Controller
* Number of CPU's
* CPU Speed
* Number of Network Adapters (and reason of use (redundancy or load balancing))
- Server's Database Option (Navision Server of SQL Database)
- The way the database is split into pieces (and how big are the pieces)
- Number of clients (simultanious)
- Average client's hardware (CPU & RAM)
- Is this configuration sufficient?
I think it is useful when you have to build a new configuration, that you have a great number of references, so you can compare and choose the best configuration for a certain implementation. So, I would like to ask the community to post as much configurations as possible, PLUS, very important, a bit information on how the configuration is performing (is it a good or bad configuration for that implementation). This way, this topic could be a reference for all navision users on this community.
Thanks in advance!
Comments
- 4 disks RAID 5 (30Gb in total)
- 1 CPU (933Mhz)
- 1 NIC
- Navision Native Database
- 1 databasefile of 27Gb
- 40 simultanious clients
- Average client: 500Mhz with 64Mb RAM
As you will know, this configuration is completely WRONG. Luckily I didn't install this one (so it's not my fault, but now it IS my responsibility). Performance is really bad, as you probably expected. In the near future, a better server and better clients will be installed.
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
Current Server:
4 disks RAID 5, totaling approx 70GB
1 Xeon Processor
1 GB RAM
2 x 10/100 Nics
Navision Native Database
Small Business Server 2000
15 Simulatanious clients on P3, P4, and Celerons
The problem that I now know about it that I shouldn't be running SBS 2000 as well as Navision on the same server. We can't afford to purchase a new Navision Server so some upgrades are on the way.
2 x 60GB HDD (Raid 1 Config)
1 GB RAM
1 Xeon Processor
1 x Gigabyte Nic
is going to be added to the top server configuration. I am hoping that this will give us the redundacy, speed boost, and stabilty that we are looking for.
I wish I woulda done more homework before we implemented Navision, things would have been different. BUT we have to make due w/ what we have, don't we.
Good Luck on improving your setup.
I have been investigating the Navision-Performance-issue some time ago, and may be I can give you a few tips.
Keep in mind that a Navision Native Database has the following limitations:
- it can use only 1 processor (multiple processors will have NO effect)
- it can use only 1Gb RAM
Keep in mind that the most important thing to improve for a "Navision Native Database Server" is the RAID controller. Try to use RAID 0+1. That's the best you can use. Important with that is to divide your Navision Database into more files, and seperate the files over more disks. Tests say that it can improve perfomance more than 100%. Try to keep the file size less than 5 Gb on one physical (and logical) disk.
Next important thing (slightly less important, but still...) to upgrade is the memory (RAM). The maximum for Navision to use is 1Gb. If you assign 1Gb to Navision on a system that has just 1Gb, that will slow down overall performance, because the OS and the standard programs in the OS will not have enough memory to do their job, and this slows down very much. Just turn off Navision Server, see how much available memory there is, and that's the absolute maximum to assign to Navision (I advice to take half of the available memory). Your upgrade of 1 Gb will definitally be necessary. Decide carefully how much to assign to Navision though ... .
And then, last but not least, the CPU. In case of Navision Native Database Server, improving the processor is less important then upgrading memory or RAID controller. You should use another, more fast CPU, not an extra CPU, since Navision Native Server only uses 1 processor.
Thank you for your reply. I hope you can use this information, and I also hope that more users will add their configuration with their remarks.
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
I am proceeding carefully this time around.
The memory upgrade should be in by early next week, and I know that I'm going to see a drastic improvement.
Then comes the RAID reconfiguration.
After that IF I'm still having trouble I'll look at another processor. Even tho Navision doesn't make use of a second processor the rest of the OS, Exchange, ISA etc will, but that is my last step in the whole process.
Our complete database hasn't even reached 1 GB yet (getting close, but not yet), so I'm not getting too worried about the splitting of files. I just know that with all the other stuff running on the server is starting to slow things done.
Thanks again for the advice.
What is the use of splitting up the navision database if you use raid 0+1. The RAID system will then automatically use multiple harddisks to save the database. (At the moment I have a database of 7 Gb (RAID 0+1; 3 harddisks of 18 Gb)and I expect that I have to enlarge it to 8 Gb in a few weeks), By splitting up the database in multiple files the data will still be on the same disks (at least I can't imagine that you have for every 5 Gb a new set of harddisks and a RAID controller)
Or am I missing something :?:
Still ...
When you create for instance a D-Drive (4 disks minimum (RAID 0+1)) and an E-Drive (also 4 disks (RAID 0+1)), and you make 2 database files. 1 you place on the D-Drive, and the other on the E-Drive (You do this making just a NEW navision database on D-Drive, and expand with a new file on the E-Drive, and then you just restore the database). Then, search actions will go much much faster (about 100%). When User 1 wants data on D-Drive, and User 2 wants data on E-Drive, the 2 drives can search that data at the same time, else User 2 should wait until the disk did its job for User 1.
Does this make any sense for you?
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
I made I mistake when I mentioned I had 3 disks. In fact it is 2x 3 disks, so the totla will be 6.
In my configuration (a compaq raid arary 4100) I have the above mentioned 6 disks of 18 Gb each configured as several logical disks. One logical disk of 30 Gb is dedicated for Navision (as well the database and a lot of Word and Excel documents which are linked to Navision records).
Some other logical disks are used for other applications. So even if I split the database up and place it on to 2 logical drives (D and E) it will be physically on the same drive (in our confiuration).
As server we use a 2-node Compaq/Win2000 Cluster (Proliant DL360's) with a 1,4 Ghz processor and 1 Gb Memory. The navision service is running on one node, all other processes are running on the second node. In case of a hardware failure of one of the nodes all processes are of course temporarily running on the same node. We have about 35 concurrent users on Navision.
I can follow your explaniation, but if I create an optimal situation with maximal 5 Gb on one logical drive (and because of the fact that you need at least 4 drives for RAID 0+1) you will then get the following configuration:
Database size Logical drives Physical drives
< 5 Gb 1 4
>5Gb < 10 Gb 2 8
>10Gb < 15 Gb 3 12
>15Gb < 20 Gb 4 16
etc..
I saw in your first mail that you have a database size of 27 Gb, so you have 24 harddisks ??? Because it is even getting hard to by disks of 18 Gb (disks are getting bigger and abigger every time you buy one) you also will have a lot of not used space.
I don't expect that is really the case so I am very curious how your real new configuration look like, and what you think that the best moment should is to use indeed more logical drives.
But there is another problem. We're just running about 1 year, and already have got that amount of data. That's not good for a Navision Database Server (limited to 64Gb). So, we will be converting the database to MS SQL Server. Why? Unlimited Database size, can work with multiple processors, can work with more than 1 Gb RAM, handles simultanious users better.
For an SQL Server database, the most important thing for performance is the CPU (<5 users, 1CPUs;<30 users, 2CPUs;<100 users, 4CPUs), then memory, and only then the disks. And for SQL Server, there is a certain way to divide the SQL Server tempdb and other stuff over different RAID controllers and disks. If you're interested I can give you that too.
So, I will make a serverconfiguration for an SQL Server, not a Navision Native Database, that will have multiple processors, a minimum of 2Gb of RAM, and about 12 disks (RAID 1 and RAID 0+1).
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
If I only have four disks available for Navision's data. Which configuration is the fastest one? Two RAID1 arrays on which I split the database file, or One RAID01 array with one database file?
Striping (RAID 0) definitally has some performance gain, but splitting db into two files has some performance gain too. I've read that splitting a db (>5Gb) up in 2 files can cause a performance gain of 100%. I don't think striping can do that ... . You must see though that when you split into two files, you do it properly, not just expanding your existing database, but backup/setup new db/restore (that way, the data divides over the database files).
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
You know you can upgrade only the server and klient program files to 3.60 and restore the database into a new 3.60 database. This without doing the time consuming upgrade of the database.
But if you have no disk space to play with this is not an option for you anyways...
Wait a second! Can I really upgrade to 3.60 ( or even 3.70) just the program files and not the database itself?? How does this work? We are running 3.10b. Would i just do a database backup in 3.10 and the restore in 3.60/3.70. No recompiliing of reports or expensive table conversions?
Could you clarify this for me?
Thanks
The first is this exe-upgrade, where you just install server and client of the new version, and open the database in it. The client will ask you to convert the database and that's it. You can do only this just to take advantage of the new environment (better SQL drivers, new C/AL syntax, and so on ...)
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
Thanks :!:
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog