Home All Groups Group Topic Archive Search About

Performance of SQL Server Express

Author
4 Oct 2007 2:03 PM
John Austin
For a small company with say 6 concurrent users, a database of say 10 Mbytes
and using only normal tables and indices (nothing fancy), will there be any
significant performance differences between SQL Server Workgroup and SQL
Server Express?

Thanks,
--
John Austin

Author
5 Oct 2007 4:04 AM
Charles Wang[MSFT]
Hi John,
I do not think that there will be any significant performance differences
between SQL Server Workgroup and SQL Server Express Edition for your
scenario. However if you encountered any performance issue, you may refer
to the following article:
Troubleshooting Performance Problems in SQL Server 2005
http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx

If you have any other questions or concerns, pelase feel free to let us
know. Have a nice day!

Best regards,
Charles Wang
Microsoft Online Community Support
=====================================================
When responding to posts, please "Reply to Group" via
your newsreader so that others may learn and benefit
from this issue.
======================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
======================================================
Author
9 Oct 2007 4:06 PM
John Austin
Thanks, Charles.

I have now been asked the same question about a simple 300 MB database with
10 to 15 users (virtually all access via primary keys). Do you know of any
guidance regarding the number of users and database size and recommended SQL
edition?

Thanks

--
John Austin


Show quote
"Charles Wang[MSFT]" wrote:

> Hi John,
> I do not think that there will be any significant performance differences
> between SQL Server Workgroup and SQL Server Express Edition for your
> scenario. However if you encountered any performance issue, you may refer
> to the following article:
> Troubleshooting Performance Problems in SQL Server 2005
> http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx
>
> If you have any other questions or concerns, pelase feel free to let us
> know. Have a nice day!
>
> Best regards,
> Charles Wang
> Microsoft Online Community Support
> =====================================================
> When responding to posts, please "Reply to Group" via
> your newsreader so that others may learn and benefit
> from this issue.
> ======================================================
> This posting is provided "AS IS" with no warranties, and confers no rights.
> ======================================================
>
>
>
>
>
Author
10 Oct 2007 8:12 AM
Charles Wang[MSFT]
Hi Jason,
Thanks for your feedback.

Actually database size and the number of users are not the factors for
database performance. Assume that a very large database with a great many
of historical data, but the real operations are based on several tables
which only contain very few records. In other words, there is a job
scheduled to remove the old records to history tables which are only for
report sometimes. In this case, if every T-SQL statement can finish within
a very short time, it is possible that your SQL Server can handle hundreds
of connections in parallel. Of course the CPU licensing of your server need
to be able to support so many connections. I think that the real
performance here depends on your database design, server capability and
network bandwidth.

Appreciate your understanding that it is hard to say that there is any
performance issue with only knowing your database size and the number of
users. It is a good practice that you perform a test environment to see if
you encounter any performance issue before you put it into your production
environment. If you encounter any performance issue during your test
process, please feel free to post back. We are very glad to assist you
further.

Best regards,
Charles Wang
Microsoft Online Community Support
=====================================================
When responding to posts, please "Reply to Group" via
your newsreader so that others may learn and benefit
from this issue.
======================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
======================================================
Author
12 Oct 2007 10:28 AM
John Austin
Thanks, Charles,

Express and Workgroup both have limits on processor count and memory usage.
The limit on database size should not be a problem and is easily
quantifiable. Presumably, if one is just reading data, CPU usage is not the
limiting factor, however I suspect memory usage may be. Is there a way of
tracking the memory usage of SQL Server standard in order to see if the
Express memory limits will impact performance?

Thanks,
--
John Austin


Show quote
"Charles Wang[MSFT]" wrote:

