Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The NoSQL Geospatial Landscape


Published on

Although NoSQL databases are relatively new, they've quickly adopted geo, from basic bounding box queries to full geospatial indexing, query and projection on a par with PostGIS. This presentation introduces NoSQL to the Geo developer, describing the pros and cons of NoSQL vs. relational, and what Geo functionality exists in the leading products.

Published in: Technology

The NoSQL Geospatial Landscape

  1. 1. The NoSQL Geo Landscape © Copyright IBM Corporation 2014
  2. 2. Why NoSQL? • Cost • Scalability • Developer-friendly • Web-friendly  HTTP  Javascript/JSON IBM © Copyright IBM Corporation 2014
  3. 3. Where did NoSQL come from? IBM 1970-2000: Mainly RDBMS solutions 2000-2005: DotCom bubble, new scale, NoSQL beginnings, white papers 2005-2010: Open source and Mainstream 2010+: Adoption of cloud  DBaaS © Copyright IBM Corporation 2014
  4. 4. What is NoSQL really? IBM NoSQL  “Not only SQL”  Non-Relational New ways of querying, defining, and designing your dynamic data store… for a different breed of scale problems… Scale = data size and concurrent users © Copyright IBM Corporation 2014
  5. 5. What ties NoSQL databases together • Many varieties!  Key-Value  Document  BigTable/Column-Oriented  Graph • Some commonalities (usually)  open source roots  global database key: easier to partition or shard the data  more use-case-specific and developer-friendly than RDBMS  flexible schemas  favor availability and partition tolerance over consistency: CAP theorem IBM © Copyright IBM Corporation 2014
  6. 6. IBM Consistency • Availability • Partition Tolerance CAP Theorem When you’re doing something a million times a second, a one-in-a-million failure happens every second © Copyright IBM Corporation 2014
  7. 7. This is not GIS! • Very little • Spatial analysis • No • Spatial operations • Raster data • Raster (Map) algebra • Mapmaking • We’re talking high-performance storage and retrieval! IBM © Copyright IBM Corporation 2014
  8. 8. Polyglot persistence • Polyglot: “someone who speaks or writes several languages” • Polyglot persistence: solve a complex data layer problem by breaking problem into segments and applying different database models • Common in the industry • Relational and NoSQL for specific use cases • Use Apache Solr search on top of MySQL database • Cloudant (and others) use Lucene search libraries IBM © Copyright IBM Corporation 2014
  9. 9. The survey… Name Index strategy Data types Query types Amazon DynamoDB IBM geohash point BBOX, radius GeoCouch (CouchDB/Couchbase ) R-tree point/line/poly BBOX, radius IBM Cloudant R*-tree GeoJSON types BBOX, radius, arbitrary shape Lucene/Solr geohash point (JTS adds more) BBOX, radius (JTS adds polygon) geohash point BBOX, radius Microsoft DocumentDB - - - MongoDB geohash/quadtree GeoJSON types BBOX, radius, arbitrary shape © Copyright IBM Corporation 2014
  10. 10. Recommended reading • Google’s MapReduce white paper • Data processing on large clusters • Amazon’s Dynamo white paper • Clustering for high availability for distributed databases • NoSQL Distilled • Architecture and concepts of NoSQL • Seven Databases in Seven Weeks • Data Access for Highly-Scalable Solutions: Using SQL, NoSQL, and Polyglot Persistence IBM © Copyright IBM Corporation 2014
  11. 11. Thanks IBM Questions? Raj Singh IBM Cloudant Developer Advocate @rajrsingh © Copyright IBM Corporation 2014