gpt4 book ai didi

java - MongoDB(带有 Spring 数据)- 归档

转载 作者:太空宇宙 更新时间:2023-11-04 14:52:32 24 4
gpt4 key购买 nike

我在 Spring Web 应用程序中使用 mongo。

我有一份正在不断更新并填充数据的文档。

我有几个问题:

1) 如果文档已建立索引,并且填充速度非常快,我的 Web 应用程序的性能是否可能会随着时间的推移而下降? (我的更新\获取大部分是通过“byId”完成的,如果相关的话)

2) 如果问题 1 的答案是"is" - 我如何为我的庞大馆藏实现归档方法?我想保留该集合中最近 2 个月的数据,其他数据应该存档。 spring\mongo 支持这可能吗?

3) 我应该以什么方式保存我的文件?它应该是一个简单的文件吗?不同的数据库?

谢谢

最佳答案

确保您没有在问题中混淆 documentcollection 的含义。您的集合中是否只有一份文档需要更新?

到 1) 如果将新文档插入到带有索引的集合中(并且新文档包含索引键),则如果集合增长,此操作会变慢,因为必须更新索引,并且可能需要移入文档存储格式。如果您在集合中插入的次数(非常)多于在集合中搜索的次数,您可以考虑删除索引以加快插入速度(但会减慢搜索速度)。在做出快速决定之前,您应该在演示数据集上对这两种解决方案进行性能测试。

到2)不知道spring是否支持。但您可以使用 mongoexport 来备份单个集合。看看我的answer here .

mongoexport -d databasename -c collectionname -o savefilename.json

到 3) 您导出的集合将是 JSON 格式的 UTF-8 文本文件。集合中的每个文档占一行。导出后,您可以压缩文件以减少使用的内存。

关于java - MongoDB(带有 Spring 数据)- 归档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23608776/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com