[server] 데이터베이스 서버 : 작은 빠른 RAM 또는 큰 느린 RAM?

우리는 현재 새로운 데이터베이스 서버를 설계하고 있으며, 어떻게 대답해야할지 잘 모르겠습니다.

옵션은 48GB 1333MHz 또는 96GB 1066MHz입니다.

제 생각에는 데이터베이스 서버에 RAM이 충분해야한다는 것입니다 (우리는 많은 양의 데이터와 매우 큰 쿼리를 가지고 있음). 분명히 우리는 1333MHz에서 16GB 칩을 얻을 수 없으므로 위의 선택을하십시오.

그렇다면 우리는 더 느린 RAM 또는 덜 빠른 RAM을 얻을 수 있습니까?

추가 정보 :

사용 가능한 DIMM 슬롯 수 : 6
서버 : Dell 블레이드 CPU : 6 코어 (Oracle 라이센스로 인해 단일 소켓 만).



답변

크고 느린 RAM을 사용하고 싶을 것입니다. RAM 성능과 디스크 성능의 차이에 비해 RAM 성능의 차이는 무시할 만합니다.


답변

좋습니다. 매우 간단합니다.

데이터베이스가 OS 및 48GB RAM에 적합합니까? 그렇다면, 가져 가십시오. 그렇지 않으면 96GB를 사용하십시오.

또한 xyz GB의 RAM에 맞는 데이터베이스는 인덱스, 뷰 및 모든 것에 적합하다는 것을 의미합니다.

SSD 의견은 완전히 말도 안되며, 대역폭과 액세스 시간이 같은 수준이 아니며 SSD가 RAM을 덜 차지한다고 정당화 할 수 없습니다.


답변

데이터베이스 만? 데이터베이스에 따라 더 큰 RAM이 더 좋을 것이라고 생각합니다. 속도 차이는 기껏해야 작은 것으로 입증되었지만 추가 48GB는 큰 차이를 만들 수 있습니다.


답변

확실히 큰 RAM, 속도가 저하되었습니다.

XX Century ’90에서 RAM 기술에 대한 임의의 데이터에 대한 액세스는 100ns 미만입니다. 그것은 현대의 경계선에 물리적으로 맞지 않는 실질적으로 고대 칩을 사용하고 있습니다.

최첨단 15k rpm 하드 드라이브에 대한 임의의 데이터에 대한 액세스는 밀리 초 단위로 측정됩니다. 100ns는 1ms보다 10,000 배 짧습니다 (nano-> micro-> milli). 현재 RAM이 더 빠르며 HDD는 데이터에 액세스하는 데 몇 밀리 초가 걸립니다. 더 많은 것을 얻을 수 있다면 내 RAM이 HDD보다 50,000 배 빠르거나 HDD보다 30,000 배 빠르면 신경 쓰지 못했습니다.


답변

몇 가지 점에서주의를 기울여야합니다.

  • 메모리 유휴 메모리 속도는 버스 속도와 대기 시간의 두 가지 요소에 따라 다릅니다. 밀도가 높은 평소 칩은 대기 시간이 길어 지므로 최종적으로 속도가 느려집니다.
  • 총 인덱스 데이터 전체 인덱스 데이터를 메모리에로드하는 가장 중요한 y입니다. 인덱스 데이터는 메모리에 필요한 가장 중요한 데이터입니다 (성능에서 패널티 효과가 높음).
  • 디스크 속도 SSD에 DB 데이터가 저장되어 있습니까? 대답이 예인 경우 특히 메모리 대기 시간에주의하십시오.

답변

메모리 대역폭 = / = 속도!

누락 된 정보 정보 중 가장 중요한 부분은 메모리 타이밍 및 CPU / FSB 유형입니다. CPU 메모리로드 지연을 몇 사이클만큼 낮추면 특정 계산에서 대역폭이 두 배로 증가합니다. 일부 데이터베이스는 운영 체제 및 기술적 이유로 인해 많은 양의 램을 사용하지 않습니다. 어떤 데이터베이스 서버를 사용하고 있습니까? CPU 타입? L [123] 캐시 레벨? 실행할 쿼리 유형? 데이터베이스의 크기?


답변

잘못된 하드웨어에 너무 많은 돈을 지출하기 전에 하드웨어를 구입하기 전에 몇 가지 테스트와 분석을 수행했습니다.

  • 우선, SLA에 대해 생각하십시오.
  • 성능 및 응답 시간에 대한 어려운 요구 사항이 있습니까?

많은 요소에 따라 선택해야합니다.

  • 다른 워크로드와 사용량에서 실제로 병목 현상은 무엇입니까?
  • CPU, 메모리, 스토리지, 네트워크?
  • 더 많은 메모리보다 더 빠른 스토리지에 더 많은 돈을 쓰는 것이 더 중요할까요?
  • 더 많은 메모리보다 빠른 CPU? 더 빠른 네트워크? sofware / sql에 대한 사소한 재 설계?

  • 또한 분석은 개발자, 데이터베이스 및 소프트웨어 아키텍처, SQL 쿼리 디자이너와 매우 관련이있을 수 있습니다 …..

Windows를 사용하는 경우 perfmon을 쉽게 실행하여 현재 실행중인 시스템에서 일부 정적을 볼 수 있으며 필요에 대한 명확한 아이디어를 얻는 것이 매우 운이 좋을 수 있습니다.