Avatar of marrowyung
marrowyung
 asked on

how many extra RAM for SQL server is needed

hi,

I read all that:

https://www.sqlpassion.at/archive/2016/09/19/how-much-ram-do-i-need-for-sql-server/?awt_l=FjEA6&awt_m=3Vt_2eQyB6YUUTS
https://www.sqlskills.com/blogs/jonathan/how-much-memory-does-my-sql-server-actually-need/

none of them are telling me how much MORE RAM we need for the SQL server.

I am measuring a SQL server box which is a publisher and distributor, the more replication we create the more RAM contention we have.

but how to measure/calculate HOW MUCH RAM we still need?
Microsoft SQL Server 2005Microsoft SQL Server 2008

Avatar of undefined
Last Comment
marrowyung

8/22/2022 - Mon
Pawan Kumar

Basically it depends on the workload & requirement of your system.

Have you gone through the Brent Ozar blog. He is very good with hardware stuff. few links for your help.

https://www.brentozar.com/archive/2014/05/much-memory-sql-server-need/

https://sqlperformance.com/2013/10/sql-memory/how-much-ram

https://technet.microsoft.com/en-us/library/cc298801.aspx

Enjoy!!
Pawan Kumar

Let's take an example. If we have total of 80GB of database then we don't need 64GB of RAM. So we need to make assumtion like how much % of the entire database is going to be in use at a time.

In most of the OLTP cases we use about 15-20% of the entire DB at a time.
A BI system may use about 60% of the entire DB at a time.

So What kind of System we are developing and What's the workload are very important to start with.
marrowyung

ASKER
nono, there are no calculation + performance counter to measure that out
?


boss can simply ask, how much RAM extra I need ?

actually this one don't tell much as it is more on Sharepoint deployment and planning.

Or only this one is useful:

Memory: Pages/sec   This counter shows the rate at which pages are read from or written to disk to resolve hard page faults. Monitor this counter to make sure that it remains under 100.
Experts Exchange is like having an extremely knowledgeable team sitting and waiting for your call. Couldn't do my job half as well as I do without it!
James Murphy
Pawan Kumar

I will tell you before that can you tell what kind of system we are developing ?

OLTP / OLAP - Tabular / Mutildimensional ?
marrowyung

ASKER
just normal transaction database.

Mutildimensional usually but we don't actually use most of it.

I am measuring pages/sec, page life expectancy. % disk read time, % disk write time.
Pawan Kumar

Can you also tell me the size of DB ?
⚡ FREE TRIAL OFFER
Try out a week of full access for free.
Find out why thousands trust the EE community with their toughest problems.
marrowyung

ASKER
831 GB. we are using SQL 2008 with SP3 and we can't use in-memory tech.
Pawan Kumar

Okies so in my opinion you should go with 96GB of Ram.

Note that it depends on lot of factors. This is just an estimate.
marrowyung

ASKER
this is the problem, we are running 64GB of RAM now, how you comes up with 96GB of RAM?

the SQL box is both publisher and distributor. any rules by saying how much RAM per publication need ?
I started with Experts Exchange in 2004 and it's been a mainstay of my professional computing life since. It helped me launch a career as a programmer / Oracle data analyst
William Peck
Pawan Kumar

Okay , so upgrade to 96GB first. :) Details below-

At one time you need around 45 GB of  Data in RAM , which is 20 % of the overall DB size we have.

Now we should max given 50% of the RAM for SQL DB Engine. So effectively we need to double the RAM.

In your case it comes out to 90. and 96 is the closest, that's why I choose it.
marrowyung

ASKER
"At one time you need around 45 GB of  Data in RAM "

we have 831 GB database size, why 45GB? I think it is 166GB.

"Now we should max given 50% of the RAM for SQL DB Engine. So effectively we need to double the RAM."

why 50% ?
ASKER CERTIFIED SOLUTION
Pawan Kumar

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
marrowyung

ASKER
so it is not 96GB of RAM, right? I have to proof that this is exactly what we need to add.

and also how much RAM extra each additional replication/publication need?
⚡ FREE TRIAL OFFER
Try out a week of full access for free.
Find out why thousands trust the EE community with their toughest problems.
Pawan Kumar

No we need 96 GB only. Additional how much need for replication I need to check.
marrowyung

ASKER
"Additional how much need for replication I need to check."

tks.

a calculate with all variable you discussed is preferrable, like database size is a varible , which make your conclusion of 96GB of RAM with link to proof is perfect.

"No we need 96 GB only"

I don't know what make this figure comes out is needed, tks.
Pawan Kumar

there is no Maths around this.  We just have to decide based on our requirement and later on increase the hardware when the load grows.
Your help has saved me hundreds of hours of internet surfing.
fblack61
marrowyung

ASKER
"We just have to decide based on our requirement "

what requirement ? if I tell my boss says for each publication we need extra 20B of RAM because of ......., then it is much better.

we add one more publication it will use RAM again.

"and later on increase the hardware when the load grows."

what if during the weekend we will see unresponsive replication agent error message or long running replication error message. usually we see it during the weekend only. so can't add RAM because of load grows.

we need time to order it.

and I saw before that publisher shows replication tempdb contention and a lot of time this replication agent log gone without any reason.

any tools you can suggest me to use to detect if there are ?

I knew there are tempdb speed measurement on write speed latency, but for replication ,how can we measure we need to do sth on the tempdb.
Pawan Kumar

Well there are many tools available in the market. There are many good from redgate.

http://www.red-gate.com/products/

Other tools to check performance are -

Database health monitoring <<http://databasehealth.com/>>.
Cloudmonix.  <<http://cloudmonix.com/blog/the-ultimate-list-of-top-sql-monitoring-tools/>>

I have not tried these. Freeware or not - verify. You may be need try out few and choose based on your need.
marrowyung

ASKER
then forget about it, I will tried to make use of the idera DM for that.
⚡ FREE TRIAL OFFER
Try out a week of full access for free.
Find out why thousands trust the EE community with their toughest problems.
Pawan Kumar

No problem. If Idera works for you then it is great.
marrowyung

ASKER
I am using this guideline for that:

https://www.brentozar.com/archive/2013/09/how-to-prove-your-sql-server-needs-more-memory-video/

and it seems publisher still have just enough RAM.

let see what will be told by DM.
marrowyung

ASKER
tks.
This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.
rwheeler23
marrowyung

ASKER
hi,

I re read that it seems no fixed calculation on how much RAM we need further for our SQL server?

and this one: https://www.brentozar.com/archive/2014/05/much-memory-sql-server-need/

don't even tell us at all, it just say need more RAM but how much RAM ?  I am happy if there are a performance counter check this.