메인 컨텐츠로 가기

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

DB2 9 소개, Part 3: DB2 9의 자가 튜닝(self-tuning) 메모리 (한글)

Rav Ahuja, DB2 Program Manager, IBM
Rav Ahuja는 IBM Toronto Lab의 월드와이드 DB2 프로그램 매니저이다. DB2 for Linux, UNIX, and Windows, Version1부터 참여했으며 DB2 개발, 기술 지원, 마케팅, 제품 전략 등 다양한 역할을 수행했다. DB2와 서비스 기반 솔루션 분야에서 고객 지원을 하고 있다. DB2 페이퍼, 기술자료, 책 등 활발한 저술 활동을 하고 있다. McGill University에서 컴퓨터 엔지니어링 학위를, University of Western Ontario에서 MBA를 받았다.

요약:  DB2® 9의 자가 튜닝(self-tuning) 메모리 관리 기능은 데이터베이스의 메모리와 버퍼의 튜닝을 쉽게 하고 최적의 성능을 이끌어냅니다. 자동으로 데이터베이스 메모리를 설정하고, 런타임 시 동적으로 조정하여 성능을 최적화 하고 관리자의 생산성을 높입니다. 이것이 어떻게 작동하는지를 살펴보고, 효용성도 따져보고, 벤치마크 설정을 통해서 실제적인 결과도 알아봅니다. DB2 9의 신기능에 대한 자세한 내용은 본 시리즈의 기술자료에서 찾아 보실 수 있습니다.

이 연재 자세히 보기

원문 게재일:  2006 년 10 월 24 일
난이도:  중급
페이지뷰:  1206 회
의견:  


머리말

데이터베이스 워크로드는 항상 변화하기 마련이다. 워크로드와 실행 환경은 증가하는 사용자들, 쿼리 패턴의 변화, 관리 태스크 실행, 다른 애플리케이션들이 사용하는 리소스의 변화와 같은 다양한 요소들 때문에 시간의 흐름에 따라 변하기 마련이다. 따라서, 숙련된 관리자가 어떤 한 시점에 시스템 튜닝을 하더라도, 또 다른 시점에는 이러한 튜닝이 최적 상태가 아니다. 변경 사항들은 (일 또는 주 단위가 아닌) 초 단위로 발생하기 때문에 관리자가 대응할 시간이 없다. 데이터베이스 메모리 설정은 이 같은 시스템 환경의 변화에 취약하고 응답 시간에 심각한 영향을 미칠 수 있다.

데이터베이스 메모리 설정을 자동으로 튜닝하고, 런타임 시 동적으로 조정하여 퍼포먼스를 최적화 하고 관리자의 생산성을 높이는, DB2 9의 새로운 자가 튜닝(self-tuning) 메모리 관리 기능을 소개한다.

작동 방법

DB2 9의 자가-튜닝 메모리 기능은 시작 시 여러 메모리 구성 매개변수에 대한 값을 자동으로 설정하여 메모리 설정 태스크를 단순화 한다. 자가 튜닝(self-tuning) 메모리 매니저는 지능형 제어와 피드백 메커니즘을 사용하여 워크로드 특성, 메모리 사용, 데이터베이스의 다양한 공유 리소스에 대한 수요 등을 지속적으로 추적하여, 필요할 때 마다 메모리 사용을 동적으로 조정한다. 예를 들어, 정렬(sort) 작업에 더 많은 메모리가 필요하고, 몇몇 버퍼풀(buffer pool)이 메모리를 초과하면, 메모리 튜너(tuner)는 초과된 버퍼 풀 메모리를 비우고 이것을 정렬 힙(sort heap)에 할당한다.


그림 1. 데이터베이스 메모리
Database memory


Windows®와 AIX® 플랫폼에서, 자가 튜닝 메모리 기능은 전체적인 데이터베이스 메모리 요구량을 파악하고, 데이터베이스 메모리 사용량을 동적으로 조정한다. 이 플랫폼에서는 데이터베이스 리소스들간 메모리 활용도를 동적으로 조정하는 것 외에도, DB2는 워크로드가 메모리를 요구하는 만큼 물리적 메모리를 소비하고, 데이터베이스 메모리 요구량이 낮을 때 다른 태스크와 애플리케이션을 위해 그 메모리를 비워둔다.

자가-튜닝(self-tuning) 메모리 실행하기

메모리 자가-튜닝은 데이터베이스 공유 메모리 리소스에서 실행된다. 이 리소스에는 다음 사항들이 포함된다:

  • 버퍼 풀(Buffer pools) (ALTER BUFFERPOOLCREATE BUFFERPOOL 문으로 제어됨)
  • 패키지 캐시(Package cache) (pckcachesz 설정 매개변수에 의해 제어됨)
  • 잠금 메모리(Locking memory) (locklistmaxlocks 설정 매개변수에 의해 제어됨)
  • 정렬 메모리(Sort memory) (sheapthres_shrsortheap 설정 매개변수에 의해 제어됨)
  • 총 데이터베이스 공유 메모리(Total database shared memory) (database_memory 설정 매개변수에 의해 제어됨)

