Làm thế nào để so sánh các lược đồ từ hai cơ sở dữ liệu địa lý tệp?


13

Chúng tôi có cơ sở dữ liệu địa lý mẫu mà chúng tôi gửi cho những người tạo Dữ liệu khu vực của chúng tôi. Họ cập nhật các cơ sở dữ liệu địa lý này và số hóa tất cả dữ liệu từ khu vực của họ trong featureclass được xác định trước.

Bây giờ chúng tôi đã có được Cơ sở dữ liệu địa lý tệp, chúng tôi thấy rằng thường thì nhiều featureclass đã được sửa đổi. Có lẽ một lĩnh vực có thể được thêm hoặc xóa. Trong một số trường hợp, chính lớp Tính năng bị xóa hoặc một lớp mới được tạo.

Tôi muốn nhận được một báo cáo cho biết các lớp và bảng tính năng nào được thay đổi, cũng như các Trường khác nhau trong các bảng chung & featureclass.

Tôi đã xem xét một số câu hỏi như:

Nhưng câu trả lời trong những câu hỏi này không hữu ích.


Tôi không chắc chắn về giao thức tại SE với các chủ đề cần thiết, nhưng tôi có một câu hỏi liên quan đến bạn, Devdatta: Có công cụ nào đưa giải pháp của bạn từ bổ trợ tia X và giải quyết sự khác biệt giữa GeoDBs / XML?
Kyle Shepard

@KyleShepard Quy trình thông thường là đặt một câu hỏi mới, cho một vấn đề mới. Bạn có thể liên kết đến một câu hỏi cũ nếu nó chứa thông tin liên quan. Và để trả lời câu hỏi của bạn, tôi đã không tìm thấy bất cứ điều gì như thế. Có lẽ bạn có thể hỏi một câu hỏi mới, và ai đó đã tìm thấy thứ gì đó sẽ trả lời nó.
Devdatta Tengshe

Câu trả lời:


9

Có một Bổ trợ tuyệt vời gọi là X-quang cho ArcCatalog . Nó có nhiều tính năng, nhưng tính năng chúng tôi đã sử dụng là công cụ 'Phân tích sự khác biệt' từ menu Công cụ.

Nó tìm cho bạn sự khác biệt giữa Cơ sở dữ liệu địa lý và Tài liệu không gian làm việc XML. Chúng tôi vừa xuất lược đồ của Cơ sở dữ liệu địa lý mẫu sang XML và so sánh các cơ sở dữ liệu địa lý khác nhau với nó.

Hầu như không mất vài giây để hiển thị một báo cáo hay với tất cả các lớp tính năng và các trường bị thiếu hoặc khác nhau trong hai cơ sở dữ liệu địa lý.


Điều này có vẻ tuyệt vời. Nó có hoạt động trên 10.1 không?
Fezter

@Fezter: Đây dường như là một trong 10,1: arcgis.com/home/item.html?id=e1e911d7d7374285b1ef03d06b3ee642
Devdatta Tengshe

7

Tôi nghĩ rằng viết một kịch bản python sẽ phù hợp nhất với những gì bạn đang cố gắng tìm ra. Dưới đây là một luồng công việc kịch bản chung:

Trước tiên, so sánh geodatabase 1 (Geo1) với geodatabase 2 (Geo2)

  1. Tìm kiếm / lặp qua Geo1 và nhận tên lớp fc (fc) 1 và tìm cùng tên fc trong Geo2 khác (nếu tên fc1 không thể tìm thấy trong Geo2 thì hãy viết tên fc đầu tiên vào tệp văn bản)
  2. Nếu bước 1 fc1 == tên fc2 thì liệt kê các trường trong fc1 và tìm kiếm các trường trong fc2, nếu tên trường fc1 không thể tìm thấy trong fc2 thì hãy viết tên trường fc1 vào tệp văn bản
  3. Tiếp theo, tìm kiếm hoặc liệt kê tên miền trong Geo1 và sau đó tìm cùng một tên miền trong Geo2, nếu tên miền Geo1 == tên miền Geo2 sau đó nhận giá trị được mã hóa đầu tiên của tên miền 1 và xem nếu nó tồn tại trong tên miền 2, nếu không thì hãy viết ra tên miền Geo1 hoặc giá trị mã hóa miền vào tệp văn bản.

Thứ hai ngược lại so sánh Geo2 với Geo1

Thực hiện theo các bước 1-3 ở trên nhưng theo thứ tự ngược lại Geo2 thành Geo1

Sau khi tập lệnh được thực hiện kiểm tra tệp văn bản kết quả cho sự khác biệt có thể.


3

Có vẻ như bạn đã có một câu trả lời tốt. Nhưng đối với bất kỳ ai khác muốn tìm hiểu các lược đồ cơ sở dữ liệu địa lý của họ, tôi cũng có thể đề xuất ArcGIS Diagrammer , một chương trình độc lập được viết bởi một trong nhóm Esri.

ArcGIS Diagrammer là một công cụ năng suất cho các chuyên gia GIS để tạo, chỉnh sửa hoặc phân tích lược đồ cơ sở dữ liệu địa lý. Schema được trình bày dưới dạng đồ họa có thể chỉnh sửa trong một môi trường quen thuộc với người dùng Microsoft Visual Studio. Về cơ bản ArcGIS Diagrammer là một trình soạn thảo trực quan cho các tài liệu không gian làm việc xml của ESRI có thể được tạo trong ArcMap hoặc ArcCatalog.


để làm rõ, nó không yêu cầu Visio - nhưng có vẻ hơi "quen thuộc với người dùng Visio" ở chỗ anh ta đã sử dụng một bố cục tương tự
Stephen Lead

Có bạn đúng. Hình như tôi đã nhầm.
Devdatta Tengshe
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.