SQL Server 2005 Analysis Services에서 스냅샷 트랜잭션 격리 수준 사용

이 문서에서는 Analysis Services에서 스냅샷 트랜잭션 격리 수준을 사용하도록 설정하기 위해 수행해야 하는 단계를 설명합니다.

원래 제품 버전: SQL Server
원본 KB 번호: 919160

소개

이 문서에서는 Microsoft SQL Server Analysis Services 스냅샷 트랜잭션 격리 수준을 사용하도록 설정하는 방법을 설명합니다. 또한 이 문서에서는 스냅샷 트랜잭션 격리 수준을 사용할 수 있는지 여부를 테스트하는 방법을 설명합니다.

스냅샷 트랜잭션 격리 수준 사용

Analysis Services에서 스냅샷 트랜잭션 격리 수준을 사용하여 SQL Server 데이터 원본에 연결할 수 있습니다. 스냅샷 트랜잭션 격리 수준을 사용하도록 설정하려면 다음 단계를 수행합니다.

  1. SQL Server Management Studio 다음 문을 실행합니다.

    ALTER DATABASE <DatabaseName>
    SET READ_COMMITTED_SNAPSHOT ON
    GO
    ALTER DATABASE <DatabaseName>
    SET ALLOW_SNAPSHOT_ISOLATION ON
    GO
    

    참고

    이러한 문에서 는 <DatabaseName> Analysis Services에서 사용하려는 데이터 원본의 데이터베이스에 대한 자리 표시자입니다.

  2. Business Intelligence Development Studio에서 새 Analysis Services 프로젝트를 만듭니다.

    또는 기존 Analysis Services 프로젝트를 엽니다.

  3. 2단계에서 새 Analysis Services 프로젝트를 만든 경우 다음 단계를 수행합니다.

    1. 솔루션 탐색기 데이터 원본을 마우스 오른쪽 단추로 클릭한 다음 새 데이터 원본을 클릭합니다.
    2. 연결 정의 방법 선택 대화 상자에서 새로 만들기를 클릭합니다. 연결 관리자 대화 상자가 나타납니다.

    2단계에서 기존 Analysis Services 프로젝트를 연 경우 다음 단계를 수행합니다.

    1. 데이터 원본 폴더 아래에서 기존 데이터 원본을 두 번 클릭합니다.
    2. 데이터 원본 Designer 대화 상자에서 편집을 클릭합니다. 연결 관리자 대화 상자가 나타납니다.
  4. 연결 관리자 대화 상자의 공급자 목록에서 Native OLE DB\SQL Native Client를 클릭합니다.

  5. 서버 이름 및 인증을 지정합니다.

  6. 연결을 테스트하려면 연결 테스트를 클릭합니다.

  7. 왼쪽 창에서 모두를 클릭합니다.

  8. 오른쪽 창의 MARS 연결 목록에서 True를 클릭한 다음 확인을 클릭합니다.

  9. 데이터 원본 Designer 대화 상자의 격리 목록에서 스냅샷을 클릭한 다음 확인을 클릭합니다.

스냅샷 트랜잭션 격리 수준을 사용할 수 있는지 테스트

스냅샷 트랜잭션 격리 수준을 사용할 수 있는지 테스트하려면 다음 단계를 수행합니다.

  1. SQL Server Profiler 시작합니다.

  2. Analysis Services 프로젝트에서 지정한 데이터 원본에 연결할 새 추적을 만듭니다.

  3. 추적 속성 대화 상자에서 이벤트 선택 탭을 클릭합니다.

  4. TransactionID 열에서 를 클릭하여 이벤트에 대한 SQL:BatchCompleted 행과 이벤트의 행에 있는 SQL:BatchStarting 검사 상자를 선택합니다.

    참고

    TransactionID 열을 표시하려면 를 클릭하여 검사 모든 열 표시 상자를 선택합니다.

  5. 실행을 클릭하여 추적을 시작합니다.

  6. Business Intelligence Development Studio에서 Analysis Services 프로젝트를 처리합니다.

  7. SQL Server Profiler TransactionID 열에서 SQL:BatchCompleted 이벤트 및 SQL:BatchStarting 값이 같은 이벤트를 찾습니다. 일반적으로 이러한 이벤트에는 SELECTTextData 열의 문이 포함됩니다. 이러한 이벤트의 경우 SPID 열에서 세션 ID를 가져옵니다.

  8. 데이터 원본에 연결하려면 SQL Server Management Studio 시작합니다.

  9. 새 쿼리를 만든 다음 다음 Transact-SQL 문을 실행합니다.

    select session_id,Transaction_Isolation_Level from sys.dm_exec_sessions
    where session_id=<SPID>
    

    참고

    이 문 <에서 SPID> 는 7단계에서 가져온 세션 ID의 자리 표시자입니다.

  10. 결과 탭에서 Transaction_Isolation_Level 열의 값을 확인합니다. 이 값은 Analysis Services 프로젝트에서 사용 중인 트랜잭션 격리 수준을 나타냅니다. 스냅샷 트랜잭션 격리 수준을 사용하도록 설정하면 Transaction_Isolation_Level 열의 값은 5입니다. 다음 표에서는 Transaction_Isolation_Level 열의 값과 해당 트랜잭션 격리 수준을 보여 있습니다.

    트랜잭션 격리 수준
    0 불특정
    1 ReadUncommitted
    2 ReadCommitted
    3 반복
    4 직렬화
    5 스냅숏

참조

스냅샷 트랜잭션 격리 수준에 대한 자세한 내용은 SQL Server 2005 온라인 설명서의 다음 topics 참조하세요.

  • SET TRANSACTION ISOLATION LEVEL(Transact-SQL)
  • 행 버전 관리 기반 격리 수준 사용
  • 데이터베이스 엔진의 격리 수준