- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
最近我一直在研究 Geohashes和Firestore。我的待办事项场景是收集文件(餐厅),每个餐厅都会有交付给的 Geohashes 列表。
我想避免在文档 restaurant 中添加 geoashes,因为文档可能比应有的大很多倍。
最初的想法是将所有的 geohashes 放在餐厅文档的子集合中,但我发现不可能在文档的子集合中执行查询。
第二个想法是将 geohashes 提取到交付区域集合的顶层。
document:{ restaurantName: "aRestaurant",
deliveryArea: Arraylist<String> }
这个场景中的问题是我会得到一个餐厅名称列表,然后我需要查询餐厅集合来获取它们,据我所知我无法在查询中执行 OR 操作。
这是我第一次使用文档数据库和 Firestore。任何指导将不胜感激。
最佳答案
这里是 firebaser
我们用于 Firebase 实时数据库的原始 GeoFire 库通过为 geohashes 设置单独的顶级节点精确地解决了这个问题。该节点下的每个键通常对应于另一个顶级节点中实际实体的键。
所以像这样:
locations
key1: { g: "sa7ads", l: [ 14.5232, -156.17843 ] },
key2: { g: "fds347", l: [ -127.172, 167.1324 ] }
restaurants
key1: { name: "This is the first restaurant", ... },
key2: { name: "This is the second restaurant", ... },
使用此结构,您可以对 /locations
执行地理查询,然后从 /restaurants/$key
读取范围内每家餐厅的附加信息。这扩展得很好。
我建议使用与 Cloud Firestore 相同的方法。您将有两个顶级集合:一个包含(较小的)位置数据,另一个包含关于每家餐厅的(较大的)附加数据。这会减少您阅读的数据量,尽管您最终会阅读更多文档。您必须平衡这两者(带宽与文档读取)。
几个月前我给了一个talk about performing geoqueries on Cloud Firestore这可能值得一试。
关于firebase - 在 Firestore 中查询 Geohashes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52777795/
如果 geohash 字符串的长度更大,则更准确。但是是否有任何直接关系,例如如果长度为 7,则它提供 100 米的精度, 即如果两个 geohash(以及它们的任何一个边界框)有前 7 个字符匹配,
两个 geohash 前 6 个字符匹配,两个 geohash 之间的距离最大为 0.61km 两个 geohash 前 5 个字符匹配,两个 geohash 之间的距离最大为 2.5km 问:给定
我有一个问题,我需要检查一个 geohash 是否落入具有动态半径/框的其他点的列表中。我目前正在做的是获取包含纬度/经度的 ortb 出价请求消息,并使用 redis 检查哪些 Activity 将
我在尝试安装 Redis 3.2.1 时遇到以下问题: [root@clj-lc-test01 redis-3.2.1]# make cd src && make all make[1]: Enter
我的点具有给定的latlong和周围的距离-例如{40.6826048,-74.0288632:20英里,51.5007825,-0.1258957:100英里}。如果我选择固定的geohash长度(
我在 Windows 10 中使用 ipython Jupyter 笔记本。我在 cmd 中使用 pip install geohash 安装了 Geohash。 当我尝试使用 geohash(imp
情况: 我有使用 geohash 系统创建 base-32 的 JavaScript 代码。 var BASE32_CODES = "0123456789bcdefghjkmnpqrstuvwxyz"
我正在尝试编写一个 geohashing 函数,该函数采用纬度/经度对并返回其 base2(geohash 一旦转换为 base32)字符串。但是,这给了我不正确的结果。有什么问题吗? public
我想做一个边界框查询 geohashed 字符串的 Trie,其中点位于空间中心周围。当点跨越中心点时,我似乎找不到查询 trie 的好方法。 假设您在 16x16 空间中每个坐标有 4 位(总共 8
我看过this post关于geohashes。根据作者的说法,计算哈希的最后一步是交错 x 和 y 索引值。但这真的有必要吗?只要哈希表是根据更改后的索引规则构建的,是否有适当的理由不只是连接这些值
我现在正在寻找一种优雅的算法,使用地理散列算法 (http://www.geohash.org) 递归查找邻居的邻居。 基本上采用中央 geohash,然后在其周围获得相同大小的散列的第一个“环”(8
我的要求是: 给定一个经纬度边界框,返回一组 geohashes,使得: 集合中的 geohash 数量应该很少(1 到 5 个 geohash 矩形)如果可能。 覆盖范围应尽可能接近输入纬度边界框
您好,我正在使用 googleCharts https://developers.google.com/chart/interactive/docs/gallery/geochart我需要将 GeoH
我找到了this amazing plugin用于在elasticsearch中创建基于geohash的facet。它似乎在 _head pluing 中工作得很好。我只是不太确定如何从 JavaCl
我正在尝试使用 Python 的 geohash 模块获取 geohash 的边界框(x,y 坐标)。我能够成功读取 geohash 并获取它们的质心,但是当我尝试使用 geohash.bbox()
最近我一直在研究 Geohashes和Firestore。我的待办事项场景是收集文件(餐厅),每个餐厅都会有交付给的 Geohashes 列表。 我想避免在文档 restaurant 中添加 geoa
要求保留一个城市中排名前十的地区的列表,这些城市在任何给定时刻都对我们的食品服务产生了需求。这个城市可能有成千上万的地方。 如果必须在内存中进行近乎实时的(滞后时间不超过5分钟)数据存储, -保持按地
我跟随this article用亚马逊DynmoDB索引我的ElasticSearch内容。我在每个DynamoDB行中都有一个嵌套字段,称为location,其中包含5个项目:latitude,lo
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 4 年前。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 4 年前。
我是一名优秀的程序员,十分优秀!