멀티테넌트 아키텍처
2024. 9. 16. 12:30ㆍDBMS/ORACLE Admin
반응형
기존 오라클 데이터베이스 아키텍처에서는 운영 환경이든 개발 환경이든 상관없이 각 데이터베이스 인스턴스마다 개별적인 메모리(SGA, PGA)를 할당하고, 각 데이터베이스마다 개별적인 데이터베이스 파일을 생성하는 방식으로 운영되어 자원을 불필요하게 낭비하는 상황이 자주 발생했다. 최근 클라우드 환경에서 효율적인 자원 할당은 중요한 과제가 되었으며, 자원 관리의 비효율 문제를 해결하기 위해 오라클은 12c 버전에서 멀티테넌트 아키텍처라는 새로운 방식의 데이터베이스 아키텍처를 제시했다.
멀티테넌트 아키텍처
- 멀티테넌트 아키텍처는 여러 개의 데이터베이스를 하나의 컨테이너 데이터베이스(CDB)에 통합하여 관리할 수 있는 방식이다. 여러 데이터베이스가 공유 메모리(SGA, PGA)와 공유 데이터 파일을 사용함으로써, 자원 낭비를 줄이고 운영 효율성을 크게 높일 수 있다.
- 이 구조에서는 각 데이터베이스가 플러거블 데이터베이스(PDB)라는 형태로 존재하며, 필요에 따라 쉽게 생성, 관리, 또는 이동할 수 있다.
- 멀티테넌트 아키텍처(Multitenant Architecture)란, 하나의 CDB(Container Database) 내에서 여러 개의 PDB(Pluggable Database)를 생성하고 관리하는 아키텍처를 의미한다. 이 구조는 오라클 데이터베이스의 12c 버전에서 처음 도입되었다.
주요 장점:
- 자원 효율성: 여러 개의 데이터베이스가 개별적으로 자원을 할당받는 것이 아니라, 하나의 공유된 자원을 통해 관리된다. 이는 메모리와 스토리지 자원을 더 효율적으로 사용할 수 있음을 의미한다.
- 운영 간소화: 데이터베이스를 통합 관리함으로써, 데이터베이스 운영 및 관리를 더욱 간소화할 수 있다. , 패치나 업그레이드 작업을 단일 CDB에서 수행할 수 있다.
- PDB는 쉽게 생성하거나 다른 CDB로 이동할 수 있으며, 클라우드 환경에서도 손쉽게 확장 가능한 구조이다
CDB(Container Database)와 PDB(Pluggable Database)란
- CDB(Container Database): 물리적인 데이터베이스로, 공유 메모리(SGA, PGA)와 같은 시스템 리소스를 관리하고, 여러 PDB가 이 CDB 내에 존재한다. CDB는 여러 PDB에 대한 메타데이터와 시스템 데이터를 저장한다.
- PDB(Pluggable Database): CDB 내에서 개별적으로 존재하는 논리적 데이터베이스이다. 각 PDB는 자신의 사용자 데이터 및 관련 객체를 독립적으로 관리할 수 있으며, 필요에 따라 생성, 삭제, 또는 다른 CDB로 이동할 수 있다.
멀티테넌트 아키텍처에서 CDB(Container Database) 컨테이너
1. Root 컨테이너 (CDB$ROOT)
- CDB$ROOT라고 불리며, 오라클이 제공하는 메타데이터와 공통 사용자 정보를 저장하는 컨테이너이다.
- 이 컨테이너에는 오라클 시스템 사용자(SYS, SYSTEM) 및 시스템 수준의 오라클 메타데이터가 포함되어 있다.
- 여러 PDB가 이 Root 컨테이너의 시스템 메타데이터를 공유함으로써 중복 저장을 피할 수 있다.
2. Seed 컨테이너 (PDB$SEED)
- PDB$SEED라고 불리며, 새로운 PDB(Pluggable Database)를 생성할 때 사용되는 일종의 템플릿 역할을 한다.
- 새로운 PDB를 생성할 때, 이 Seed 컨테이너에 있는 기본적인 데이터베이스 구조를 복사하여 새로운 PDB를 만들게 된다.
- Seed 컨테이너는 읽기 전용 상태로 유지되며, 직접 수정하거나 접근하는 것은 불가능하다.
3. PDB 컨테이너
- PDB(Pluggable Database)는 12c 버전에서의 실제 애플리케이션 데이터베이스로, 이전 오라클 데이터베이스 버전에서 우리가 일반적으로 사용하던 데이터베이스와 유사한 역할을 한다.
- 사용자는 실제로 PDB에 접속하여 데이터를 처리하게 된다. 즉, 애플리케이션 측면에서 볼 때 사용자가 접속하는 데이터베이스가 바로 PDB라고 이해하면 된다.
- 각 PDB는 독립적으로 운영되며, 데이터와 객체들은 다른 PDB와 격리되어 있다.
반응형
'DBMS > ORACLE Admin' 카테고리의 다른 글
오라클 관리 01 메모리 관리 (0) | 2024.10.23 |
---|---|
오라클 인프라 (6) | 2024.10.06 |
Deferred Segment (0) | 2024.09.12 |
Oracle 데이터베이스의 프로세스 구성 요소 (0) | 2024.09.10 |
Oracle Grid Infrastructure (0) | 2024.09.10 |