자가-튜닝(self-tuning) 메모리는 self_tuning_mem 데이터베이스 설정 매개변수를 사용하여 실행된다. DB2 9에서, 새로운 데이터를 만들 때 (파티션되지 않은 데이터베이스의 경우) 자가 튜닝(self-tuning) 메모리는 자동으로 실행된다. self_tuning_mem이 ON으로 설정되고, 위에 열거된 리소스용 데이터베이스 매개변수들이 AUTOMATIC으로 설정된다. 이전 버전의 DB2에서 마이그레이션 된 기존 데이터베이스의 경우, 자가 튜닝 메모리는 직접 실행되어야 한다. 모든 데이터베이스 메모리 리소스들을 자동으로 관리되도록 하는 대신, 원하는 메모리 리소스들(매개변수들)만 AUTOMATIC으로 설정할 수도 있다.

효용성

일반적으로, 최적의 연산을 위해 데이터베이스 메모리 매개변수를 설정하는 일은 복잡하고 시간이 많이 든다. 데이터베이스용 메모리 매개변수를 자동으로 설정함으로서, DB2 9은 데이터 서버를 설정하는 태스크를 단순화 한다. 이로서 DBA 생산성이 향상되고, 관리자는 다른 중요한 태스크에 집중할 수 있는 여유도 생긴다.

메모리 설정을 단순화 하는 것 외에도, 이 새로운 자가 튜닝 메모리 기능은 워크로드의 중요한 변경에 대해 동적이고 반응성이 뛰어난 고급 설정을 제공하여 퍼포먼스를 향상시킨다.

이러한 기능은 같은 시스템에서 여러 데이터베이스들이 실행되고 있을 때, 특정 데이터베이스가 피크 타임에 더 많은 메모리를 소비하도록 자동으로 설정하고, 다른 데이터베이스와 워크로드가 필요로 할 때를 대비하여 비워두기 때문에 이 효과적이다.

자가-튜닝(self-tuning) 메모리 수행 결과

그림 2의 그래프는 사용자의 요구에 따라 설정된 벤치마크에 대한 DB2 자가 튜닝 메모리 실행 모습이다. DB2는 자동으로 데이터베이스 공유 메모리(왼쪽 그래프)를 늘려 워크로드 요구를 충족시키고, 쿼리 처리량도 여기에 상응하여 증가세를 보인다. (오른쪽 그래프)


그림 2. 자동 튜닝이 시스템 퍼포먼스에 미치는 영향
Effect of automatic tuning on system performance

맺음말

DB2 9의 자가-튜닝 메모리는 많은 시간을 절약하고, 메모리 튜닝을 단순화 하며, 퍼포먼스를 자동으로 최적화 할 수 있는 혁신적인 기능이다. DB2 9을 다운로드 하고 이러한 기능을 직접 경험해 보기 바란다.

기사의 원문보기


참고자료

교육

제품 및 기술 얻기

토론

필자소개

Rav Ahuja는 IBM Toronto Lab의 월드와이드 DB2 프로그램 매니저이다. DB2 for Linux, UNIX, and Windows, Version1부터 참여했으며 DB2 개발, 기술 지원, 마케팅, 제품 전략 등 다양한 역할을 수행했다. DB2와 서비스 기반 솔루션 분야에서 고객 지원을 하고 있다. DB2 페이퍼, 기술자료, 책 등 활발한 저술 활동을 하고 있다. McGill University에서 컴퓨터 엔지니어링 학위를, University of Western Ontario에서 MBA를 받았다.

잘못된 도움말 신고

부정사용 신고

감사합니다. 이 항목은 운영자가 관심을 표시했습니다.


잘못된 도움말 신고

부정사용 신고

제출실패 신고. 나중에 다시 실행해주세요.


디벨로퍼웍스 로그인


IBM ID가 필요하세요?
IBM ID를 잊으셨습니까?


비밀번호를 잊으셨습니까?
비밀번호 변경

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

화면상에 보여지는 닉네임을 정하세요.

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

3개의 &이나 대쉬를 포함해주시고 31글자내로 제한해주세요.


developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


아티클 순위

의견

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=20
Zone=Information Management, 자율 컴퓨팅
ArticleID=170125
ArticleTitle=DB2 9 소개, Part 3: DB2 9의 자가 튜닝(self-tuning) 메모리 (한글)
publish-date=10242006
author1-email=rsahuja@ca.ibm.com
author1-email-cc=

태그

Help
검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오.

태그를 더 많이 보거나 적게 보기 위해 슬라이더 막대를 사용하십시오.

인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다.

내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.

검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오. 인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다. 내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.