Real-time GIS enables multiple geographically dislocated users to collaboratively edit geospatial data. However, being based on the strong consistency model, traditional real-time GIS implementations cannot provide fully automatic conflict resolution. In highly dynamic situations with increased probability for conflicts, this will hinder user experience. Conflict-free replicated data types (CRDTs), a technology based on a more relaxed concurrency control model called strong eventual consistency, can resolve all conflicts in real time, letting the users work on their local copies of the data without any restrictions. The application of CRDTs to real-time geospatial geometry co-editing has, to the best of our knowledge, not been investigated. Within this research, we therefore developed a simple web-based real-time geospatial geometry co-editing system using an existing CRDT implementation in Javascript coupled with OpenLayers. When applied to the co-editing of geospatial geometry in its native form, standard CRDT conflict resolution mechanics exhibit some issues. As an attempt to address these issues, we developed an advanced operation generation technique named “tentative operations”. This technique allows for the operations to be generated over the most recent session-wide state of the data, which in effect highly reduces concurrency and provides “geometry aware” conflict resolution. The tests we conducted using the developed system showed that in low-latency network conditions, the negative effects of standard CRDT conflict resolution mechanics do get minimized even under increased system loads.
Read full abstract