1. 구조(세 가지 컴포넌트)
1-1. Database Node (DB 서버)
- Oracle Database와 Oracle RAC가 실행되며 일반적으로 일반적으로 RAC 환경으루 구성됨. 스토리지 서버와 Infiniband 네트워크를 통해 연결되어 데이터 및 사용자 요청 SQL을 처리함.
- SQL Parsing 및 Optimizer를 실행하며 Execution Plan을 생성하며 CPU intensive 작업을 처리함.
- RAC 노드 간 Interconnect 상태 점검이 중요하며 CPU, PGA, Network usage 확인이 필요함(쿼리 병렬 처리 시 튜닝 요소)
1-2. Storage Server (Cell 노드)
- 데이터베이스 서버에서 요청하는 데이터를 저장하고 관리하는 역할을 함. Exadata는 스토리지 서버에 Flash Cache를 사용하여 데이터 접근 속도를 향상시키고, Parallel Storage Grid로 구성하여 데이터를 분산 저장함.
- Smart Scan, HCC, Flash Cache 등의 기능을 활용함. Smart Scan 활성 여부 확인이 필요함.
1-3. Internal Network (Infiniband 네트워크)
- 데이터베이스 서버와 스토리지 서버 간에 데이터를 초고속으로 전송하는 역할을 함. Infiniband는 낮은 지연 시간과 높은 대역폭을 제공하여 데이터 처리 성능을 향상시키고, 서로 다른 rack 간 연결에도 사용됨.
- 고속 통신망 (InfiniBand 또는 RoCE) 사용
2. Oracle Exadata 장점
- 고성능 : 고속 네트워킹과 Flash Cache, Parallel Storage Grid를 통해 데이터베이스 성능을 크게 향상시킴
- 가용성 : RAC 환경을 통해 데이터베이스의 고가용성을 제공하고, 스토리지 서버의 분산 저장 구조를 통해 데이터 손실의 위험 감소
- 확장성 : 필요에 따라 데이터베이스 서버와 스토리지 서버를 추가하여 시스템의 규모를 확장할 수 있음
- 관리 용이성 : Exadata는 일체형 시스템으로 설계되어 관리 및 유지보수 용이
3. Oracle Exadata 특성
3-1. Smart Scan
- 스토리지 서버에서 데이터를 읽어 들이기 전에 데이터베이스 서버에서 필요한 데이터만 선택하여(조건절(filter)과 projection(열 선택) 처리를 먼저 수행) 전송하는 기술로, 데이터 전송 효율을 높임
- Table Full Scan, Direct Path Read 시 활성화
- CELL_FLASH_CACHE, CELL_OFFLOAD_PLAN_DISPLAY 등 Plan 정보 확인 가능
- Disk I/O 및 Network I/O 절감과 DB 서버 CPU 사용률 감소
- Smart Scan 미사용시 쿼리 형태 확인 (Nested Loop 등), Index 사용 여부
3-2. Hybrid Columnar Compression (HCC)
- Hybrid Columnar Compression = Hybrid + Columnar + Compression으로 Row와 Column 기반의 압축 방식을 조합해 같은 컬럼 값끼리 그룹핑해서 압축함. 데이터를 컬럼 단위로 압축 및 저장을 하고 중복을 최대한 제거해 DW에서 저장 공간을 절감하고 성능을 향상시킴.
- 압축모드 : Query High/Low=조회 중심 시스템, Archive High/Low=장기 저장용
- 일반적인 OLTP 환경에서는 HCC 사용 제한 (Direct Path Insert 필요)
- Exadata 또는 ZFS Appliance와 같이 특정 스토리지에서만 동작함(일반 디스크, NAS, NFS 마운트에서는 비활성화)
3-3. Exadata Smart Flash Cache
- Exadata Storage Cell에 탑재된 Flash 디스크에 자주 접근하는 데이터 캐싱
- Read + Write Through 지원
- 자동 캐싱, DBA가 따로 핸들링 불필요하지만, 정책 설정 가능
- v$cell_flash_cache, v$cell_state에서 확인하며, LRU eviction, cache hit ratio 모니터링이 중요
- Flash Cache Hit이 저조하면 Data skew, Hot blocks, 캐시 정책 점검 필요
3-4. Storage Index
- Storage Cell에 저장된 min/max metadata 기반 인덱스. 해당 블록의 데이터를 읽을 필요가 없는 경우 생략 가능
- Storage Index에 저장된 범위 정보로 해당 블록 제외 가능 → I/O 절감
3-5. RDMA (InfiniBand/RoCE)
- DB Node ↔ Storage Node 간 CPU를 거치지 않고 메모리 간 직접 통신 가능 (Remote Direct Memory Access)
- cell single block physical read 지연 시 네트워크 체크 필요
- 네트워크 패브릭 상태에 따라 성능 민감 → RoCE 환경에서는 PFC 설정 점검
- Network 병목 발생 시 RDMA 성능 확인 필요
3-6. Oracle RAC + ASM
- RAC: DB 서버 노드 간 병렬 처리, 고가용성 구현
- ASM: Cell Disk와 Grid Disk 레벨에서 I/O balancing 수행
- Exadata에서는 HIGH, NORMAL redundancy 방식 적용
- asmcmd lsdg / v$asm_diskgroup, v$asm_disk로 상태 점검
- Rebalance 작업 시 Disk/Cell 상태 주의
'Oracle' 카테고리의 다른 글
[Oracle] AWR report 생성 방법 및 설정 변경 (0) | 2025.05.27 |
---|---|
[Oracle] Tablespace 개념 및 생성/추가/Resize/용량 확인 (0) | 2025.05.14 |
[Oracle] 오라클 파라미터 파일 : 환결설정 파일 spfile, pfile 알아보기 (0) | 2025.05.13 |
[Oracle] Table과 Index의 Tablespace 옮기기 (0) | 2025.05.05 |
[Oracle] DBLink를 이용한 impdp 사용하기 (0) | 2025.05.04 |