GRID & RAC 개념

2010. 2. 23. 10:21Oracle/Oracle Scrap

반응형
1. GRID의 개념
  1.1 GRID의 개념
   
  1) GRID 컴퓨팅의 정의

     
     그리드 컴퓨팅(Grid Computing)의 핵심 개념은 전화나 전기, 수도 같은 유틸리티로써의 컴퓨팅이다.
     사용자는 원하는 때 원하는 만큼 정보나 컴퓨팅 작업을 요청하고 받을 수 있게 된다.

     그리드 컴퓨팅은 프로세싱, 네트워크 대역폭 및 스토리지지 용량과 같은 분산된 컴퓨팅 자원을 가상화하여
     하나의 시스템 이미지를 만들어 사용자 및 응용 프로그램이 다양한 IT 기능에 완벽하게 접근 할 수 있도록
     지원한다.
   
     쉽게 기업내에 산재해 있는 소형 서버들을 연결해 하나의 커다란 컴퓨터처럼 사용하는 개념으로 
     생각할 수 있다.
     유틸리티 컴퓨팅은 "클라이언트 측면에서" 본 것이다. "서버 측면에서" 보자면(그리드의 이면을 파고들면),
     "그리드"는 자원 할당, 정보 공유 그리고 고가용성과 관련된 개념이다.

     ① 자원할당
     - 자원을 요청하고 필요로 하는 누구든지 원하는 것을 얻을 수 있도록 하는 것
     - 요청이 없는 동안에 자원의 낭비를 막는 것.

     ② 정보공유
     - 사용자와 어플리케이션이 필요로 하는 정보는 언제 어디서나 필요에 따라 이용할 수 있도록 해주는 것.

     ③ 고가용성
     - 고가용성이란 하나의 노드에 문제가 생긴 경우 다른 노드에서 서비스나 기능을 대신 제공하는 것을 말한다.
     - 긴 시간동안 지속적으로 운영이 가능한 시스템이나 컴포넌트로 가용성이란 흔히 "100% 가용" 등과 같이
       상대적으로 측정되거나 또는 "절대 고장나지 않음" 등과 같이 표현 될 수 있다.

  2) GRID 컴퓨팅의 필요성
     ① GRID 컴퓨팅은 소형 서버들을 연결, 고성능을 유지하면서 더욱 많은 자원을 활용 가능 하므로 효율적인 
          IT인프라 사용을 위한 좋은 방안이다.
     ② 기존에 사용하던 시스템을 전환할 필요 없이, 기존 인프라스트럭처로부터 GRID 컴퓨팅으로 전환 가능하다.
     ③ GRID 컴퓨팅은 저렴한 가격으로도 기업의 인프라를 효율적으로 활용할 수 있는 최적의 솔루션이다.

  3) 오라클 GRID 컴퓨팅
    - 저렴한 다수의 컴퓨팅 자원으로 고가의 컴퓨팅 자원보다 더 높은 성능을 구현할 수 있다.
    - 그리드는 어떤 컴퓨터든, 자원을 항상 최대 용량 만큼 쓰는 것이 아니기 때문에 쉬고 있는 순간에 
       다른 업무에 활용할 수 있도록 빌려준다는 개념으로도 이해할 수 있다.
    - Oracle Database 10g는 Enterprise Grid Computing을 위해 디자인된 최초의 데이터베이스이다.

2 RAC의 개념
  
  2.1 RAC의 정의
   - Oracle Real Application clusters(RAC)는 Oracle Parallel Server(OPS)의 후속 제품으로 개발되어 
      Oracle9i 버전부터 기능을 제공 한다.
   - RAC는 동일 데이타베이스(스토리지)를 여러 인스턴스에서 동시에 액세스할 수 있다
   - RAC는 시스템 확장이 가능하기 때문에 결함 허용, 로드 밸런싱 및 향상된 성능을 제공한다. 
   - 모든 노드가 동일한 데이타베이스를 액세스하기 때문에 한 인스턴스에서 장애가 발생해도 
      데이타베이스에 대한 액세스가 손실되지 않는다.  
   - Oracle RAC의 핵심은 공유 디스크 하위 시스템이다.
   - 클러스터의 모든 노드는 클러스터 내의 모든 노드에 대한 
      데이타, 리두 로그 파일, 제어 파일 및 매개변수 파일을 액세스할 수 있어야 한다.
   - 데이터 디스크는 모든 노드가 데이타베이스를 액세스할 수 있도록 허용하기 위해 
      전역으로 사용할 수 있어야 한다.
  
  2.2 RAC의 장점

   ① 확장성(자원(CPU/메모리/디스크등)이 부족했을 경우에 대처 할 수 있는 구조)

    - 새로운 업무가 지속적으로 추가되어 서버의 용량이 부족해지는 경우가 발생된다면 클러스터상에 
      새로운 서버를 유연하게 확장 할 수있고, 서버를 확장 하더라도 문제가 발생하지 않는다.
    
   ② 고가용성 (장애가 발생해도 시스템 전체가 운용 될 수 있는 구조)

    - 하나의 서버로 구성된 데이터베이스일 경우 데이터베이스 장애가 발생할 경우 복구될때까지 
      서비스 이용이 불가능 했으나,  RAC의 경우에는 하나의 서버에 장애가 발생하더라도, 
      나머지 서버에서 지속적인 서비스를 제공할 수 있어 서비스의 중지가 발생하지 않는다.  
  
 3. RAC 구조

   3.1 RAC의 구조

    - 물리적인 하나의 데이터베이스를 여러 대의 서버가 공유하여 사용하는 것.
    - 모든 서버들은 같은 데이터를 사용하게 되어 논리적으로는 하나의 시스템을 이용하는 것임.
    - Cache Fusion 기능을 위해 NODE간 High-Speed Interconnect Network는 필수



reference 
- Linux 및 FireWire에 RAC 클러스터 구축 (주)한국오라클
- RAC & Enterprise Manageability Best Practices (주)한국오라클
  ================================================ 
    * 데이터베이스 정보공유 커뮤니티 oracleclub.com 
    * 강좌 작성자 : 김정식 (oramaster _at_ naver.com)
  ================================================
※ oracleclub 강좌를 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
※ oracleclub 강좌는 개인의 학습용으로만 사용 할 수 있습니다. 학원 홍보용이나 수익을 얻기 위한 용도로
    사용을 하시면 안됩니다. ^^
반응형