Przegląd możliwości zastosowania wybranych baz danych NoSQL do zarządzania danymi przestrzennymi

Michał Wyszomirski
ORCID: 0000-0002-5407-0536
Politechnika Warszawska
Wydział Geodezji i Kartografii
Zakład Kartografii
Polska

Streszczenie

Relacyjne bazy danych mają ugruntowaną podstawę koncepcyjną i nadal silną pozycję na rynku. Warto jednak zauważyć, że leżąca u ich podstaw koncepcja powstała na początku lat 70-tych z uwzględnieniem możliwości dostępnych wtedy komputerów. Dzisiejsze komputery osobiste posiadają parametry techniczne pozwalające przechowywać znacznie większe ilości danych i przetwarzać je w nieporównywalnie szybszy sposób. Mimo ewolucji systemów zarządzania relacyjnymi bazami danych i dostosowywania ich do coraz to nowych potrzeb, pojawiają się alternatywne rozwiązania o innych cechach i możliwościach, pozwalające miedzy innymi na przechowywanie i przetwarzanie jeszcze większej ilości danych. Ich rozwój wynika częściowo z potrzeby eliminacji ograniczeń baz relacyjnych, a częściowo z coraz większych możliwości dostępnego sprzętu komputerowego. Tego typu rozwiązaniem są bazy określane jako bazy NoSQL. Są to rozwiązania klasy open source, oparte na nierelacyjnym modelu danych i dostosowane do działania w środowisku rozproszonym. Ich popularność rośnie na tyle szybko, że trzeba zwrócić uwagę na możliwość ich zastosowania do zarządzania i analizowania danych przestrzennych. Celem niniejszego artykułu jest przedstawienie podstawowych zalet i wad baz NoSQL w kontekście możliwości operowania na danych przestrzennych. Dla projektantów i użytkowników systemów GIS bazujących na popularnych obecnie platformach takich jak „Oracle Spatial and Graph” czy „PostGIS” podstawowymi pojęciami związanymi z zarządzaniem bazami danych są: typy geometryczne danych, indeksowanie przestrzenne, operatory przestrzenne, funkcje i procedury realizujące analizy przestrzenne, modele topologiczne i sieciowe. Podstawowe pojęcia stosowane w NoSQL są znacząco inne. Artykuł ma charakter przeglądu literaturowego z minimalną liczbą przykładów mających na celu jedynie zasygnalizowanie sposobu pracy baz typu NoSQL.

Przesłano 3.10.2017 Zaakceptowano 18.12.2017 Opublikowano 15.02.2018

Słowa kluczowe:

bazy danych; dane przestrzenne; NoSQL

Pełny tekst:

PDF

Bibliografia

Amirian Pouria, Winstanley Adam C., Basiri Anahid, 2013: NoSQL storage and management of geospatial data with emphasis on serving geospatial data using standard geospatial web services. [In:] GIS Research UK (GISRUK), University of Liverpool.

Baton Jerome, Van Bruggen Rik, 2017: Learning Neo4j 3.x. Second Edition. Birmingham: Packt Publishing Limited.

Bradberry Russell, Lubow Eric, 2014: Practical Cassandra. Boston, MA: Addison-Wesley.

Brahim Mohamed Ben, Drira Wassim, Filali Fethi, Hamdi Noureddine, 2016: Spatial data extension for Cassandra NoSQL database. Journal of Big Data.

Carlson J. L., 2013: Redis in Action. Greenwich, Connecticut, United States: Manning Publications Co.

Carpenter Jeff, Hewitt Eben, 2016: Cassandra: The Definitive Guide. Sebastopol, CA: O’Reilly Media, Inc.

Celko Joe,2014: Joe Celko's Complete Guide to NoSQL. Waltham, MA: Elsevier Inc.

Chinnachamy Arun, 2013: Instant Redis Optimization How-to. Birmingham: Packt Publishing Ltd.

Chinnachamy Arun, 2014). Redis Applied Design Patterns. Birmingham: Packt Publishing Ltd.

Chodorow Kristina, 2013: MongoDB: The Definitive Guide. Sebastopol, USA: O’Reilly Media, Inc.

Da Silva Maxwell, Tavares Hugo L., 2015: Redis Essentials. Birmingham: Packt Publishing Ltd.

Das Vinoo, 2015: Learning Redis. Birmingham: Packt Publishing Ltd.

Dasadia Cyrus, Nayak Amol, 2016: MongoDB Cookbook Second Edition. Birmingham: Packt Publishing Limited.

Davis K. J., n.d.: Redis HyperLogLog: Visualization and practical use with Node.js, Redis and Angular. Mountain View: RedisLabs.

Dzinko Rostyslav,2015: Building Databases with Redis [Video]. Birmingham: Packt Publishing Ltd.

Edlich P.D., 2016: NoSQL. Retrieved from NoSQL Your Ultimate Guide to the Non-Relational Universe! 2016, 09 08. http://nosql-database.org/

Edward Shakuntala G., Sabharwal Navin, 2015: Practical MongoDB. New York, NY: Apress Media LLC.

Fauerbach Chris, 2017: Learning Neo4j Graphs and Cypher [Video]. Birmingham: Packt Publishing Limited.

