MongoDB 用一个分片按块进行分区是否合理?在一台服务器上分区

问题描述 投票:0回答:1

我想在 mongodb 中获得类似于 postgresql 中分区的结果。也就是说,我希望在数据库的一个实例上,没有集群,没有额外的节点,数据是分布式的,例如按日期,当我请求集合中的数据时,mongodb将仅并行扫描那些子-符合条件的收藏。

例如类型的集合

{
 date: ISODate('2024-03-03T05:05:05')
 temperature: 25
}

当我提出类型请求时

db.my_collection.find({date: { $gt: ISODate('2024-03-03') } })

然后,只有存储早于 2024-03-03 的数据的子集合才会被并行扫描。

这就是 PostgreSQL 中分区的工作原理。

我再说一遍,我对不同服务器上的分片和负载分配的主题不感兴趣,我只有一台数据量非常大的服务器。

mongodb partitioning
1个回答
0
投票

请查看 MongoDB 索引。

索引是特殊的数据结构,它以易于遍历的形式存储集合数据集的“一小部分”。 MongoDB 索引使用 B 树数据结构。 完整文档:

MongoDB 索引

在您的情况下,您需要在集合中的

date

字段上添加索引,以限制扫描的文档。

© www.soinside.com 2019 - 2024. All rights reserved.