트랜잭션(MDS(Master Data Services))
적용 대상: SQL Server - Windows 한정
Azure SQL Managed Instance
마스터 데이터 서비스 구성원에 대한 작업이 실행될 때마다 트랜잭션이 기록되게 됩니다. 모든 사용자는 트랜잭션을 볼 수 있으며 관리자가 취소할 수 있습니다. 트랜잭션에서는 해당하는 작업을 실행했던 날짜, 시간 및 사용자와 다른 세부 정보가 나타나게 됩니다. 사용자는 트랜잭션에 주석을 추가할 수 있으며 트랜잭션이 실행된 이유를 나타낼 수 있습니다.
트랜잭션이 기록될 때
트랜잭션은 구성원이 다음의 사항을 실행할 때 기록되는 것입니다:
만들어지거나 삭제되고 혹은 재활성화 되는 경우.
속성값이 변경되는 경우.
계층 구조에서 이동하는 경우.
업무 규칙이 속성값을 변경할 때 트랜잭션이 기록되는 것은 아닙니다.
트랜잭션 보기 및 관리
탐색기 기능 영역에서 직접적으로 실행했던 트랜잭션을 보며 주석을 추가 (메모 추가)할 수 있습니다.
버전 관리 기능 영역에서 관리자는 액세스 권한을 가지고 있는 모델에 관한 모든 사용자의 모든 트랜잭션을 보며 이러한 트랜잭션을 취소할 수 있습니다.
참고 항목
관리자는 버전 관리 기능 영역에 적용된 읽기 전용 권한 수준을 갖고 있지 않은 한 모든 사용자의 모든 트랜잭션을 볼 수 있습니다. 예를 들면, 관리자에게 읽기 전용 권한 및 업데이트 권한 수준이 설정된 경우라면 읽기 전용 권한이 업데이트 권한보다 우선시 되기 때문에 관리자가 다른 사용자 트랜잭션을 볼 수 없습니다.
MDS(Master Data Services) 데이터베이스에 대한 시스템 설정에서 Days의 로그 보존 기간을 설정하고 모델을 만들거나 편집할 때 로그 보존 날짜를 설정하여 트랜잭션 로그 데이터가 보존되는 기간을 구성할 수 있습니다. 자세한 내용은 시스템 설정(MDS(Master Data Services)) 및 모델 만들기(MDS(Master Data Services))를 참조하세요.
SQL Server 에이전트 작업인 MDS_MDM_Sample_Log_Maintenace는 트랜잭션 로그 정리를 트리거하고 매일 밤 실행됩니다. SQL Server 에이전트 사용하여 이 작업의 일정을 수정할 수 있습니다.
다음의 저장된 프로시저를 호출하여 트랜잭션 로그를 정리할 수도 있습니다.
저장 프로시저 | 설명 |
---|---|
mdm.udpTransactionsCleanup | 트랜잭션 기록을 정리해 보세요 |
mdm.udpValidationsCleanup | 유효성 검사 기록을 정리해 보세요 |
mdm.udpEntityStagingBatchTableCleanup | 스테이징 테이블을 정리해 보세요 |
Sample
DECLARE @CleanupOlderThanDate date = '2014-11-11',
@ModelID INT = 7
--Clean up Transaction Logs
EXEC mdm.udpTransactionsCleanup @ModelID, @CleanupOlderThanDate;
--Clean up Validation History
EXEC mdm.udpValidationsCleanup @ModelID, @CleanupOlderThanDate;
--Clean up EBS tables
EXEC mdm.udpEntityStagingBatchTableCleanup @ModelID, @CleanupOlderThanDate;
시스템 설정
마스터 데이터 서비스 구성 관리자에는 레코드가 준비될 때 트랜잭션이 기록되는지 여부에 영향을 끼치게 되는 설정이 있습니다. 마스터 데이터 서비스 구성 관리자에서 혹은 마스터 데이터 서비스 데이터베이스의 시스템 설정 테이블에서 이 설정을 직접적으로 조정하는 것이 가능합니다. 자세한 정보는 시스템 설정(MDS(Master Data Services))을 참고해 주세요.
이 버전의 SQL Server 에서 데이터를 가져올 때나 저장 프로시저를 시작할 때 트랜잭션을 기록할지에 대한 여부를 지정할 수 있습니다. 자세한 정보는 스테이징 저장 프로시저 (마스터 데이터 서비스)을 참고해 주세요.
동시성
특정 엔터티 값이 두 개 이상의 탐색기 세션에 동시에 나타나는 경우 동일한 값에 대한 동시 편집이 가능합니다. 동시 편집은 마스터 데이터 서비스에서 자동으로 감지되지는 않습니다. 이러한 동작은 여러 사용자가 여러 세션으로부터(예: 여러 컴퓨터, 여러 브라우저 탭 또는 창, 여러 사용자 계정으로부터) 웹 브라우저에서 MDS 탐색기를 사용할 때 발생할 수 있습니다.
트랜잭션이 활성화되도록 설정했음에도 불구하고 두 명 이상의 사용자가 오류가 없이 동일한 엔터티 값을 업데이트할 수 있습니다. 일반적으로 일정 시간 동안에 마지막으로 편집한 값에 대한 내용이 우선적으로 적용됩니다. 중복 편집 충돌은 트랜잭션 기록에서 수동으로 확인될 수 있으며 관리자가 수동으로 취소될 수 있습니다. 트랜잭션 기록에는 각 세션의 해당 특성에 대한 이전 값 및 새 값에 대한 개별 트랜잭션이 표시되지만 동일한 이전 값에 대해 여러 개의 새 값이 있는 경우 충돌이 자동으로 해결되지는 않습니다.
관련 작업
태스크 설명 | 항목 |
---|---|
트랜잭션을 되돌려 동작을 실행 취소합니다(관리자에만 해당). | 트랜잭션을 되돌리기 (MDS(Master Data Services)) |
외부 리소스
msdn.com의 블로그 게시물, 트랜잭션, 유효성 검사 문제 및 스테이징 테이블 정리.