> Hi Jason,
> Thanks for your feedback.
>
> Actually database size and the number of users are not the factors for
> database performance. Assume that a very large database with a great many
> of historical data, but the real operations are based on several tables
> which only contain very few records. In other words, there is a job
> scheduled to remove the old records to history tables which are only for
> report sometimes. In this case, if every T-SQL statement can finish within
> a very short time, it is possible that your SQL Server can handle hundreds
> of connections in parallel. Of course the CPU licensing of your server need
> to be able to support so many connections. I think that the real
> performance here depends on your database design, server capability and
> network bandwidth.
>
> Appreciate your understanding that it is hard to say that there is any
> performance issue with only knowing your database size and the number of
> users. It is a good practice that you perform a test environment to see if
> you encounter any performance issue before you put it into your production
> environment. If you encounter any performance issue during your test
> process, please feel free to post back. We are very glad to assist you
> further.
>
> Best regards,
> Charles Wang
> Microsoft Online Community Support
> =====================================================
> When responding to posts, please "Reply to Group" via
> your newsreader so that others may learn and benefit
> from this issue.
> ======================================================
> This posting is provided "AS IS" with no warranties, and confers no rights.
> ======================================================
>
>
Author
12 Oct 2007 2:36 PM
Andrew J. Kelly
One of the best indicators of lack of memory for things like queries is the
Page Life Expectancy counter in Perfmon found under the SQL Server Buffer
Manger object. The higher the counter the better it is. This is the
estimated number of seconds a typical data page will stay in cache before
being swapped out. Values under 100 start to indicate poor memory
utilization. This is true regardless of edition.  But if your db size is
only 300MB then if you have the recommended 1GB on the machine this should
not be an issue.

--
Andrew J. Kelly    SQL MVP
Solid Quality Mentors


Show quote
"John Austin" <John.Austin@nospam.nospam> wrote in message
news:561F12DF-DD1E-40EE-BA30-7BAA3E5F69D9@microsoft.com...
> Thanks, Charles,
>
> Express and Workgroup both have limits on processor count and memory
> usage.
> The limit on database size should not be a problem and is easily
> quantifiable. Presumably, if one is just reading data, CPU usage is not
> the
> limiting factor, however I suspect memory usage may be. Is there a way of
> tracking the memory usage of SQL Server standard in order to see if the
> Express memory limits will impact performance?
>
> Thanks,
> --
> John Austin
>
>
> "Charles Wang[MSFT]" wrote:
>
>> Hi Jason,
>> Thanks for your feedback.
>>
>> Actually database size and the number of users are not the factors for
>> database performance. Assume that a very large database with a great many
>> of historical data, but the real operations are based on several tables
>> which only contain very few records. In other words, there is a job
>> scheduled to remove the old records to history tables which are only for
>> report sometimes. In this case, if every T-SQL statement can finish
>> within
>> a very short time, it is possible that your SQL Server can handle
>> hundreds
>> of connections in parallel. Of course the CPU licensing of your server
>> need
>> to be able to support so many connections. I think that the real
>> performance here depends on your database design, server capability and
>> network bandwidth.
>>
>> Appreciate your understanding that it is hard to say that there is any
>> performance issue with only knowing your database size and the number of
>> users. It is a good practice that you perform a test environment to see
>> if
>> you encounter any performance issue before you put it into your
>> production
>> environment. If you encounter any performance issue during your test
>> process, please feel free to post back. We are very glad to assist you
>> further.
>>
>> Best regards,
>> Charles Wang
>> Microsoft Online Community Support
>> =====================================================
>> When responding to posts, please "Reply to Group" via
>> your newsreader so that others may learn and benefit
>> from this issue.
>> ======================================================
>> This posting is provided "AS IS" with no warranties, and confers no
>> rights.
>> ======================================================
>>
>>
Author
18 Oct 2007 9:49 PM
John Austin
Thanks Andrew, I will check that out. I am suggesting 4 GB for the server,
which may be over the top for this app, so we should be OK.
--
John Austin


Show quote
"Andrew J. Kelly" wrote:

