Quantcast
Channel: ฟอรัม Getting started with SQL Server
Viewing all articles
Browse latest Browse all 8428

SQL Server 2005 performance decreases with DB size while SQL Server 2012 is fine

$
0
0

Hi,

We have a C# windows service running that polls some files and inserts/updates some fields in database.

The service was tested on a local dev machine with SQL Server 2012 running and performance was quite decent with any number of records. Later on the service was moved to a test stage environment where SQL Server 2005 is installed. At that point database was still empty and service was running just fine but later on, after some 500k records were written, performance problems came to light. After some more tests we've founds out that, basically, database operation performance in SQL Server 2005 decreases with a direct correlation with the database size. Here are some testing results:

Run#12345
DB size (records)520k620k720k820k920k
SQL Server 2005
TotalRunTime25:25.132:25.438:27.342:50.543:51.8
Get100:18.300:18.900:20.100:20.100:19.3
Get201:13.401:17.901:21.001:21.201:17.5
Get301:19.501:24.601:28.401:29.301:24.8
Count100:19.900:18.700:17.900:18.700:19.1
Count200:44.500:45.700:45.900:47.000:46.0
Count300:21.700:21.700:21.700:22.300:22.3
Count400:23.600:23.900:23.900:24.900:24.5
Process103:10.603:15.403:14.703:21.503:19.6
Process217:08.723:35.728:53.832:58.334:46.9
Count500:02.300:02.300:02.300:02.300:02.1
Count600:01.600:01.600:01.600:01.700:01.7
Count700:01.900:01.900:01.700:02.000:02.0
Process300:02.000:01.800:01.800:01.800:01.8
SQL Server 2012
TotalRunTime12:51.613:38.713:20.413:38.012:38.8
Get100:21.600:21.700:20.700:22.700:21.4
Get201:38.301:37.201:31.601:39.201:37.3
Get301:41.701:42.101:35.901:44.501:41.7
Count100:20.300:19.900:19.900:21.500:17.3
Count201:04.501:04.801:05.301:10.001:01.0
Count300:24.500:24.100:23.700:26.000:21.7
Count400:26.300:24.600:25.100:27.500:23.7
Process103:52.303:57.703:59.404:21.203:41.4
Process203:05.403:06.202:53.203:10.303:06.5
Count500:02.800:02.700:02.600:02.800:02.7
Count600:02.300:03.000:02.800:03.400:02.4
Count700:02.500:02.900:02.800:03.400:02.5
Process300:21.700:21.000:20.400:22.800:21.5

One more thing is that it's not Process2 table that constantly grows in size but is Process1 table, that gets almost 100k records each run.

After that SQL Server 2005 has also been installed on a dev machine just to test things and we got exactly the same results. Both SQL Server 2005 and 2012 instances are installed using default settings with no changes at all. The same goes for databases created for the service.


So the question is - why are there such huge differences between performance of SQL Server 2005 and 2012? Maybe there are some settings that are set by default in SQL Server 2012 database that need to be set manually in 2005?

What else can I try to test? The main problem is that production SQL Server will be updated god-knows-when and we can't just wait for that.

Any suggestions/advices are more than welcome.


Viewing all articles
Browse latest Browse all 8428

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>