如何在Azure表存储

时间:2016-05-27 11:36:34

标签: azure coordinates azure-table-storage

我需要在Azure中存储坐标,并且打算使用表存储。 我的想法是能够根据两个坐标查询坐标子集,例如:

enter image description here

所以我的查询(我认为)会是,给我所有的点

  • 纬度小于 53.360238且大于 53.344204
  • 经度大于 -6.276734且小于 -6.250122

我原本以为将它们保存为:

ParititonKey, RowKey

"16.775833,-3.009444", "Timbuktu"
...

但是意识到我最终会得到数以千计的分区。我认为这对于进行查询非常不利,因为我可能需要在不同的网络上触摸many partitions

另外,我不确定如果分区/行查询是字符串比较,它会如何工作..

我想知道是否有更好的方法来存储积分,例如我在考虑这样的事情:

ParititonKey, RowKey, Title

16.775833,-3.009444, "Timbuktu"
...

这使查询更容易但不解决唯一分区问题,例如

Get all entites where partition key is less than X and greater than Y AND where RowKey is greater than A and smaller than B

是否有more efficient方法可以通过将整个纬度数保存为分区键并将其余部分保存在RowKey中?

ParititonKey, RowKey, Title

16,    775833^-3.009444, "Timbuktu"
...

感谢任何建议!

1 个答案:

答案 0 :(得分:0)

我的建议是使用DocumentDb存储这种非结构化数据,您可以轻松地在多个字段上编写类似SQL的查询。

表存储仅针对键值对构建更多