> One of the best indicators of lack of memory for things like queries is the
> Page Life Expectancy counter in Perfmon found under the SQL Server Buffer
> Manger object. The higher the counter the better it is. This is the
> estimated number of seconds a typical data page will stay in cache before
> being swapped out. Values under 100 start to indicate poor memory
> utilization. This is true regardless of edition.  But if your db size is
> only 300MB then if you have the recommended 1GB on the machine this should
> not be an issue.
>
> --
> Andrew J. Kelly    SQL MVP
> Solid Quality Mentors
>
>
> "John Austin" <John.Austin@nospam.nospam> wrote in message
> news:561F12DF-DD1E-40EE-BA30-7BAA3E5F69D9@microsoft.com...
> > Thanks, Charles,
> >
> > Express and Workgroup both have limits on processor count and memory
> > usage.
> > The limit on database size should not be a problem and is easily
> > quantifiable. Presumably, if one is just reading data, CPU usage is not
> > the
> > limiting factor, however I suspect memory usage may be. Is there a way of
> > tracking the memory usage of SQL Server standard in order to see if the
> > Express memory limits will impact performance?
> >
> > Thanks,
> > --
> > John Austin
> >
> >
> > "Charles Wang[MSFT]" wrote:
> >
> >> Hi Jason,
> >> Thanks for your feedback.
> >>
> >> Actually database size and the number of users are not the factors for
> >> database performance. Assume that a very large database with a great many
> >> of historical data, but the real operations are based on several tables
> >> which only contain very few records. In other words, there is a job
> >> scheduled to remove the old records to history tables which are only for
> >> report sometimes. In this case, if every T-SQL statement can finish
> >> within
> >> a very short time, it is possible that your SQL Server can handle
> >> hundreds
> >> of connections in parallel. Of course the CPU licensing of your server
> >> need
> >> to be able to support so many connections. I think that the real
> >> performance here depends on your database design, server capability and
> >> network bandwidth.
> >>
> >> Appreciate your understanding that it is hard to say that there is any
> >> performance issue with only knowing your database size and the number of
> >> users. It is a good practice that you perform a test environment to see
> >> if
> >> you encounter any performance issue before you put it into your
> >> production
> >> environment. If you encounter any performance issue during your test
> >> process, please feel free to post back. We are very glad to assist you
> >> further.
> >>
> >> Best regards,
> >> Charles Wang
> >> Microsoft Online Community Support
> >> =====================================================
> >> When responding to posts, please "Reply to Group" via
> >> your newsreader so that others may learn and benefit
> >> from this issue.
> >> ======================================================
> >> This posting is provided "AS IS" with no warranties, and confers no
> >> rights.
> >> ======================================================
> >>
> >>
>
>
Author
19 Oct 2007 3:52 AM
Charles Wang[MSFT]
Thanks for your feedback, John.
4GB is also the maximum database size that SQL Server 2005 Express can
support now. If your database size can be controlled under 4GB below, it
will be fine for your solution.

Just feel free to let us know if you encounter any issue in future. We are
very glad to work with you for further assistance.

Have a nice day!

Best regards,
Charles Wang
Microsoft Online Community Support
=====================================================
When responding to posts, please "Reply to Group" via
your newsreader so that others may learn and benefit
from this issue.
======================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
======================================================
Author
19 Oct 2007 9:12 AM
John Austin
Thank you for your kind assistance, Charles
--
John Austin


Show quote
"Charles Wang[MSFT]" wrote:

> Thanks for your feedback, John.
> 4GB is also the maximum database size that SQL Server 2005 Express can
> support now. If your database size can be controlled under 4GB below, it
> will be fine for your solution.
>
> Just feel free to let us know if you encounter any issue in future. We are
> very glad to work with you for further assistance.
>
> Have a nice day!
>
> Best regards,
> Charles Wang
> Microsoft Online Community Support
> =====================================================
> When responding to posts, please "Reply to Group" via
> your newsreader so that others may learn and benefit
> from this issue.
> ======================================================
> This posting is provided "AS IS" with no warranties, and confers no rights.
> ======================================================
>
>
>
>
>
Author
21 Nov 2007 2:23 PM
Md Ismail
Hi,
My SQL Express is consuming lots of memory(1GB out of 2GB) and CPU.