Flajolet Philippe, Fusy Éric, Gandouet Olivier, Meunier Frédéric, 2007: HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm. 2007 Conference on Analysis of Algorithms, AofA 07, Nancy, France: Discrete Mathematics and Theoretical Computer Science (DMTCS): 127-146.

Fox A., Eichelberger C., Hughes J., Lyon, S., 2013: Spatio-temporal Indexing in Non-relational Distributed Databases. Proceedings of the IEEE International Conference on Big Data.

França Wilson Docha, 2015: MongoDB Data Modeling. Birmingham: Packt Publishing Limited.

Ganyo Scott, 2014: Rapid Redis [Video]. Birmingham: Packt Publishing Ltd.

Ganyo Scott, 2015: Learning Redis [Video]. Birmingham: Packt Publishing Ltd.

Goel Ankur 2015: Neo4j Cookbook. Birmingham: Packt Publishing Limited.

Gupta Sumit, 2015: Building Web Applications with Python and Neo4j. Birmingham: Packt Publishing Limited.

Gupta Sumit, 2015: Neo4j Essentials. Birmingham: Packt Publishing Limited.

Haber Itamar, 2017: Redis for Geospatial Data. Mountain View: RedisLabs.

Hills Ted, 2016: NoSQL and SQL Data Modelling. Basking Ridge, NJ: Technics Publications.

Hows David, Membrey Peter, Plugge Eelco, 2014: MongoDB Basics. New York, NY: Apress Media LLC.

Hows David, Membrey Peter, Plugge Eelco, Hawkins Tim, 2015: The Definitive Guide to MongoDB Third Edition. New York, NY: Apress Media LLC.

Jordan Gregory, 2014: Practical Neo4j. New York, NY: Apress Media LLC.

Kan C. Y., 2014: Cassandra Data Modeling and Analysis. Birmingham: Packt Publishing Limited.

Kemper Chris, 2015: Beginning Neo4j. New York, NY: Apress Media LLC .

Lal Mahesh, 2015: Neo4j Graph Data Modeling. Birmingham: Packt Publishing Limited.

Macedo Tiago, Oliveira Fred, 2011: Redis Cookbook. Sebastopol: O’Reilly Media, Inc.

McCreary Daniel G., Kelly Ann M., 2014: Making Sense of NoSQL. Shelter Island, New York: Manning Publications Co.

Nayak Amol, 2013: Instant MongoDB. Birmingham: Packt Publishing Limited.

Neeraj Nishant, 2015: Mastering Apache Cassandra - Second Edition. Birmingham: Packt Publishing Limited.

Nelson Jeremy, 2016: Mastering Redis. Birmingham: Packt Publishing Ltd.

Neo Technology, 2017: The Neo4j Developer Manual v3.1. Neo Technology.

Neo4j Spatial, 2017: Neo4j Spatial. Retrieved from Neo4j Spatial: (2017, 08 31). http://neo4j-contrib.github.io/spatial/

O’Higgins Niall, 2011: MongoDB and Python. Sebastopol, CA: O’Reilly Media, Inc.

Padalia Nitin, 2015: Apache Cassandra Essentials. Birmingham: Packt Publishing Limited.

Palmer Matt, 2013: Instant Redis Persistence. Birmingham: Packt Publishing Ltd.

Raj Sonal, 2015: Neo4j High Performance. Birmingham: Packt Publishing Limited.

Redis Labs, 2016: Redis. Retrieved from Redis: (2016.09.08). http://redis.io/

RedisLabs, 2017: An introduction to Redis data types and abstractions. Retrieved from Redis: (2017, 07 18). https://redis.io/topics/data-types-intro

Robinson Ian, Webber Jim, Eifrem Emil, 2015: Graph Databases. Sebastopol, CA : O’Reilly Media, Inc.

Sadalage Pramod J., Fowler Martin, 2012: NoSQL Distilled. Boston: Addison-Wesley Professional.

Seguin Karl, 2015: The Little Redis Book. Licensed under the Attribution-NonCommercial 3.0 Unported license.

Sharma Sanjay, 2014: Cassandra Design Patterns. Birmingham: Packt Publishing Limited.

Singh Amresh, 2013: Instant Cassandra Query Language. Birmingham: Packt Publishing Limited.

Strauch Christof, n.d.: NoSQL Databases. Stuttgart: Stuttgart Media University.

Tiwari Shashank 2011: Professional NoSQL. Indianapolis: John Wiley & Sons, Inc.

Vaish Gaurav 2013: Getting Started with NoSQL. Birmingham: Packt Publishing Limited.

Van Bruggen Rik 2014: Learning Neo4j. Birmingham: Packt Publishing Limited.

Vohra Deepak, 2015: NoSQL Web Development with Apache Cassandra. Cengage Learning PTR.

Vohra Deepak, 2015: Pro MongoDB Development. New York, NY: Apress Media LLC.

Vukotic Aleksa, Watt Nicki, Abedrabbo Tareq, Fox Dominic, Partner Jonas, 2015: Neo4j in Action. Shelter Island, NY: Manning Publications Co.

Yarabarla Sandeep, 2017: Learning Apache Cassandra (Second Edition). Birmingham: Packt Publishing Limited.