存档旧的mongodb文件

时间:2014-05-14 15:57:49

标签: java json mongodb

我有一个集合,只需要包含过去3个月的文档,但所有文档都应该以某种方式保存。经过一些研究,我们想到了以下解决方案:

每3个月执行一次cron:

  1. 找出需要归档的文档数量。
  2. 存档:mongoexport -d MyDB -c MyCollection -q "{ timestamp: { \$gt: MyTimestamp}}" -o MyCollection _export_timestamp.json
  3. 检查MyCollection _export_timestamp.json中的文档数量,并与第一步进行比较
  4. 从集合中删除已归档的内容。
  5. 我怎样才能确定mongo导出是否成功?如果我使用java.lang.Process并检查ErrorStream。这够了吗?

1 个答案:

答案 0 :(得分:0)

由于您使用的是Java,使用MongoDB Java Driver可能会更有意义吗?

您可以使用Java API检索要备份的对象,以及文件输出的序列化库,例如KryoJackson。这将允许您做任何您需要的事情,而不必担心进程间交互的复杂性。