1.OverView
1) Exadata(엑사데이터) 구성
- Single Instance DB 1개와 Storage Server 1개로 이루어진 구성으로 구축을 진행
- Local PC에서 OVM을 통하여 장비를 구축하다 보니 최소의 PC Resource를 사용하여 구축하여 Exadata의 Smart Scan을 TEST하기 위해 설치를 진행 함.(Exadata를 간접적으로 경험(Storage Server Software)하고 TEST하는 것이 목적)
[Oracle 자료 참고 이미지]
① Install Oracle Linux
② Install Storage Cell
③ Create Storage Cell Disk
④ Install Grid Infrastructure
⑤ Install Database
2) Exadata Smart Scan
- Disk Scan을 수행하는 동안 데이터베이스 서버로 다시 전송해야 할 데이터의 양을 줄여 성능에 있어 최적화를 목표로 한다.
- Sun을 인수하면서 Hardware + Software를 모두 성능 최적화를 하기 위한 노력을 계속 되어 왔다. CPU와 Memory의 경우에 과거에서부터 큰 수치로 성능이 개선되어 왔지만 Disk의 경우에는 그에 반해 성능적인 측면에서의 발전 속도가 늦어 Hardware에서의 성능 최적화에 대한 그 결과 중 하나인 Exadata가 나오게 된다.
[기본 개념 참조]
[Oracle 자료 참고 이미지]
- Smart Scan의 주요 3가지 요소
① Column Projection (DB 서버로의 데이터 전송량 감소를 통한 최적화)
- 필요한 테이블의 컬럼만 데이터를 반환함으로써 Exadata Storage 계층과 데이터베이스 계층 사이에 전송되는 데이터의 양을 제한하는 기능이다.
예) 필요한 테이블의 컬럼(Select List에 명시되어 있는 컬럼 내역과 Join시 사용된 컬럼을 이야기함)
② Predicate Filtering (DB 서버로의 데이터 전송량 감소를 통한 최적화)
- 주로 사용되는, 관심 있는 Row의 데이터만 DB 계층으로 반환하는 기능
- 위 구조에서 iDB에서 데이터 요청 시 Predicate 정보를 바탕으로 DB 계층으로 데이터를 반환하기 전에 표준
필터링 작업을 수행하여 필요한 데이터만 전송함으로써 데이터 전송 량의 감소에 따른 CPU 사용률의 자원을 절감한다.③ Storage Index (Disk I/O 감소를 통한 최적화)
- 스토리지 셀의 메모리 구조를 만들어 Table 당 최대 8개의 컬럼까지 각각 1MB Disk Storage Unit마다 최대/최소값을 유지하여 Disk I/O의 감소를 통한 최적화를 진행한다.
- Oracle Exadata Single Database TEST 구성을 통하여 Smart Scan의 핵심 요소인 Column Projection, Predicate Filtering, Storage Index를 테스트하는 것이 목적이다.
(단, Storage Server의 Heap메모리 Size에 의존하는 Storage Index TEST에만 제약이 있음)
[참고 문서 및 사이트]
- https://dbaesp.wordpress.com/2013/12/11/exadata-virtual-test-environment-for-oce-prep-storage-cell-node/
- http://uhesse.com/2011/01/19/exadata-part-i-smart-scan/
- http://www.oracle.com/technetwork/oem/exa-mgmt/em12c-exadata-discovery-cookbook-1662643.pdf
- Exadata의 Base Document (MOS ID 888828.1]