다음을 통해 공유


데이터 웨어하우징 및 보고

데이터 웨어하우징 및 보고 응용 프로그램에서 다음과 같은 용도로 복제를 자주 사용합니다.

  • 데이터를 변환하고 데이터 웨어하우징 환경으로 이동할 수 있도록 데이터 통합

  • 데이터를 보고용 읽기 전용 데이터베이스로 배포

  • 데이터를 OLAP(온라인 분석 처리) 데이터베이스로 배포

복제는 차원이나 큐브와 같은 MicrosoftSSAS(SQL Server 2008 Analysis Services) 개체를 복제하지 않지만 OLTP(온라인 트랜잭션 처리) 데이터베이스에서 준비 데이터베이스와 보고, 의사 결정 지원 및 분석 용도로 사용되는 데이터베이스로 데이터를 배포하는 데 자주 사용됩니다.

다음 다이어그램에서는 온라인 처리 서버에서 OLAP 및 ROLAP 분석용 보고 서버와 준비 서버(staging server) 모두로 데이터를 복제하는 일반적인 시나리오를 보여 줍니다.

보고서 서버로 데이터 복제

Adventure Works Cycles 예

Adventure Works Cycles는 데이터베이스 개념 및 시나리오를 설명하는 데 사용되는 가상 제조 회사입니다. 자세한 내용은 AdventureWorks 예제 데이터베이스를 참조하십시오.

Adventure Works Cycles에서는 제조 및 인사 부서를 포함한 여러 부서에서 데이터 웨어하우징 및 보고를 사용합니다.

제조 부서에서는 제조 결함과 다른 여러 가지 품질 및 성능 메트릭에 대한 기록 데이터를 저장합니다. 데이터는 제조 공장에 있는 서버에서 본사의 준비 서버(staging server)로 복제됩니다. 그 다음 준비 서버(staging server)에서 데이터가 변환되고 분석을 위해 OLAP 큐브로 로드됩니다.

인사 부서에서는 현재 타사 응용 프로그램을 사용하여 보고서를 만들지만 곧 이 응용 프로그램을 Reporting Services로 교체하려 합니다. 또한 인사 부서에서는 보고 기능을 확대하고 다음 유형의 분석 기능을 추가하려고 합니다.

  • 국제 환율 영향 분석을 포함하는 보상 및 이익 분석

  • 인원 수 계획

  • 급여 비용 시뮬레이션 및 예측

인사 부서에서는 회사 전체에서 증가하고 있는 보고의 필요성에 대처하기 위해 새 서버를 구축합니다. 앞으로 데이터는 인사 부서와 다른 부서에서 이 읽기 전용 중앙 보고 서버로 복제됩니다.

이 시나리오의 일반적인 요구 사항

데이터 웨어하우징 및 보고 응용 프로그램에는 일반적으로 올바른 복제 솔루션이 해결해야 하는 다음과 같은 요구 사항이 있습니다.

  • 시스템에서는 트랜잭션 일관성을 유지해야 합니다.

  • 시스템의 대기 시간이 짧아야 합니다. 즉, 온라인 처리 서버의 업데이트가 준비 및 보고 서버에 빠르게 도달해야 합니다.

  • 시스템의 처리량이 높아야 합니다. 즉, 많은 수의 트랜잭션에 대한 복제를 처리해야 합니다.

  • 복제 처리를 위해서는 온라인 처리 서버의 오버헤드가 최소로 유지되어야 합니다.

  • 데이터 변경은 온라인 처리 서버에서 준비 및 보고 서버로 한 방향으로 이동합니다.

  • 준비 및 보고 서버에 필요한 데이터는 온라인 처리 서버에서 사용할 수 있는 데이터의 하위 집합일 수 있습니다.

이 시나리오에 사용할 복제 유형

SQL Server에서는 복제 시스템의 구성 요소를 기술하는 데 게시 관련 산업의 메타포를 사용합니다. 구성 요소에는 게시자, 구독자, 게시 및 아티클과 구독이 포함됩니다.

위의 다이어그램에서 온라인 처리 서버는 게시자입니다. 온라인 처리 서버에 있는 데이터 일부나 전체는 두 게시(준비용과 보고용)에 포함되며 데이터의 각 테이블은 아티클입니다. 아티클은 저장 프로시저와 같은 다른 데이터베이스 개체일 수 있습니다. 준비 서버(staging server)와 보고 서버는 게시 중 하나에 대한 구독자이며 각 서버는 스키마와 데이터를 구독으로 수신합니다. 시스템 구성 요소에 대한 자세한 내용은 복제 게시 모델 개요를 참조하십시오.

SQL Server는 다양한 응용 프로그램 요구 사항을 위해 스냅숏 복제, 트랜잭션 복제 및 병합 복제와 같은 여러 복제 유형을 제공합니다. 이 시나리오는 이전 섹션에서 설명한 요구 사항을 해결하기에 가장 적합한 트랜잭션 복제를 통해 최적으로 구현됩니다. 트랜잭션 복제에 대한 자세한 내용은 트랜잭션 복제 개요트랜잭션 복제 작동 방법을 참조하십시오.

기본적으로 트랜잭션 복제는 다음과 같은 이 시나리오의 주요 요구 사항을 처리합니다.

  • 트랜잭션 일관성

  • 짧은 대기 시간

  • 높은 처리량

  • 최소 오버헤드

이 시나리오에서 고려해야 할 기본 옵션은 필터링입니다. 트랜잭션 복제를 사용하면 준비 및 보고 서버의 테이블에 응용 프로그램에 필요한 데이터만 포함되도록 열 및 행을 필터링할 수 있습니다. 자세한 내용은 게시된 데이터 필터링을 참조하십시오.

이 시나리오 구현을 위한 단계

이 시나리오를 구현하려면 우선 게시와 구독을 생성한 다음 각 구독을 초기화해야 합니다. 각 단계에 대한 자세한 내용을 보려면 아래 링크를 클릭하십시오.

구독이 초기화되고 게시자와 구독자 간 데이터 흐름이 시작된 후 일반적인 관리 및 모니터링 태스크에 대한 정보를 보려면 다음 항목을 참조하십시오.

참고 항목

관련 자료