본문 바로가기

DB스토리/ORACLE

오라클 RAC(Real Application Cluster)

제 1장. RAC(Real Application Cluster)

1. GRID/RAC 개념

1) GRID의 개념

- 사용자가 원하는 데이터가 어디에 있는지, 어떤 컴퓨터가 요청을 처리하는지는 몰라도 원하는 만큼

의 정보를 처리할 수 있음

- 기업의 IT환경에 적용해 보면, 기업내에 산재해 있는 소형 서버들을 연결하여 커다란 컴퓨터 처럼

사용한다는 개념

■ 자원할당 : 자원을 요청하고 필요로 하는 누구든지 원하는 것을 얻을 수 있도록 하는것

■ 정보공유 : 사용자와 Application이 필요로 하는 정보는 언제 어디서나 필요에 따라 이용할 수

있도록 해주는 것

■ 고가용성

 

- GRID컴퓨팅의 필요성

저렴한 가격으로 기업의 인프라를 효율적으로 활용 할 수 있는 최적의 솔루션

- Oracle GRID 컴퓨팅

기업내 존재하는 중소형 서버들을 GRID 기술로 연결해 유휴 자원을 활용한다는 것

저비용 고효율을 강조하는 기업환경에서 오라클 GRID컴퓨팅 기술을 통해 저렴한 여러개의 서버를

연결시켜 하나의 커다란 서버로 활용가능

그렇기 때문에 고려하여 무리하게 서버를 구입할 필요가 없어짐

Oracle 10g의 g가 GRID의 g

 

2) RAC 개념

- Oracle Real Application Cluster는 OPS(Oracle Parallel Server)의 후속 제품으로 개발되어

Oracle 9i 버전부터 적용되어 있다

- 동일 데이터베이스를 여러 인스턴스가 접근할 수 있다

- 모든 노드가 동일한 데이터베이스에 접속가능하다

- 데이터베이스 디스크는 모든 노드가 Database에 access를 허용하기 위해 전역으로 사용해야 함

 

 

2) RAC의 장점

■ 확장성

- 데이터의 증가로 인한 시스템부하를 발생하면 더 큰 시스템을 구매하고 이관하는데 많은

비용이 소모되었다

 

■ 고가용성

- Rolling Patch, Rolling Upgrade로 서비스 정지를 최소화 시켜줌

 

2. RAC구조 및 동작원리

1) RAC구조

물리적인 하나의 데이터베이스를 여러대의 서버가 공유하는 것

모든 노드들은 같은 데이터를 사용하게 되어 논리적으로는 하나의 데이터베이스를 이용하는 것임

 

 

[ 노드 3개를 이용하여 RAC를 구성한 예 ]

 

 

[ 최적의 구성예 ]

 

 

3. RAC 구성 시 고려사항

1) RAC 내 공유 오브젝트의 관리

 

[ 설계방향 ]

- 인스턴스별로 사용하는 오브젝트에 대한 파티션 나누기

: 공유테이블 생성시 경합을 최소화 하기 위해 extent 를 인스턴스별로 할당한다

: 시퀀스 같이 공유하는 오브젝트의 캐시값을 증대시킨다

- LOCK의 배분을 조절(init.ora의 gc_files_to_lock, gc_rollback_segment 등)

: 공유 오브젝트를 중점 관리 테이블스페이스에 집중화 하고, 이 테이블스페이스에 많은

LOCK을 할당한다

: 조회 위주의 데이터와 전혀 공유하지 않는 데이터(한 노드에서만 사용하는 데이터) 에는

LOCK을 최소화 한다

- 동시에 같은 데이터를 액세스 하는 애플리케이션은 한 노드에서 수행하도록 하는 어플리케이션

파티셔팅

: 동일한 어플리케이션은 같은 노드에서 수행하도록 배치한다

: 업무별로 그룹핑하여 노드간에 경합이 없도록 한다

 

2) 인스턴스 장애 시 복구요구 시간 산정

- 하나의 노드에 장애가 발생 했을때 얼마나 빠른 시간내에 서비스를 할수 있는가에 대한 요구사항을

기반으로 인스턴스 복구 시간을 고려해 구성해야 함

 

3) 어플리케이션 서비스의 자동복구 요구

- 돌발 장애시 사용자가 모르게 복구되기를 원한다면

 

 

4) 자원의 효율적인 사용요구

- 많은 사용자가 시스템 사용시 모든 노드가 균일하게 사용하도록 해야 한다

'DB스토리 > ORACLE' 카테고리의 다른 글

오라클 설치 및 설정  (0) 2014.01.06
OGG(Oralce Golden Gate) 설명  (0) 2013.09.05
오라클 계정 생성, 삭제  (0) 2013.07.12
오라클 테이블 스페이스 생성  (0) 2013.07.12
오라클 버전 확인 쿼리  (0) 2013.06.12