MongoDB 固定集合(Capped Collections)是性能出色且有着固定大小的集合,对于大小固定,我们可以想象其就像一个环形队列,当集合空间用完后,再插入的元素就会覆盖最初始的头部的元素!
我们通过createCollection来创建一个固定集合,且capped选项设置为true:
>db.createCollection("cappedLogCollection",{capped:true,size:10000})
还可以指定文档个数,加上max:1000属性:
>db.createCollection("cappedLogCollection",{capped:true,size:10000,max:1000})
判断集合是否为固定集合:
>db.cappedLogCollection.isCapped()
如果需要将已存在的集合转换为固定集合可以使用以下命令:
>db.runCommand({"convertToCapped":"posts",size:10000})
以上代码将我们已存在的 posts 集合转换为固定集合。
固定集合文档按照插入顺序储存的,默认情况下查询就是按照插入顺序返回的,也可以使用$natural调整返回顺序。
>db.cappedLogCollection.find().sort({$natural:-1})
可以插入及更新,但更新不能超出collection的大小,否则更新失败,不允许删除,但是可以调用drop()删除集合中的所有行,但是drop后需要显式地重建集合。
在32位机子上一个cappped collection的最大值约为482.5M,64位上只受系统文件大小的限制。
在本章中,我们将学习如何创建表。 在创建表之前,首先确定其名称,字段名称和字段定义。 以下是表创建的一般语法: CREATE TABL...
Redis DEL 命令Redis key(键) Redis DEL 命令用于删除已存在的键。不存在的 key 会被忽略。语法 redis DEL 命令基本语法如下:re...
Redis Sismember 命令Redis 集合(Set)Redis Sismember 命令判断成员元素是否是集合的成员。语法 redis Sismember 命令基本语法如...
Redis Zcount 命令 Redis 有序集合(sorted set) Redis Zcount 命令用于计算有序集合中指定分数区间的成员数量。语法 redis Zcoun...
Redis Zrangebylex 命令 Redis 有序集合(sorted set) Redis Zrangebylex 通过字典区间返回有序集合的成员。语法 redis Zrange 命...
Redis Zscore 命令 Redis 有序集合(sorted set) Redis Zscore 命令返回有序集中,成员的分数值。如果成员元素不是有序集 key 的...
Redis Exec 命令 Redis 事务 Redis Exec 命令用于执行所有事务块内的命令。语法 redis Exec 命令基本语法如下:redis 127.0.0.1:...
Redis Role 命令 Redis 服务器 Redis Role 命令查看主从实例所属的角色,角色有master, slave, sentinel。语法 redis Role 命令...