초보전산담당자가 궁금한점이 있습니다.(DB크기와 RAM 관계)

   조회 6418   추천 0    

안녕하세요,

현재 전산담당자이며, DB와 RAM과의 관계가 궁금합니다. 저희는 MSSQL을 사용중이고요.

저희는 따로 DB서버가 없으며,

사용자들이 해당서버 프로그램 업무가 너무 느리다는 말이 많아  램업그레이드를 할 예정입니다.

저는 DB용량체크도 못하는 수준이라 이렇게 도움을 청합니다..


1. sql실행하여 연결후, Databases - 해당프로그램 테이블(?) 우클릭 - 속성 - Files 부분으로 사이즈를 보는것 맞나요??

2. 맞다면, 그 DB크기가 8기가 조금 안되는데 램은 6기가입니다. 인터넷 서칭하다가 보니

해당 DB크기< 램크기 가 더 커야된다는 말이 있더라고요. 그렇게 성능을 맞춰야한다는데 맞나요??

3. 현재 서버는 HP dl360 G7이며 램슬롯이18개인데, 3/ 6 / 9 에 2기가씩 총 6기가가 꼽혀있습니다.

램 업그레이드를 할 경우, 12 / 15 에 꽂아야한다는건 아는데 그 이후에는 1슬롯에 꼽으면 되나요??

4. 업그레이드 할 램은 4기가 짜리 꼽아도 되나요?? 

5. 작업관리자로 메모리사용률을 보니 sql에 할당된 메모리가 굉장히 높더군요, 이부분은  sql서버내에서 설정을 할 수 있는데

서버 램의 80%정도로 줄여도 되나요??


너무 기본적인 질문인것 같지만, 저에게는 많은 도움이 될 것 같습니다.

답변부탁드립니다


 

123
짧은글 일수록 신중하게.
회원K 2016-03
RAM 문제는 아닌 것 같은데요?
서버의 SPEC을 정확히 올리시고 조언을 구하시는 것일 좋을 것 같습니다.
HDD - Raid - CPU ...
박인호 2016-03
DB를 단독으로 사용하지 않고 있다면
사용량을 고려해 할당된 메모리를 줄여야 할 듯 합니다.
앙드레준 2016-03
OS 버전/에디션, SQL서버의 버전/에디션이 답변드리기 위한 필수 정보입니다.
     
앙드레준 2016-03
아 다시 보니 DB서버가 없군요...

1. 프로그램을 배포해서 Stand Alone 으로 유저가 각자 쓰는거라면,
    SQL서버 배포본이 뭔지 알아야겠네요.

2. DB서버 전용으로 구성한건 아니나 서버에 여러가지 역할이 있고, SQL서버도 운영중이라는 뜻이라면,
    윗글에 적은 정보가 필요합니다.

사용자 수나 네트웍 환경도 고려대상입니다.
딸기대장 2016-03
여기 꽤 큰 회사이고...센서로 올라오는 데이타를 처리하는 Db가 SQL서버2008입니다.
사용램이 4G이고, 윈도우서버가 32비트라서 DB자체는 2G메모리에서 움직입니다.
수집서버라서 딱 정해진 퀴리만 돌아가긴 하지만, 데이타가 100G정도 되는데 잘 돌아갑니다.

일단은 업무프로그램에서 사용하는 쿼리를 분석해보시면, 아마 일부쿼리가 굉장히 느리게 움직일껍니다.
그것만 개선하면 될 것 같은데요. 메모리가 많으면 분명 좋긴 합니다만. 쿼리 자체가 엉망이면 아무리 올려도 효과는 별롭니다.
김상진 2016-03
일반적으로 db가 느린건
sql튜닝이 많죠
정말 hw가 부족할정도면 보통은 많진않더군요
단,  구성자체를 엉망으로한경우도 있긴하더군요
     
캔위드 2016-03
+1
튜닝이 진리죠
프로파일러 돌려보세요
김상진 2016-03
그냥 ms sql튜닝 업체 수배해서 처리하시는게 가장 속편합니다
아님 인맥동원해서 하는것도 있긴하구요
단 돈은 들어가신다고 생각하시는게 좋죠
Power멘솔 2016-03
먼저, 답변 감사드립니다^^
서버스펙을 추가로 말씀드리자면,
Intel Xeon E5620
Win 2008 R2 Standard입니다.
MSSQL같은경우 램 업그레이드가 효과가 좋다고 해서 여쭤본거고요..아무래도 튜닝관련하여 조치는 안될듯합니다..
프로그램을 배포하여 사용자들이 사용하는 식이며, 사용자는 25명 내외입니다.
혹시나 추가로 조언해주실부분이 있다면 부탁드리겠습니다.
     
포올 2016-03
1) MSSQL의 버전이 알고 싶네요..
2) 사용자에게 프로그램을 배포한다는게 MSSQL을 배포한다는것인가요? 이건 아니겠지요?
3) 튜닝 관련하여 조치가 안된다는게 무슨뜻인지요? 도움을 줄 사람이 있어도 서버는 건드릴수 없다는 것인가요?
Power멘솔 2016-03
죄송합니다..제가 잘몰라서 제대로된 정보도 없이 질문을 드렸네요
1) mssql 2008 R2입니다.
2)서버에는 DB및 중앙프로그램이 있고, 그걸 사용자들이  사용합니다.
3) 튜닝을 도와줄 사람도 없고, 비용부분때문에 1차적으로 메모리 업그레이드를 할예정입니다.
     
