안재훈 (jaeha@microsoft.com) 기업고객사업본부/기술사업부 한국마이크로소프트 18년 9월 23일 1시 8분 30초 SQL Server 2005 고 가용성 솔루션 안재훈 (jaeha@microsoft.com) 기업고객사업본부/기술사업부 한국마이크로소프트 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Whenever, Wherever 가용성이란? 다운 타임의 최소화 시스템 데이터 데이터베이스 사이트 테이블 18년 9월 23일 1시 8분 30초 가용성이란? Whenever, Wherever 다운 타임의 최소화 시스템 데이터 데이터베이스 사이트 테이블 Stand-alone Server Scope 장애를 격리시키는 방법 동시성 향상 Stand by Server Scope 장애복구 클러스터링 데이터베이스 미러링 복제 로그 전달 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Stand-By Server Scope - 장애복구 클러스터링 - 데이터베이스 미러링 - Peer-to-Peer 복제 18년 9월 23일 1시 8분 30초 Stand-By Server Scope - 장애복구 클러스터링 - 데이터베이스 미러링 - Peer-to-Peer 복제 - 로그 전달 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
장애복구 클러스터링 서버 수준의 고 가용성 솔루션 (Windows Server의 클러스터링 서비스(MSCS) 기반) 두 대의 서버가 있을 때 구성 방법 Active / Passive 구성 : 한 서버에서는 활성 서비스를, 다른 서버에서는 대기 서비스 구성 Active / Active 구성 : 교차 구성을 통해 양쪽에 활성 서비스와 대기 서비스 구성 Client Active 최대 8노드 까지 Active : Passive 구성을 N:I 형태로 구성 가능 Passive 외장 스토리지 Active
장애복구 클러스터링 주요 특징 Redo Undo Hot Standby 제공 – 자동 장애복구 (30초 이내) Shared Nothing 방식 모든 SQL Server 데이터 서비스들 포함 데이터베이스 엔진, 에이전트, Full-Text 검색 엔진 Analysis Service – 멀티 인스턴스 지원 “빠른 복구”를 통해 장애복구에 소요되는 시간 단축 REDO 과정 이후부터 SQL Server는 온라인 상태 유지 ^^ T.T Redo Undo SQL Server™ 2005 SQL Server™ 2000
데이터베이스 미러링 Database Failover 3초 이내의 빠른 장애 복구 자동 또는 수동으로 장애 복구 주 서버 장애시 Client는 자동적으로 Mirror된 DB에 연결 (Transparent) 리포팅 서비스를 위해 Database Snapshots 사용 가능 표준 하드웨어와 저장 장치 사용 (특별한 HW 사양이 필요 없음) 일반적인 트랜잭션 처리 방법 Commit Acknowledge Primary Server (주 서버) Write to Local Log Committed in Log DB Log
데이터베이스 미러링 Database Failover 3초 이내의 빠른 장애 복구 자동 또는 수동으로 장애 복구 주 서버 장애시 Client는 자동적으로 Mirror된 DB에 연결 (Transparent) 리포팅 서비스를 위해 Database Snapshots 사용 가능 표준 하드웨어와 저장 장치 사용 (특별한 HW 사양이 필요 없음) 미러링을 이용한 트랜잭션 처리 방법 Witness Server Commit Acknowledge Acknowledge Secondary Server (보조 서버) Primary Server (주 서버) Transmit to Mirror Write to Local Log Committed in Log Write to Remote Log DB Log Log DB
피어 투 피어 복제 확장성을 통한 가용성 향상 방안 주요 특징 동일한 데이터베이스를 지속적으로 실시간에 가까운 동기화 트랜잭션 복제에 기반을 두고 있음 양방향 트랜잭션 복제에 기반 참여된 모든 서버들은 Peer로서 기존의 복제처럼 계층적인 구조가 아니라 수평적인 구조로 이루어져 있음 런던 시카고 서울 주요 특징 Warm Standby – 장애시 약간의 데이터 손실 가능성이 존재 가용성 향상 뿐 아니라 로드 밸런싱 효과까지 있음 데이터베이스의 장애가 애플리케이션 전체에 영향을 주지 않음 데이터베이스 업그레이드 및 유지 보수 작업 등에도 효과적
피어 투 피어 복제 런던 시카고 서울 로그읽기 로그읽기 Peer to Peer 트랜잭션 복제 배포 배포 에이전트 에이전트 Dist DB 배포 에이전트 로그읽기 Dist DB Peer to Peer 트랜잭션 복제 서울 배포 에이전트 로그읽기 Dist DB
Transaction & Committed 로그 전달 Monitoring Server Primary Server의 최종 백업 시간 Standby Server의 최종 복구 시간 Backup Failure Alert에 대한 정보 기본 구조 Monitoring Server SQL Server Agent Primary Server의 Log를 주기적으로 백업 SQL Agent Log Record Standby Server Transaction & Committed Log Record SQL Agent SQL Agent Log Record Standby Server Primary Server SQL Agent SQL Server Agent Primary Server에서 Log를 Copy한 후 Standby Server에 Copy한 Log를 적용 Standby Server Warm Standby
로그 전달 주요 특징 데이터베이스 수준의 고 가용성 솔루션 장애복구 클러스터, 데이터베이스 미러링과 같은 다른 가용성 기술과 함께 구성 가능 다수의 보조 서버 지원 장애복구를 위한 보조 서버 리포팅을 위한 보조 서버 사람에 의해 발생한 오류 복구 지연을 위한 보조 서버 SQL Server Management Studio와 통합되어 좀 더 쉽게 구축이 가능
Stand-by Server Scope 솔루션 종합 복제 로그 전달 장애방지 클러스터링 데이터베이스 미러링 비고 Data 유실 가능성 Y (복제 주기에 종속) (마지막 트랜잭션) N 자동 장애 조치 주 서버로 자동 전환 Down Time Log recovery + @ < 30 Second + Log recovery < 3 second 대기 서버 Read 작업 (with Snapshot) 장애 방지의 범위 User Database System & User database 클라이언트에 대한 투명성 서버간의 거리 Unlimited 100 mile (160km) 인증받은 하드웨어
Stand-alone Server Scope 18년 9월 23일 1시 8분 30초 Stand-alone Server Scope - 격리된 장애 - 동시성 향상 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
장애를 격리시키기 위한 기술 데이터베이스 부분 가용성 확보 온라인 복구 데이터베이스의 일부에 장애가 발생시, 전체 데이터베이스에 영향 -> 서비스 불가 상태가 발생 장애의 격리 위와 같은 경우 장애가 발생한 파일그룹을 오프라인으로 설정 가능 전체 데이터베이스는 정상적인 나머지 파일 그룹에 대해서 서비스를 제공 온라인 복구 주 파일그룹만 온라인 상태이면 데이터베이스 서비스는 온라인 상태 유지 온라인 상태를 유지하면서 장애가 발생한 부분에 대한 부분 복구가 가능 파일그룹별 우선순위를 지정하여 복구 가능
장애를 격리시키기 위한 기술 복구 중 가용성 향상 즉각적인 파일 초기화 거의 모든 데이터베이스 구성 요소는 복구 가능 (페이지, 파일, 파일그룹) – 온라인 페이지가 손상되면 - 데이터베이스 백업, 파일, 파일그룹 백업에서 패당 페이지만 복구 파일이 손상되면 – 데이터베이스 백업, 파일, 파일그룹 백업에서 패당 파일만 복구 파일그룹이 손상되면 – 데이터베이스 백업, 파일, 파일그룹 백업에서 해당 파일그룹만 복구 즉각적인 파일 초기화 복구를 위한 파일 생성 단계에서 Zero 초기화를 하지 않기 때문에 복구 시 다운 타임을 단축하는 효과 로그 파일만 Zero 초기화 복구 뿐 아니라 다양한 시점에서 이점 제공 데이터베이스 생성 모든 복구 : 파일, 파일그룹, 데이터베이스 데이터베이스 파일 변경 : 자동 증가, 사이즈 재 조정
동시성을 향상시켜주는 기술 온라인 인덱스 작업 잠금 수준의 설정 – 스냅샷 격리 옵션 서비스를 계속 제공하는 온라인 상태에서 인덱스를 생성, 제거, 재구축 등이 가능 인덱싱 작업이 완료될 때 까지는 기존의 인덱스로 대상 테이블에 접근 온라인 / 오프라인 인덱싱 모두 지원 잠금 수준의 설정 – 스냅샷 격리 옵션 스냅샷 격리 옵션을 사용함으로써 업데이트가 일어나는 데이터에 대해 “업데이트 전 이미지”를 읽는 것이 가능 데이터를 “read”하는 어플리케이션에 대해서 가용성 향상 효과 (shared lock을 방지하는 메카니즘) OLTP 환경에서 쓰기작업에 의해 읽기 작업이 방해되거나 혹은 읽기 작업에 의해 쓰기 작업이 방해 받는 것을 방지 데드락 방지 및 어플리케이션에 대한 가용성 확보
SQL Server 적용 사례 – 고 가용성 솔루션 99.999% 가용성, 이동통신분야 동시 사용자 12000명, 5 TB 데이터 99.999% 가용성, Gift Card 프로세서 동시 사용자 500명 100% 가용성, 제지 분야 433 tps 100% 가용성, 제조 분야 900 tps 99.990% 가용성, 문고 동시 사용자 2000명 99.998% 가용성, 주식 거래 분야 3200 tps 99.997% 가용성, 금융분야 500 tps
Summary 뛰어난 데이터베이스 엔진 다양한 고 가용성 솔루션
© 2004 Microsoft Corporation. All rights reserved. 18년 9월 23일 1시 8분 30초 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.