보다 일반적인 의미로 지리 공간 데이터 관리라는 주제가 여기에 나왔습니다 . 버전 관리 주제도 언급되었지만 실제로 다루지는 않았습니다.
기존 지리 공간 데이터 수집 및 유지 관리는 데이터베이스가 조직 내에서만 업데이트되므로 내부적으로 버전 관리 만 처리하면됩니다. OpenStreetMap과 같은 크라우드 소싱 된 지오 데이터베이스에서는 그렇지 않습니다. 거기에서 누구나 와서 객체를 추가, 수정 또는 삭제할 수 있습니다. OpenStreetMap에서 이것은 기본적인 방법으로 처리됩니다. 각 객체는 정수 버전 번호를 가지며 가장 높은 버전의 객체 만 라이브 데이터베이스에 노출됩니다. 데이터베이스는 낙관적 잠금을 사용하므로 사용자가 컨트 리뷰 션을 수동으로 업로드 할 때 발생하는 모든 충돌을 해결해야합니다.
편집자 ( JOSM , Potlatch )를 통한 인적 기여 가 유일한 기여 방식 인 한 , 이 모든 것이 합리적으로 효과 가 있습니다. 공개 공공 부문 데이터의 수입이 증가하고 있습니다. 이로 인해 더 복잡한 버전 관리 문제가 발생합니다. 다음 시나리오를 고려하십시오.
- 공개 공공 부문 데이터 세트에서 건물 객체를 가져 오는 중
- 건물은 인간 기고자 (속성, 지오메트리 또는 둘 다)에 의해 일부 수정을받습니다.
- 공공 부문 데이터의 새 버전이 제공되고 가져옵니다.
현재 3 단계에서 커뮤니티 수정을받은 각 건물이 새 가져 오기와 수동으로 병합되지 않는 한 인적 기여는 상실됩니다.
OpenStreetMap은이 상황을 어떻게 처리 할 수 있습니까? 소프트웨어 개발에서 분산 버전 제어를 검토해야합니까? 분산 공간 데이터 유지 관리를 처리하기 위해 DVC 방법을 어떻게 조정할 수 있습니까?