首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何存储高性能的地理哈希数据

如何存储高性能的地理哈希数据
EN

Stack Overflow用户
提问于 2016-01-13 11:26:53
回答 1查看 1K关注 0票数 2

我希望将地理数据(纬度/经度)对象保存在表存储中,也保存在内存中。

使用Geo散列,您可以将整个世界划分为32个部分。每一节也可分为32节等。这可以做12次(水平)。

(关于Geo散列http://www.bigdatamodeling.org/2013/01/intuitive-geohash.htmlhttps://en.wikipedia.org/wiki/Geohash,请参见此)

查询:57.64911 10.40744(位于丹麦)-> u4pruydqqvj

  1. 对于像Azure表这样的表存储中存储这些数据,选择分区和行键的最佳实践是什么?
  2. 对于将这样的数据存储在内存中,这里的最佳实践是什么?我可以用一本大字典,把地理哈希码作为关键。那将是一个非常大的光盘。我还可以使用12个级别的嵌套词典。在这种方法中,我有32本字典在第一级。每个地方都有一个只有一个字符的地散列,等等。

目标是,在给定的级别上查找所有具有高性能的地理数据对象。

编辑:

我有一个给定的地理哈希码。给定的代码可以是任意地理哈希级别或区段。例如u,u4,u4p或u4pr。有了我想找到的代码:

  • 该节内的地理数据对象总数。
  • 该节内某一类别的地理数据对象的总数。
  • 在较低的层次上,所有的地理数据对象。

我正在寻找一个最佳实践来存储这样的数据,一次在表存储,一次在内存中。

EN

回答 1

Stack Overflow用户

发布于 2016-01-13 14:28:54

表存储的全部内容是如何存储数据以供以后查询--因为为了高性能,您必须使用分区键(对于小数据集(而不是1000 s)和行键--这将只返回一行。从您的编辑,我认为您将需要考虑复制您的数据,以适当的存储和查询。

有很多方法你可以做到这一点,我们可以继续几个小时。但是,在寻找解决方案时,请考虑以下几点:

  • 可以将JSON存储在列中以保存多个数据
  • 每一行都可以有自己的架构。
  • 表是分区的一种类型--您可以根据“级别”或每个类别拥有一个表。

一些例子来说明

表: GEO_COUNTS

代码语言:javascript
复制
pk     rk          data
-------------------------------
u      total       568965
u      cat:bars    41526
u      cat:gas     35689
u4     total       988965
u4     cat:bars    55526
u4     cat:gas     22689

表: GEO_COUNTS

代码语言:javascript
复制
pk     rk          data (JSON)
-------------------------------
u      unique id   {"total":568965, categories: ["bars" :41526, "gas":95689 ]}
u4     unique id   {"total":568965, categories: ["bars" :41526, "gas":95689 ]}

表: GEO_DETAILS

代码语言:javascript
复制
pk     rk          data
-------------------------------
u      unique_id   ...
u      unique_id   ...
u4     unique_id   ...
u4     unique_id   ...

表: GEO_DETAILS_U

代码语言:javascript
复制
pk     rk          data
-------------------------------
u4     unique_id   ...
u4     unique_id   ...
u4p    unique_id   ...
u4p    unique_id   ...

表: GEO_DETAILS_U_CATEGORY_BARS

代码语言:javascript
复制
pk     rk          data
-------------------------------
u4     unique_id   ...
u4     unique_id   ...
u4p    unique_id   ...
u4p    unique_id   ...
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34765460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档