포올 2016-04
일단, TEMP 파일의 수를 늘려 보시지요..
http://yoonsy.tistory.com/31
이글을 참고해 보세요
거리가 가깝다면, 직접 봐드리고 싶어 지네요.. 하하하
     
앙드레준 2016-04
윈도 2008 R2 면 64비트 일테니 32GB까지 확장가능합니다.
SQL 2008 스탠다드면 OS제공 메모리를 대부분 사용할 수 있습니다.

1) SW적인 해결 -> 쿼리 튜닝이 근본적인 해결책입니다.
  소스에서 쿼리를 수정하려면 기본제공되는 프로파일러로 쿼리 확인하시면서 DB구조 보시면서 분석하셔야하는데,
  공부가 필요하시면 시간이 걸릴겁니다.

2) HW적인 해결책 -> 나아지기는 합니다. 다만 DB가 커지면 다시 상황이 발생할겁니다. 그 시간은 예상할 수 없습니다.
    : 사용자가 25명이면 메모리 6GB는 그리 부족한게 아니라 여겨집니다만... 다른 프로그램도 있다니 합계 12GB 정도 만드시는것도 좋을것 같습니다.
    : DB서버는 I/O 속도에 민감합니다. 쓰기 속도가 빠른 SSD를 추가하시고, DB파일을 SSD에 배치하시면 크게 도움될겁니다.
      추가로 MS-SQL에서 사용하는 Temp DB를 별도의 SSD에 CPU 코어갯수 만큼 미리 생성해두고 쓰시는것도 크게 도움됩니다.
      이건 웬만한 책보시면 혹은 서핑하시면 설정방법이 나올겁니다.

ps1. 아래 남극나무님 설명.. 좋네요.^^
ps2. 정원혁씨 MS-SQL 튜닝 책보시면 도움될겁니다.
회원K 2016-04
서버에 DB 프로그램로직이 없다고 튜닝을 못하는 것은 아닙니다.
파라미터 튜닝부터 index 튜닝까지 다양하게 할 것이 많습니다.

램 증설 효과는 별로 없다에 1표.
     
양철괭이 2016-04
+ 1
저희는 엔서널버젼을 사용하기 때문에 1CPU 에 메모리 제약도 최대 2기가입니다.
적당하게 한번에 수백만건을 쿼리하는것이라면 몰라도 필요한 데이터 추출해 가공하고 하는거라면 인덱스 관리가 중요하다 생각합니다.
(외부 스케줄러 프로그램으로 인덱스 리빌드를 주기적으로 해주면서 exec sp_updatestats 라는 명령어로 정리도 한번씩..)
남극나무 2016-04
일반적으로 프로그램이 DB를 이용할 때, 속도가 느리다고 말이 나오면 거의 80%~90%는 DB 문제입니다. 그중 Index 미설정이 80%~90%를 차지합니다.
쉽게 튜닝하는 방법인데요, 아래와 같이 따라해보세요.
1) SQL Server Management Studio(SSMS) -> 도구 -> SQL Server Profiler 실행
2) 로그인 -> 추적 속성 -> 실행
위와 같이 하면, 프로파일링 창이 뜨는데, 실시간으로 Query 실행 속도를 볼수 있습니다. CPU, Reads(IO), Writes(IO), Duration이 중요합니다. 자세한 것은 찾아보시고요..
이 프로파일링 창을 속도가 느리다는 시점을 기준으로 10~20분 (입맛에 맞게) 수집해서 저장합니다.(파일-> 저장 : 추적파일)
3) SSMS -> 도구 -> 데이터베이스 엔진 튜닝 관리자 -> 로그인
4) 파일 -> 새 세션
5) 오른쪽 화면 -> 작업 -> 파일(좀전에 저장한 추적파일 선택)
6) 아래 튜닝할 DB 선택 -> 분석 시작
위와 같이 하면, 분석을 하고, 결과를 보여줍니다.
대충 몇 % 성능이 좋아진다고 나오는데, 이걸 바로 적용/튜닝하면 됩니다.(아니면 적당히 사용자가 없는 시간에 적용)
     
DoubleSH 2016-04
오호....튜닝분석기가 이렇게 쓰는 거였군요... (지나가던 MSSQL'도' 관리하는 엔지니어가 계속 지나가며)


QnA
제목Page 2209/5718
2014-05   5207820   정은준1
2015-12   1739641   백메가
2017-03   6770   행복하세
2020-10   3093   전진
2007-04   5230   정은준
2016-03   4065   아틀란틱탱
2004-08   6966   김동률
2013-09   9962   장동건2014
2015-01   4014   허강준
2016-03   6419   Power멘솔
2007-04   5049   김세호
2004-08   7008   임시현
2017-03   3867   윤건
2004-09   7380   윤호용
2016-04   3507   이문영
2004-09   7553   박찬민
2011-01   9918   하우디자인
2004-09   7161   한동훈
2017-03   3935   빠시온
2018-06   11888   미우지시언
2007-05   5227   한두성
2023-12   1819   IT왕초보