Cluseter란?
■ 여러 개의 서버들이 모여서 하나의 시스템과 같은 역할을 하는 것으로 노드 장애 발생시 전체 서비스가 중단되는 것을 방지하며 신뢰성 확장성 가용성이 필요한 곳에 사용된다
Clusterware란?
■ 물리적으로 분리된 서버 그룹을 하나의 논리적 서버로 묶어주는 소프트웨어 기반의 클러스터 관리자
■ 클러스터웨어의 목적은 로컬과 글로벌 리소스를 관리하며 각각의 클러스터를 하나로서 관리하며 클러스터의 무결성을 보호한다 리소스(네트워크, VIP주소, 리스너, ASM인스턴스, DB인스턴스, 서비스등)를 관리하며 리소스의 시작,중지,모니터링,재가동을 할 수 있다 필요시 클러스터 내 리소스의 재배치도 가능하다
Oracle Clusterware란?
■ ASM과 통합된 Grid Infrastructure의 주요 파트
■ ACFS(ASM Cluster File System)의 기본이며 RAC의 토대가 됨으로써 모든 종류의 어플리케이션을 위한 일반적 클러스터 환경 제공
■ grid라는 별도 유저에 클러스터 소프트웨어 계층인 그리드 인프라스트럭처를 설치할 것을 권장한다 OS에서 생성함
■ 11gR2 이전에는 ASM을 oracle과 grid계정이 아닌 별도의 OS 계정에 설치했으나 11gR2와 함께 오라클은 클러스터를 지원하는 LVM (Logical Volume Manager)소프트웨어인 ASM과 클러스터웨어를 묶어서 그리드 인프라스트럭처라는 이름으로 제공하기 시작했다
■ 클러스터 오라클 데이터베이스를 실행하기 위한 전제 조건인 오라클 클러스터웨어 계층은 데이터베이스 바이너리를 설치하기 전에 미리 설치되어 있어야 한다
10gR1에서 11gR1까지 S/W 구성요소는 공유 오라클 홈이라고 불리는 OCFS2 같은 인증된 클러스터 파일 시스템에 설치할 수 있었으나 11gR2부터는 RDBMS 소프트웨어 바이너리만 설치할 수 있으며 그리드 인프라스트럭처는 더 이상 공유 파일 시스템에 설치할 수 없다
단일 인스턴스 오라클 데이터베이스와 2개의 노드로 이루어진 RAC 간의 차이점은 다음과 같다
■ private interconnect는 클러스터간 통신에 사용된다 이들 인터커넥트는 프라이빗 인터커넥트 스위치를 사용한다
■ public network는 클러스터와 전체 클라이언트 통신에 사용된다
■ 장애가 발생한 노드를 신속히 감지할 수 있도록 오라클 RAC는 클러스터 리소스로 가상 IP 주소를 사용하고 있다 노드에 장애가 발생하면 이 가상 IP가 클러스터의 다른 노드로 이주(migrate)한다 가상 IP 주소를 사용하지 않을 경우 클라이언트는 아주 오랫동안 TCP/IP 타임아웃을 대기한 후에 클러스터의 다음 노드에 접속하려고 시도한다 다른 노드로 이주할 때 가상 IP 주소는 즉각적으로 노드가 다운되었다는 신호를 보내서 클라이언트가 tnsnames.ora에 있는 다음 호스트로 접속할 수 있도록 해준다
■ 데이터베이스 파일을 저장하기 위한 공유 스토리지가 필요하다
-------------------------------------------------------------------
오라클 클러스터: 디스크로부터 데이터를 읽어오는 시간을 줄이기 위해서 조인이나
자주 사용되는 테이블의 데이터를 디스크의 같은 위치에 저장시키는 방법
클러스터된 테이블과 클러스터 되지 않은 테이블의 차이
테이블이 처음 생성될 때 행은 일반적으로 세그먼트의 첫 익스텐트의 첫 블록부터 삽입됩니다
정규 테이블로 저장될 경우 EMP와 DEPT은 서로 다른 세그먼트에 위치하게 됩니다. 이 말은 테이블이 자신들 고유의 블록을 사용한다는 뜻입니다.
즉, EMP 테이블의 행을 저장하는데 사용된 블록은 DEPT 테이블의 데이터를 저장하지 않습니다. 그 반대의 경우도 마찬가지입니다.
테이블 EMP와 DEPT의 클러스터로 저장되면 동일 클러스터 세그먼트를 공유하게 됩니다. 이 세그먼트의 블록은 양 테이블의 행을 모두 저장할 수 있습니다.
테이블이 클러스터로 저장되면 클러스터는 물리적 저장 단위가 되고 테이블은 논리적 엔티티 즉, 클러스터의 일부분이 됩니다.
클러스터의 장점
- 그룹된 컬럼 데이터 행들이 같은 데이터 Block에 저장되기 때문에 디스크 I/O를 줄여 줍니다.
- 클러스터된 테이블 사이에 조인이 발생할 경우 그 처리 시간이 단축 됩니다.
- 클러스터키 열을 공유하여 한번만 저장하므로 저장 영역의 사용을 줄입니다.
테이블 클러스터링의 특징
클러스터는 데이터 조회 성능을 향상 시키지만 데이터 저장, 수정, 삭제 또는 한 테이블 전체 Scan의 성능을 감소 시킵니다
클러스터 하기 좋은 테이블
- - 주로 조회가 자주 발생하고 수정이 거의 발생하지 않는 테이블
- - 컬럼안의 많은 중복 데이터를 가지는 테이블
- - 자주 Join되는 테이블
클러스터 Key가 되기 좋은 컬럼
- - 데이터 값의 범위가 큰 컬럼
- - 테이블 간의 조인에 사용되는 컬럼
클러스터 key가 되기 나쁜 컬럼
- - 특정 데이터 값이 적은 컬럼
- - 자주 데이터 수정이 발생하는 컬럼
- - LONG, LONG RAW 컬럼은 포함할 수 없습니다.
'오라클 > 참고' 카테고리의 다른 글
오라클 Grid Infrastructure (2) | 2022.10.01 |
---|---|
오라클 OPatch (2) | 2022.09.30 |
오라클 ASM (Automatic Storage Management) (0) | 2022.09.28 |
오라클 RAC (0) | 2022.09.27 |
오라클 그리드, 인스턴스, 노드 (2) | 2022.09.20 |