NoSQL:如何根据lat&long检索’house’?
发布时间:2020-12-13 13:28:23 所属栏目:百科 来源:网络整理
导读:我有一个用于存储房地产房的NoSQL系统. 我在每个房子的钥匙价值商店中获得的一条信息是经度和纬度. 如果我想检索geo-lat / long框中的所有房屋,如下面的SQL: SELECT * from houses WHERE latitude IS BETWEEN xxx AND yyyAND longitude IS BETWEEN www AND
我有一个用于存储房地产房的NoSQL系统.
我在每个房子的钥匙价值商店中获得的一条信息是经度和纬度. 如果我想检索geo-lat / long框中的所有房屋,如下面的SQL: SELECT * from houses WHERE latitude IS BETWEEN xxx AND yyy AND longitude IS BETWEEN www AND zzz 题: >如何使用NoSQL进行这种类型的检索…仅使用键值存储系统? 解决方法
sql或没有sql不是问题 – 严格来说,问题是你的密钥是什么类型的索引.
spatial indices,这是你需要有效地满足你的查询,与Sql无关,或者更一般地与关系数据库无关 – 它们与关系问题和非关系问题完全正交.不幸的是,我不知道Cassandra或其他流行的非关系数据库的任何公开可用的空间索引系统(事实上,我唯一知道的唯一面向GIS的数据库引擎是PostGIS,它恰好是作为强大的开源PostGres ……这是关系型的;-).
如果你没有空间索引但只有一个普通索引(例如,一个按Lat排序,然后是Long),那么你将需要扫描所有具有合适Lat的记录,以丢弃那些不合适的Long – 就像在相同的情况下,关系引擎必须为你做(当你选择几个BETWEEN并且它必须继续时,它是两个字段的明确排序索引,因此受到限制).与关系无关……与索引有关;-). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |