COMPARATIVE EVALUATION OF NOSQL AND RELATIONAL DATABASES PERFORMANCE WHILE ANALYZING SEMI-STRUCTURED GEOSPATIAL DATA

Non-relational (NoSQL) databases have gained popularity in the recent years, especially in Web applications, where semi-structured data formats (e.g., JSON, XML) that used widely to store data on the Web are more suitable to be managed by NoSQL database management systems. Web mapping software (OpenLayers, Leaflet, MapServer, GeoServer, etc.) implement geospatial extensions of such data formats, for example GeoJSON that is a standardized JSON document type, which can be used to represent simple geographical features alongside with their non-spatial attributes. In such a context, different relational database management system (RDBMS) vendors implemented JSON support in their software to provide greater flexibility for used relational database models. In this paper, a processing performance of semi-structured geospatial data in different databases management systems (DBMS) is analyzed. The analysis is performed on the example of GeoJSON datatype for different NoSQL DBMSs categories (MongoDB, Cassandra, CouchDB and Neo4J), in parallel with analysis of the PostgreSQL which is RDBMS with JSON processing capabilities. The results are presented for GeoJSON writing latency, geospatial querying based on location with and without spatial indexing, and querying based on attributes alongside with querying based on location. The conclusions can be used to support content-based estimations of the demands to the DBMS and its restrictions at the database design stage. The results of the analysis show that in writing latency parameter MongoDB and CouchDB demonstrate the highest results. Additionally, the results demonstrated that organizing of the geoJSON data in a materialized view in PostgreSQL shows fastest results for both location querying and location combined with attributes querying, but it requires to use 23% more of storage size. Both MongoDB and Cassandra returned fast results without any additional disk space. Finally, when using geospatial index (supported only in MongoDB and PostgreSQL), PostgreSQL reading latency is reduced by a factor of 10% when querying geospatial location using the spatial indexes, while MongoDB shows no significant advantage of spatial index use.