1

我对 cassandra 及其数据模型比较陌生。我有一大组数据,这些数据由染色体上的位置(染色体:开始-结束)描述,我们有 24 条染色体,开始和结束是整数。我想支持的查询是查找基因组中与一组其他位置重叠的所有位置。如果没有其他想法,我可以创建一个简单的基于 R-tree 的“索引”方案,但我认为有人可能遇到了这个问题并想出了一个解决方案。

4

1 回答 1

1

由于您需要在 2 维上进行查询,因此您可以使用其他数据库(例如 mongodb)支持此类地理空间索引/查询, 请参阅 Bounds Queries

在 Cassandra 中,我认为您能做的最好的事情是使用geocell ( doc ) 或其他空间填充曲线

您将 start 和 end 转换为 geohash,对于您的每个数据,然后您将能够通过搜索 geohash 之间的地理单元来搜索边界框,从 [s1,s2] 开始并以 [e1,e2] 结束(s1, e1) 和 geohash(s2, e2) 给出边界框中的连续位置

于 2012-06-25T21:49:33.400 回答