Rumah > pangkalan data > tutorial mysql > 【MongoDB】Mongodb数据库之Capped Collection集合

【MongoDB】Mongodb数据库之Capped Collection集合

WBOY
Lepaskan: 2016-06-07 14:59:48
asal
1138 orang telah melayarinya

Capped Collection是性能出色的有着固定大小的集合,以LRU(least Recently Used,最近最少使用)规则和插入顺序执行age-out(老化移出)处理,自动维护集合中对象的插入顺序。 一、创建Capped Collection 创建时候要预先指定大小,如果空间用完,新添加的对

Capped Collection是性能出色的有着固定大小的集合,以LRU(least Recently Used,最近最少使用)规则和插入顺序执行age-out(老化移出)处理,自动维护集合中对象的插入顺序。

一、创建Capped Collection 

创建时候要预先指定大小,如果空间用完,新添加的对象将会取代集合中最近的对象。更新如果超出了collectiond 大小,则会更新失败。虽然不允许删除,但是可以调用drop方法删除集合中所有的文档。 删除后要显示重建集合。在32机器上,一个capped collection的最大值约是482.5M,64位只受系统文件大小的限制。

【MongoDB】Mongodb数据库之Capped Collection集合

一个普通的collection转换为Capped Collection,只要调用convertToCapped()命令即可;

【MongoDB】Mongodb数据库之Capped Collection集合

二、Capped Collection的用途

Capped Collection是mongodb中日志机制的首选,mongodb没有使用日志文件,而是吧日志文件存储在数据库中。在一个没有索引的capped collection中插入对象的速度与在文件系统中记录的日志速度相当。

在内存中缓存一些对象,比如,计算出来的统计信息一般需要在collection上建立一个索引,因为使用缓存往往是读比写多。 

可以利用capped collection的age-out特性,省去写crontab脚本执行人工归档的工作。

三、注意事项

1.如果写比读多,最好不要在上面创建索引;

2,使用natual ordering可以有效地检索最近插入的元素,因为capped collection能够保证自然排序就是插入的顺序。

3. capped collection不能被shard.

4. 可以在创建capped collection时指定collection中能够存放的最大文档数。 





Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan