如何在一个非常大的数据库上使用mongodb查询操作(每个数据库中有3个大约260.3亿的碎片)

2024-06-02 04:34:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须在一个分片数据库中的不同日期范围列中查找数据,该数据库共有大约8亿个文档。我正在使用此查询:

cursordata=event.aggregate([{"$match":{}},{"$unwind":},{"$project":{}}])

但是,当我将其更改为数据帧时

df=pd.DataFrame(cursordata)

这是永远的,根本不起作用,它只是卡住了

我有两个选择:

  1. 或者直接从mongodb继续查询不同的条件,或者
  2. 将数据更改为数据帧后,针对不同的条件执行操作

请建议如何进行


Tags: 数据文档projectevent数据库dataframedfmongodb
1条回答
网友
1楼 · 发布于 2024-06-02 04:34:20

能给我们一份文件样本吗? 我认为你应该寻找一个与你正在查询的字段相匹配的索引

作为提醒,请记住MongoDB索引中的Equality, Sort, Range规则。
此外,由于您在分片集群中,您可能希望在查询中使用分片键,否则mongos将查询所有分片(更多信息here

相关问题 更多 >