BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//talks.staging.osgeo.org//foss4g-europe-2025//speaker//3L
 7777
BEGIN:VTIMEZONE
TZID:CET
BEGIN:STANDARD
DTSTART:20001029T040000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20000326T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:pretalx-foss4g-europe-2025-NH7Y8G@talks.staging.osgeo.org
DTSTART;TZID=CET:20250718T110000
DTEND;TZID=CET:20250718T113000
DESCRIPTION:Real-time GIS has become an essential tool in various domains\,
  including Volunteered Geographic Information (VGI) and disaster managemen
 t. One of critical topics in real-time GIS is concurrency control (Sun and
  Li 2016). In the geospatial domain\, concurrency has traditionally been c
 ontrolled using optimistic or pessimistic models (i.e. versioning and lock
 ing\, respectively). In the domain of distributed databases\, a standard c
 onsistency model\, called strong consistency\, ensures that a set of distr
 ibuted databases behave as if they were a single database. However\, enfor
 cing strong consistency can introduce bottlenecks and lags\, and requires 
 significant hardware resources and time to implement. \n\nTo address these
  drawbacks\, a more relaxed approach called strong eventual consistency (S
 EC) (Gomes et al. 2017) has been developed in the domain of real-time text
  co-editing. Unlike strong consistency\, SEC lets each site edit its local
  copy of the data without any restrictions and replicate all the updates t
 o all other sites\, which\, upon reception\, apply them on their local dat
 a. Temporary local inconsistencies are allowed between the participating s
 ites\, but it is guaranteed that\, once all sites have received the same s
 et of updates\, they will be in the same state (i.e.\, they will converge)
 .\n\nIt has recently been shown that SEC model i.e. its instantiation\, CR
 DT (Commutative Replicated Data Type) technology (Shapiro et al. 2011) can
  also be used for the task of geospatial co-editing. Within the research (
 Matijević et al. 2024)\, an experimental real-time geospatial co-editor (
 source code referenced in the original paper) has been developed and teste
 d. The implementation uses OpenLayers (OL) on the graphical user interface
  (GUI) and a small\, unoptimized but complete and correct Javascript CRDT 
 library called Reference CRDTs (Gentle 2023). The research showed that\, w
 hen applied to the co-editing of geospatial geometry in its native form\, 
 standard CRDT conflict resolution mechanics exhibit some issues. As an att
 empt to address these issues\, the authors developed an advanced operation
  generation technique named “tentative operations”. This technique all
 ows for the operations to be generated over the most recent session-wide s
 tate of the data\, which in effect highly reduces concurrency and provides
  a “geometry aware” conflict resolution. The tests conducted using the
  developed system showed that in low-latency network conditions\, the nega
 tive effects of standard CRDT conflict resolution mechanics do get minimiz
 ed even under increased loads (many concurrent sites co-editing a low vert
 ex count geometry).\n\nReal-time co-editors generally aim to provide good 
 user experience of the system\, with correct handling of conflicts being o
 ne of its important aspects. However\, besides correct handling of conflic
 ts\, the system also has to be responsive. The responsiveness of real-time
  co-editors depends on the efficiency of the underlying business logic but
  also on the efficiency of the GUI itself. Especially in the case of geosp
 atial data manipulation\, both the GUI and the business logic will be addi
 tionally stressed by increasing the vertex count of geometries being co-ed
 ited. Since within the original research the tests were performed using po
 lygons low vertex count (several hundreds)\, it remained unknown how would
  a CRDT based geospatial co-editor behave when much larger geometries (e.g
 . hundreds of thousands of vertices) are co-edited.\n\nWithin this researc
 h we therefore investigate the impact that the increase of vertex count ha
 s on the overall performance of the system\, which in turn can hinder resp
 onsiveness. We reused the existing implementation from (Matijević et al. 
 2024) and only introduced minor modifications to achieve the ability to ti
 me the execution of its key mechanisms. Instead of focusing on the perform
 ance of CRDT mechanisms only\, we observed the behaviour of the complete s
 ystem. We first analysed the overall composition of the system and divided
  it into several distinct parts. Then\, during load testing we observed ho
 w the performance of each of those parts changes when handling geometries 
 with increasing vertex counts. To stress the system\, we created three pol
 ygons with 100K\, 200K and 300K vertexes and conducted real co-editing ses
 sions over those polygons. The upper limit of 300K was selected based on p
 reliminary testing which showed that already at this vertex count OL start
 s to lose responsiveness in editing mode. The sessions were conducted usin
 g several identical instances of some recent\, mainstream hardware and the
  latest Google Chrome browser.\n\nAs expected\, the results of the experim
 ent show that the overall performance of the system does suffer from the i
 ncreased vertex count of the geometry being co-edited. In the setting as i
 mplemented within the research (Matijević et al. 2024) the part most affe
 cted by the increased vertex count turned out to be the redrawing on GUI u
 pon integration of remote updates while the client is in editing mode. Thi
 s is because the implementation uses a simple redraw method where the comp
 lete geometry is replaced by its new version.\n\nThe results from this res
 earch show that geometries with high vertex count can efficiently be co-ed
 ited in real-time. However\, there exists a limit where the increased vert
 ex count will start to render the system irresponsive\, depending on the c
 apabilities of the hardware that the clients are running on.\n\nThe result
 s from this research are to be observed in the setting which includes both
  CRDT and OL written in Javascript\, with CRDT implementation including on
 ly some simple optimizations and with no tighter CRDT-OL coupling other th
 an what OL offers off-the-shelf. It can therefore be expected that a deepe
 r integration of CRDT mechanisms with OL could make some of the critical p
 arts of the implementation faster. Also\, there exist several mature\, pro
 duction ready open-source CRDT frameworks which include many optimizations
  and can outperform the Reference CRDTs by orders of magnitude.
DTSTAMP:20260527T015044Z
LOCATION:PA01 (Quarticle)
SUMMARY:Real Time Co-editing of High Vertex Count Geometries Using OpenLaye
 rs and CRDTs - a Performance Analysis - Hrvoje Matijević
URL:https://talks.staging.osgeo.org/foss4g-europe-2025/talk/NH7Y8G/
END:VEVENT
END:VCALENDAR
