Oracle Multi-Tenant DB 에서는 CDB(Container DB) 안에 여러 PDB(Pluggable DB) 들이 시스템 자원(CPU, Memory, Disk I/O 등)을 공유하고 있습니다.
만약 특정 PDB가 지나치게 자원을 많이 사용함으로써 다른 PDB 들에게 영향을 주는 경우에 대한 대책이 있어야 합니다.
미꾸라지 한마리가 물을 흐리는 형국이 PDB들간에서도 발생할 수 있기 때문이죠.
오라클DB에서는 이런식으로 한집안에 있는 DB 인스턴스들끼리의 자원경합을 방지하기 위해 다음과 같이 2가지 기능을 제공합니다.
1) Resource Manager 를 통한 자원 배분
2) PDB 레벨에서 지정가능한 Init Parameter
Resource Manager 는 Multi-Tenant 기능 이전부터 있었던 오래된 기능입니다. PDB들뿐만아니라 한서버내에 들어있는 일반 DB 인스턴스들간의 자원사용량을 통제할 수 있습니다.
DB 초기화 파라메타(Init Parameter)는 DB의 자원사용량을 통제합니다. CPU, Memory, 병렬프로세스 갯수 등을 지정하여 특정 DB가 너무 많은 자원을 사용하지 않도록 지정할 수 있습니다.
일반적으로 Multi-Tenant 구조에서는 PDB들이 전체 시스템자원을 공유하는 구조이기 때문에 Init Parameter 를 CDB 레벨에서 관리합니다.
하지만, 일부 DB 파라메타들은 PDB 레벨에서 지정함으로써 특정 PDB 의 자원사용을 제한하는 것이 가능합니다.
이 PDB 레벨에서 별도로 지정가능한 Init Parameter 들은 DB 버전별로 약간씩 다릅니다. 버전이 올라갈수록 지정가능한 파라메타수가 점점 늘어납니다. 궁극적으로 거의 모든 파라메타들을 별도로 지정할 수 있도록 진화할 것으로 예상됩니다.
'IT관련' 카테고리의 다른 글
Oracle 19c 에서 멀티테넌트 DB 생성 (Create Multitenant Database) (0) | 2020.04.16 |
---|---|
멀티테넌트 DB(CDB) 내의 PDB 에서 변경할 수 있는 DB 초기화 파라메타 (0) | 2020.04.13 |
오라클 멀티테넌트 DB 기본개념 정리 (Oracle Multi-Tenant DB Basics) (0) | 2020.04.10 |
오라클 에러 정보 (ORA-65096) - 공통 사용자 또는 롤 이름이 부적합합니다. (0) | 2020.04.10 |
오라클DB 패스워드 없이 로그인하는 방법 (전자지갑 wallet 이용) (0) | 2020.04.03 |