33

We are currently designing our new database servers, and have come up with a trade off I'm not entirely sure of how to answer.

These are our options: 48GB 1333MHz, or 96GB 1066MHz.

My thinking is that RAM should be plentiful for a Database Server (we have plenty and plenty of data, and some very large queries) rather than as quick as it could be. Apparently we can't get 16GB chips at 1333MHz, hence the choices above.

So, should we get lots of slower RAM, or less faster RAM?

Extra Info:

Number of DIMM Slots Available: 6
Servers: Dell Blades CPU: 6 core (only single socket due to Oracle licensing).

Skyhawk
  • 14,230
Josh Smeaton
  • 1,380

7 Answers7

59

You will want to go with the large and slow RAM. The difference in RAM performance is negligible compared to the difference between RAM performance and disk performance.

Skyhawk
  • 14,230
16

Alright, it's very very very simple :

Does your database fit in 48GB of RAM with OS and all ? if yes, take that. Else, take 96GB

Also, database fitting in xyz GB of RAM means it fits with index's, views and all that.

SSD comments are complete utter nonsense, both the bandwidth and access time are not on the same level and no SSD can justify taking less RAM.

Morg.
  • 317
13

Database only? Depending on the database, I would think the larger RAM would be better. Speed difference has been proven to be miniscule at best, but the additional 48gb will / may make a huge difference.

Skyhawk
  • 14,230
TomTom
  • 52,109
  • 7
  • 59
  • 142
11

Definitely large RAM, speed be damned.

Access to random data for RAM technology from XX century '90 is below 100 ns. That's using practically ancient chips that won't even physically fit into anything borderline contemporary.

Access to random data for cutting edge 15k rpm hard drives is in measured in miliseconds. 100 ns is 10 000 times shorter (nano -> micro -> milli) than 1 ms. Current RAM is faster, and HDD needs several milliseconds to access data. I couldn't care less if my RAM was 50 000 faster or only 30 000 times faster than HDD, if I could get more.

Paweł Brodacki
  • 6,591
  • 1
  • 22
  • 23
5

You must take your attention in some points:

  • Memory lantecy Memory speed depends on two factors: bus speed and latency. Usally chips with more density result in a higher latency, wich finaly means less speed
  • Total index data The most critical y to load the entire index data into memory. Index data is the most critical data you need in memory (higher penalty effect in performance).
  • Disk speed Do you have the DB data stored in SSD? If the answer is yes, take care specially of memory latency.
nefeli
  • 66
2

MEMORY BANDWIDTH =/= SPEED!

Probably the most important piece of missing information information is the memory timings and CPU/FSB type. lower the CPU memory load delay by a few cycles and you will blast ram double the bandwidth in certain calculations. Some databases dont use massive amounts of ram due to operating system and technical reasons, what database server are you using? CPU type? L[123] cache levels? type of queries to be run? size of the database?

0

Before spending too much money on wrong hardware, I would do some tests and analysis before buying hardware.

  • First of all, think about your SLA.
  • any hard requirements to performance and response times?

You choice should depend on many factors:

  • under different workloads and usages, what is actually the bottleneck?
  • CPU, memory, storage, network?
  • Is it perhaps more important to spend more money on faster storage than more memory?
  • faster CPU than more memory? faster network? minor redesign on sofware/sql?

  • you analysis could also be very much relevant to the developers, database and software architcts, and sql query designers.....

If you are using windows - you could easily run perfmon to see some statics on the current running system and mayby be very lucky to get a clear idea of your your needs.