0

I'm trying to find the best solution for storing dynamic spatial data. I wonder if any of Microsoft's Azure solutions could work. Azure Table Storage would let me create a lot of custom and dynamic structures stored on fast SSD disks.

Because of data's dynamic nature, common indexing seems useless. I would also like to create a lot of table-like structures so the whole architecture cannot be static. Using Azure Table Storage I would dynamically create a table based on country, city, etc sorted by latitude or longitude.

I would appreciate any clue.

Brian Tompsett - 汤莱恩
  • 5,753
  • 72
  • 57
  • 129
  • What, exactly, is "dynamic spatial data?" Also: Why would indexing be "useless"? Many apps run with schema-free approaches (just look at document stores in Azure's Cosmos DB), and indexes are still a key part of that storage service. – David Makogon May 11 '17 at 18:18
  • Also, there are built-in spatial features in several of Azure's built-in data services, and they are also available to many database engines you can install yourself to VM's. Which one you choose is really up to you; the choices and decisions are quite broad. This question, as written, is off-topic for StackOverflow. – David Makogon May 11 '17 at 18:19
  • Dynamic means that record is in at 12:00:05 and could be out (or ignored) 20-25 seconds later. For example user taps 'I'm here' - 20-25 secs later he taps 'Cancel my current location' so the record is no longer considered in terms of nearest neighbour search process. – Abby Lockhart May 12 '17 at 07:07

1 Answers1

0

Azure Table Storage has mostly been replaced by Azure Cosmos DB.

At the time of writing the Table Storage page even says:

The content in this article applies to the original basic Azure Table storage. However, there is now a premium offering for Azure Table storage in public preview that offers throughput-optimized tables, global distribution, and automatic secondary indexes. To learn more and try out the new premium experience, please check out Azure Cosmos DB: Table API.

You can use Cosmos DB via the Table API, but you'll probably find the Document DB API to be more powerful.

Documents are "schema-free". You can just throw your documents in to a collection, and then you can query against them.

You can create documents which have geo-spatial properties which are indexed automatically.

Then you can perform geo-spatial queries against those properties.

For example you might give each of your documents a point, and then create a query to select all documents that are inside of a polygon.

Or maybe you want to find out how far away each document is from a given point.