일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- helm
- 솔데스크
- EKS 클러스터
- terraform
- 메탈LB
- blue-green
- 로드밸런서 컨트롤러
- grafana on kubernetes
- 딥레이서 보상함수
- EFS CSI Driver
- 그라파나 대시보드
- jenkins
- LoadBalancer Controller
- 쿠버네티스 컴포넌트
- Firelens
- AWS 딥레이서
- kubernetes 동작 원리
- Prometheus install
- 쿠버네티스
- 그라파나 시각화
- livenessPorbe
- Solution Architecture
- 깃허브 액션
- 딥레이서
- SAA 합격 후기
- github action 사용법
- headless service
- Kubernetes
- Kubernets on Jenkins
- Aurora cluster
Archives
- Today
- Total
mingming
Oracle - 메모리 관리 본문
공유 메모리 자동 관리 ( Automatic Shared Memory Management, ASMM )
공유 메모리 자동 관리를 사용하게 되면 MMAN 백그라운드 프로세스가 주기적으로 업무 부하에 따른 SGA 구성 요소( Shared Pool , Data Buffer cache, Large Pool, Java Pool )의 사용량을 파악합니다. 파악한 정보로 SGA_TARGET 파라미터가 지정한 범위 내에서 SGA 구성 요소의 크기를 동적으로 지정합니다.
공유 메모리 자동 관리 장점
- SGA 관리 요소 감소 : 데이터베이스 관리자가 수행하던 SGA 구성 요소 크기 조정을 오라클이 자동으로 수행합니다.
- 메모라 사용 효율 증가 : 부하에 따라 SGA 구성 요소의 크기가 동적으로 조정되어 메모리 사용 효율이 증가합니다.
- 메모리 부족으로 인한 에러 발생 감소
공유 메모리 자동 관리 설정
파라미터 | 내용 |
STATICS_LEVEL | TYPICAL 또는 ALL로 설정, 자가 진단을 위한 통계치를 수집하는 레벨을 정의하는 파라미터 입니다. BASIC : 통계를 수집하지 않습니다. TYPICAL : 데이터베이스 통계를 수집합니다. ALL : 운영체제 통계와 SQL 실행계획 통계를 추가로 수집합니다. |
SGA_TARGET | SGA_TARGET 파라미터는 SGA_MAX_SIZE 파라미터 값 이하까지 데이터베이스 운영 중 동적으로 설정이 가능합니다. |
공유 메모리 자동 관리 단점
- 관리항목 증가 : MMAN 백그라운드 프로세스가 비정상 종료 시 장애 발생
- 성능 저하 가능 : MMAN 백그라운드 프로세스의 추가적인 모니터링에 의한 자원 사용
- 정확한 메모리 관리 어려움 : 리터럴 SQL등이 많은 경우 Shared Pool이 비정상적으로 커지는 현상이 발생
리터럴 SQL
바인드 변수 처리를 하지 않아 하드 파싱을 일으키는 형태의 SQL을 의미합니다.
공유 메모리 자동 관리할 수 없는 SGA 영역
자동 관리는 불가능하지만 파라미터 값을 변경해 수동으로 조정이 가능합니다.
항목 | 내용 |
고정 영역 | Shared Pool에 저장된 고정 영역 |
다중 블록 데이터 버커 캐시 | 기본 데이터 버퍼 캐시를 제외한 DB_2k_CACHE_SIZE와 같은 파라미터로 지정된ㄴ 다중 블록 데이터 버퍼 캐시 |
고정 또는재활용 데이터 버퍼 캐시 | DB_KEEP_CACHE_SIZE 또는 DB_RECYCLE_CACHE_SIZE로 지정되는 고정 또는 재활용 데이터 버퍼 캐시 |
리두 로그 버퍼 | LOG_BUFFER로 설정하는 리두 로그 버퍼 |
메모리 값 설정
항목 | 내용 |
0 으로 설정 | SGA 구성 요소의 값을 0으로 설정하면 MMAN 백그라운드 프로세스가 각 SGA 구성 요소의 크기를 자유롭게 증가시키고 감소시킵니다. |
0 이 아닌 다른 값 | SGA 구성 요소의 크기가 자동으로 변경되지만 사용자가 지정한 값이하로 감소하지 않습니다. |
메모리 자동 관리 확인
SELECT * FROM V$SGA_DYNAMIC_COMPONETES;
DESC V$SGA_DYNAMIC_COMPONENTS;
컬럼의 의미
컬럼명 | 내용 |
COMPONENT | SGA 구성 요소 |
CURRENT_SIZE | 현재 SGA 구성 요소의 크기 |
MIN_SIZE | 데이터베이스 시작 후 할당되었던 가장 작은 크기 |
MAX_SIZE | 데이터베이스 시작 후 할당되었던 가장 큰 크기 |
USER_SPECIFIED_SIZE | 사용자가 직접 설정한 SGA 구성 요소 크기(SGA 하한 값) |
OPER_COUNT | 데이터 베이스 시작 후 조정되었던 횟수 |
LAST_OPER_TYPE | 가장 마지막으로 조정된 타입 |
LAST_OPER_MODE | 가장 마지막으로 조정된 방법 |
LAST_OPER_TIME | 가장 마지막으로 변경된 시간 |
GRANULE_SIZE | SGA 그래뉼 단위 |
LAST_OPER_TYPE
- STATIC : 데이터 베이스 시작 후 변동 없음
- INITIALIZING : 초기화
- GLOW : 크기 증가
- SHRINK : 크기 축소
- SHRINK_CANCEL : 크기 축소 중 취소
LAST_OPER_MODE
- MANUAL : 사용자가 직접 수정
- DEFERRED : 수정 값이 지연되어서 적용
- IMMEDIATE : 수정 값이 바로 적용
'새싹 하이브리드 클라우드 > Database' 카테고리의 다른 글
Oracle - System View (2) | 2023.10.21 |
---|---|
Oracle - 엑세스 절차 (2) | 2023.10.17 |
Oracle DB Architecture - Process (0) | 2023.10.12 |
Oracle DB Architecture - Redo Log Buffer (0) | 2023.10.11 |
Oracle DB Architecture - Data Buffer Cache (0) | 2023.10.11 |