스키마 락 (Schema locking)
소프트웨어: ArcSDE
요약 : 데이터 편집과 같은 변경 사항을 다른 사용자와의 충돌 없이 관리하기 위해 ArcGIS 에서는 자동적으로 shared locks 과 exclusive locks을 지오데이터베이스의 데이터셋에 적용하고 해제합니다.
스키마 락 (Schema locking)
데이터 편집과 같은 변경 사항을 다른 사용자와의 충돌 없이 관리하기 위해 ArcGIS 에서는 자동적으로 shared locks 과 exclusive locks을 지오데이터베이스의 데이터셋에 적용하고 해제합니다.
워크그룹 또는 엔터프라이즈 데이터베이스에서는 다중 사용자가 같은 데이터를 동시에 편집하거나 볼 수 있게 하려면 지오데이터베이스 내의 컨텐츠로 작업을 하는 동안 지오데이터베이스 스키마를 수정하면 안됩니다.
스키마 락 개요
단일 사용자 지오데이터베이스로 작업을 하는 경우에는 데이터셋을 생성하거나 편집할 때 변경한 사항들이 다른 데이터셋에 영향을 미칠지 고려하지 않아도 되지만,
다른 사용자들이 같은 지오데이터베이스에 접속해 속성 열 추가나 토폴로지 룰 변경과 같이 기존 데이터셋의 스키마를 변경하는 작업을 하려는 경우, 충돌이 일어 나지 않도록 워크플로우를 구축해야 합니다.
예를 들어 스키마를 변경할 때에는 다른 사용자들이 시스템에 접속접속 않을 때 스키마가 변경 될 수 있도록 해야 합니다.
ArcGIS는 자동화된 스키마 락 매커니즘을 제공해 지오데이터베이스 변경사항을 관리 할 수 있도록 합니다.
Shared schema locks
ArcGIS는 각각의 데이터셋 작업시 자동으로 shared lock을 발생 시킵니다. 이 매커니즘은 데이터셋 작업시 다른 사용자들이 데이터셋을 변경할 수 없도록 합니다.
싱글 피처 클래스나 테이블에 shared locks이 얼마든지 생성될 수 있습니다.
Exclusive schema locks
Exclusive lock은 필요한 사항을 변경하기 위해 지오데이터베이스의 데이터셋을 다른 사용자들로부터 잠그는데 사용됩니다.
예를 들어 데이터셋의 스키마를 변경할 때 ArcGIS는 자동으로 각각의 속성 테이블, 피처 클래스 테이블, 래스터 테이블 또는 데이터셋에 exclusive lock을 생성합니다.
사용자가 지오데이터베이스 스키마를 변경하려고 할 때 특정 데이터셋은 다른 사용자가 사용 중이면 안됩니다.
퍼스널 지오데이터베이스에서의 락
퍼스널 지오데이터베이스에서는 모든 락이 전체 지오데이터베이스 내의 모든 컨텐츠에 적용되게 됩니다. Exclusive lock 또는 shared lock이 퍼스널 지오데이터베이스의
한 항목에 걸리게 되면 전체 지오데이터베이스에 적용되게 됩니다. 이 경우 오직 한 명의 사용자만이 퍼스널 지오데이터베이스에서 편집할 수 있습니다.
UNC 경로를 통해서 퍼스널 지오데이터베이스에 접근하거나 네트워크 드라이브에 저장되어 있는 퍼스널 지오데이터베이스에 접근할 때 퍼스널 지오데이터베이스가 저장되어 있는 폴더에 모든 사용자들은 최소한 쓰기 권한을 가지고 있어야 합니다.
만약 쓰기 권한이 없다면 한명의 사용자만이 퍼스널 지오데이터베이스에 접근할 수 있고 다른 사용자들의 접근을 막습니다.
파일 지오데이터베이스에서의 락
사용자는 파일 지오데이터베이스 폴더에 읽기/쓰기 권한을 가져야지만 스키마 변경을 할 수 있습니다.
Shared 와 Exclusive와 같은 스키마 락은 파일 지오데이터베이스 내의 각각의 데이터셋과 연관 테이블에 적용되게 됩니다.
- 피처 데이터셋의 피처 클래스가 잠기면 전체 데이터셋과 컨텐츠가 잠기게 됩니다.
- 두개의 독립형 피처 클래스가 연관 관계에 있게 된다면 한쪽에exclusive 또는 shared lock이 걸리게 되며 다른 컨텐츠까지 잠기게 됩니다.
Tip:
윈도우 탐색창에서 파일 지오데이터베이스를 복사하거나 옮길 때에는 다른 사용자에 의해 락이 걸려 있을 수 있습니다.
이를 피하기 위해 ArcGIS Desktop을 이용해 파일 지오데이터베이스 복사 또는 옮기는 작업을 합니다.
엔터프라이즈 또는 워크그룹 지오데이터베이스에서의 락
사용자는 스키마를 변경하기 위해서는 데이터셋을 소유하고 있어야 하며 다른 사용자의 데이터를 편집하기 위해 적절한 권한을 가지고 있어야 합니다
- 피처 데이터셋의 피처 클래스가 잠기면 전체 데이터셋과 컨텐츠가 잠기게 됩니다.
- 두개의 독립형 피처 클래스가 연관 관계에 있게 된다면 한쪽에exclusive 또는 shared lock이 걸리게 되며 다른 컨텐츠까지 잠기게 됩니다.
더 자세한 내용은
http://resources.arcgis.com/en/help/main/10.1/index.html#/Schema_locking/003n0000002m000000/을 참조하세요.