We are developing a GPS data(multiple client) project where we used
insert/query data in a particular GPS_LOG table (in SQL Express) in
every 5/10 seconds . It was working fine!

But later we discovered that SQL Express is eating lots of memory, and
its memory eating grows steadily and rises upto 1GB (Max server memory
is set to 1GB)!!!!

And while testing with 15/20 clients we found it eats almost 75% of
CPU!!!!!
OMG!!!

How can I tune my database to eat less Memory and CPU???
Million dollar question for me!!! please help!!!

I have been searching SQL Server database tuning techniques, but didn't
get any thing satisfactory!!!!

*** Sent via Developersdex http://www.developersdex.com ***
Author
21 Nov 2007 4:00 PM
Andrew J. Kelly
The MAX Memory option is how you set an upper limit on the amount of memory
the buffer pool can use. But there is some additional memory usage on top of
that for areas in addition to the buffer pool. This can be be between 256MB
and 384MB. So if you want to use no more than 1GB set Max Memory to about
700MB.  Why is 75% CPU a bad thing?  That means it is working. But if the
queries are not tuned you can use more CPU than necessary. Have you tuned
the queries and indexes on the tables you access?

--
Andrew J. Kelly    SQL MVP
Solid Quality Mentors


Show quote
"Md Ismail" <mija***@gmail.com> wrote in message
news:eF0$aoELIHA.2176@TK2MSFTNGP06.phx.gbl...
> Hi,
> My SQL Express is consuming lots of memory(1GB out of 2GB) and CPU.
>
> We are developing a GPS data(multiple client) project where we used
> insert/query data in a particular GPS_LOG table (in SQL Express) in
> every 5/10 seconds . It was working fine!
>
> But later we discovered that SQL Express is eating lots of memory, and
> its memory eating grows steadily and rises upto 1GB (Max server memory
> is set to 1GB)!!!!
>
> And while testing with 15/20 clients we found it eats almost 75% of
> CPU!!!!!
> OMG!!!
>
> How can I tune my database to eat less Memory and CPU???
> Million dollar question for me!!! please help!!!
>
> I have been searching SQL Server database tuning techniques, but didn't
> get any thing satisfactory!!!!
>
> *** Sent via Developersdex http://www.developersdex.com ***
Author
22 Nov 2007 9:12 AM
Md Ismail
We are using NHibernate technique to access data, so its less likely to
tune queries...

Just tell me what are the basics of tuning a database....


*** Sent via Developersdex http://www.developersdex.com ***
Author
22 Nov 2007 4:01 PM
Andrew J. Kelly
> We are using NHibernate technique to access data, so its less likely to
> tune queries...

I know very little of NHibernate but I do know it generates adhoc sql and is
most likely not very well tuned in terms of performance. Generic data
mapping tools usually don't do well in terms of performance when it comes to
the database. They are geared more towards ease of use on the programming
side.  From your description it sounds true in this case as well.

> Just tell me what are the basics of tuning a database....

Well that is not easily done in a news group post but here are some links
that may get you started.

http://www.sql-server-performance.com/sql_server_performance_audit10.asp
Performance Audit
http://www.microsoft.com/technet/prodtechnol/sql/2005/library/operations.mspx
Performance WP's
http://www.sql-server-performance.com/sql_server_performance_audit.asp
Hardware Performance CheckList
http://www.sql-server-performance.com/best_sql_server_performance_tips.asp
SQL 2000 Performance tuning tips
http://www.support.microsoft.com/?id=224587       Troubleshooting App
Performance
http://sqldev.net/misc/WaitTypes.htm            Wait Types


--
Andrew J. Kelly    SQL MVP
Solid Quality Mentors

AddThis Social Bookmark Button