具有内置数据保留功能的数据库(可能是 noSQL)

标签 database nosql storage archive

哪些开源数据库具有自动“老化”数据的功能,以便您可以指定一段数据必须存储多长时间?

即一段数据的设定日期或时间,之后,数据库可以自由删除它的所有痕迹。

更新: 我更多的是寻找几天到几年的老化时间,而不是几分钟或几秒钟。所以缓存机制并不是我想要的。

最佳答案

MongoDB 在新版本 2.2 中有一些东西,您可能会感兴趣 - TTL Collections .

集合通过一个特殊的索引过期,该索引跟踪插入时间,并结合后台 mongod 进程定期从集合中删除过期文档。您可以使用此功能使副本集和分片集群中的数据过期。

从 mongo shell 创建 TTL 集合非常容易 -

db.mycollection.ensureIndex( { "status": 1 }, { expireAfterSeconds: 3600 } )

  • 下载 2.2rc0 here (发布候选,尚未完全准备好生产......在生产构建之前还会有一个发布候选)

  • 更改日志 here

  • 可以找到 2.2 发行说明 here .

我不能代表其他解决方案。

关于具有内置数据保留功能的数据库(可能是 noSQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11825214/

相关文章:

android - 在我的 Ionic 应用程序中读取存储在 android native 存储中的视频

database - 在存储到数据库之前压缩大文本数据?

java - 外部存储和 HTC One V

mysql - RoR 使用 2 个不同的数据库和事件记录适配器?相同的表名

MySQL 查询需要很长时间才能返回一个巨大的表

sql-server - 从外部系统生成的主键

mysql - 使用 sequelize.js 在 2 个表之间嵌套 mysql 事务

Firebase "symlink"到另一个节点

php - Redis读写基本概念

java - Riak 和 Java - com.fasterxml.jackson.core.JsonParseException : Unexpected character ('<' (code 60))