2

在 Cassandra 之上实现地理空间查询的最佳方式是什么?

地理空间是指能够根据地理位置查询数据对象。例如,查找离用户当前位置最近的 10 家餐厅。

我想到了一种可能的解决方案,但这似乎是一个可怕的黑客:使行充当纬度和经度数据范围的“桶”(分别)。然后按升序将位置作为列保存到适当的行中。按纬度、经度(再次分别)查询 20ish 壁橱餐厅,然后与 2 个集合相交。

我开始认为这可能是 Cassandra 模型的一个严重缺陷。

4

1 回答 1

0

基本的 b 树索引以宽行的形式存在于 cassandra 中。PlayOrm 在 cassandra 上具有完整的 SQL 语言,但带有分区,因此您不会将数十亿行与数十亿行连接起来,而是连接分区。我想做地理空间与 PlayOrm 的类似,但我猜。我的意思是地理空间可以用b-tree之类的吗?如果是这样,那只是意味着您必须做一些繁重的工作。我知道在某一时刻,PlayOrm 正在考虑添加一些地理空间功能,但我们从来没有解决过它......不过,我们总是会接受该领域的工作。

后来,迪恩

于 2013-07-09T13:31:29.697 回答