-1

我研究 NoSQL 已经有一段时间了,但我仍然在努力寻找和过滤结果/文档。

例如,在 NoSQL 世界中,我如何找到两个时间戳内的所有数据?如果一切都存储在键/值的基础上?或者查找一个经纬度点半径范围内的所有文档?

谢谢

4

2 回答 2

0

不同的数据结构支持不同的用例。例如,如果您可以使用字典/地图接口的有限 API,分布式哈希表将是一个不错的选择。

如果您需要对数据库进行更复杂的查询,请选择一个有效支持此用例的数据库。数据库环境非常多样化,可能有适合您的数据库。

对于范围查询,BigTable 克隆(以及表达查询能力更高)可能值得考虑。

即使具有正确数据结构的数据库不够快或不能足够扩展,您仍然可以使用分片、复制和巧妙使用缓存或搜索索引等技巧。

你想如何权衡一致性、可用性、弹性、吞吐量和延迟的约束都取决于具体的问题,你可能会发现你需要不止一种类型的数据库来实现最佳解决方案。

不要人为地让自己变得更难;过早优化,你知道的。

我在一家 MySQL 商店工作,它的运行速度足以应付我们每天数十万次交易(数百万次查询),并且在我们的软件用于电视直播活动时足够可靠。

对不起,我不能给你比这更具体的答案。

于 2010-07-16T12:14:08.153 回答
0

例如,MongoDB 支持范围查询,您可以在纬度/经度信息上创建地理索引。NoSQL 数据库之间存在很大差异。

于 2010-07-16T22:32:57.673 回答