October 29, 2007 at 7:34 am
Hi everybody,
I have a customer which insist to use a regular PC (P4 3GB with 512MB RAM) for using SQL Server 2000 Standard Edition. The operating system is Windows Server 2003 Standard. This server manage two databases (11 GB and 9 GB), each of databases having 3-4 main tables with at least 1 milion records.
It is obvious that the performance of this server is very poor, but the customer insist that responsible for this performance is the application which use the databases and not the hardware infrastructure. I could not find some serious arguments to convince them that this configuration is unproper for a SQL Server.
Can somebody give me some hints in order to demonstrate what is the proper configuration?
Thank you in advance,
Radu
___________________________________________________________________
Is better shut up and look stupid than open your mouth and eliminate any doubt
October 29, 2007 at 8:28 am
Try running some of the inquery analyzer so there's no impact from the application.
Personally, given how cheap memory is, I wouldn't try to run a server with less than 2GB of RAM. Heck, my home PC that's 7 years old has 1GB.
October 29, 2007 at 8:29 am
Well - you could start with pointing out that they are running WAY under the recommended amounts (of RAM in particular) for 2003 + SQL 2000.
Just to "keep the lights on" - Windows 2003 ("R1" ) recommended 256MB, and SQL2000 recommends at LEAST 512MB for itself. Windows 2003 R2 upped the recommendation to 512 as I recall, so you're running with half of the recommended amount (which in MS speak is in effect the lowest amount at which point the server MIGHT start performing well). this means you're RAM-starving the server, which will then "run" to paging to disk (use of the Windows page file): that alone will cause the server to choke quite a bit.
Now - if they're skimping on RAM, I can only imagine that they're also skimping on disks and controllers, which more likely than not also means you're running on one single disk set, which goes against pretty much every configuration recommendation for SQL server there is. For pretty much every activity on a SQL server, the activity has to first be written to the trans log, and performed on the database, never mind any possible temporary speace it might need, so that's 2-3 disk operations per logic operation, so you will very quickly "drown" a single disk set.
And that's hoping that SQL Server is the ONLY thing running on that machine. If there are other things running, you have yet more opportunities for other apps to steal resources (which you don't have to spare as it is).
----------------------------------------------------------------------------------
Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?
October 29, 2007 at 1:45 pm
Have a look at the performance counter sql server target memory.
http://www.sql-server-performance.com/tips/performance_monitor_memory_counter_p1.aspx
Viewing 4 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic. Login to reply