MongoDB 之 Capped Collection】的更多相关文章

MonitorLogging改造(消息接入) 改造前架构: 可以看出原来的流程中,大量业务分析,业务接入耦合在web服务层.大量操作,导致线程线性的挂起线程. 改造后: 将业务通讯抽象成为MonitorQueueManager,并将业务主题抽象放到各自的collection中. 形如: 抽象为一个结构topic,content针对业务分为若干个主题.方便以后切换到mq或者其他的队列中. MonitorSchedule改造(消息集中处理) 原有处理流程 当时业务比较少,只有一个主处理流程,所以强耦…
MongoDB 支持 Capped Collection,一种固定大小的集合,当集合的大小达到指定大小时,新数据覆盖老数据,MongoDB Replica set 中的 oplog 就是 Capped Collection 类型. 1 查看 oplog 是否是 Capped Collection [mongo@redhatB ~]$ mongo MongoDB connecting /test rs0:PRIMARY> use local; switched to db local rs0:PR…
db.createCollection(name, {capped: true, autoIndexId: true, size: 1000, max :100} ) name:集合的名字 capped:true 是否启用集合限制 autoIndex:true(默认是true) 是否使用_id作为索引 size:1000000 限制集合使用的空间的大小,默认没有限制 max:100000 集合中最大条数显示,默认没有限制(max的优先级低于size) 我们创建集合 db.createCollec…
1.简单介绍 capped collections 是性能出色的有着固定大小的集合,以LRU(Least Recently Used 最近最少使用)规则和插入顺序进行age-out(老化移出)处理,自动维护集合中对象的插入顺序,在创建时要预先指定大小.如果空间用完,新添加的对象将会取代集合中最旧的对象. 2.功能特点 可以插入及更新,但更新不能超出collection 的大小,否则更新失败.不允许删除,但是可以调用drop() 删除集合中的所有行,但是drop 后需要显式地重建集合.在32 位机…
一 . 什么是固定集合 MongoDB中有一种特殊类型的集合,值得我们特别留意,那就是固定集合(capped collection). 固定集合可以声明collection的容量大小,其行为类似于循环队列.数据插入时,新文档会被插入到队列的末尾,如果队列已经被占满,那么最老的文档会被之后插入的文档覆盖. 固定集合的优点 1.写入速度提升.固定集合中的数据被顺序写入磁盘上的固定空间,所以,不会因为其他集合的一些随机性的写操作而“中断”,其写入速度非常快(不建立索引,性能更好). 2.固定集合会自动…
一 . 什么是固定集合 MongoDB中有一种特殊类型的集合,值得我们特别留意,那就是固定集合(capped collection). 固定集合可以声明collection的容量大小,其行为类似于循环队列.数据插入时,新文档会被插入到队列的末尾,如果队列已经被占满,那么最老的文档会被之后插入的文档覆盖. 固定集合特性:固定集合很像环形队列,如果空间不足,最早的文档就会被删除,为新的文档腾出空间.一般来说,固定集合适用于任何想要自动淘汰过期属性的场景. 固定集合应用场景 比如日志文件,聊天记录,通…
固定集合(Capped Collection)是一种尺寸固定的“循环”集合,可提供高效的创建.读取.删除等操作.这里所指的“循环”的意思是,当分配给集合的文件尺寸耗尽时,就会自动开始删除最初的文档,不需要提供任何显式的指令. 如果文档更新后增加了文档的尺寸,那么固定集合会限制对文档的更新.因为固定集合按照磁盘存储的顺序来保存文档,所以能确保文档尺寸不会增加磁盘分配的尺寸.固定集合最适合保存日志信息,缓存数据以及任何其他大容量数据.创建固定集合 要想创建固定集合,需要使用 createCollec…
MongoDB 固定集合(Capped Collections)是性能出色且有着固定大小的集合,对于大小固定,我们可以想象其就像一个环形队列,当集合空间用完后,再插入的元素就会覆盖最初始的头部的元素! 创建固定集合 我们通过createCollection来创建一个固定集合,且capped选项设置为true: >db.createCollection("cappedLogCollection",{capped:true,size:10000}) 还可以指定文档个数,加上max:1…
一.Capped Collection固定集合 简单介绍 capped collections是性能出色的有着固定大小的集合(定容集合),以LRU(Least Recently Used最近最少使用)规则和插入顺序进行 age-out(老化移出)处理,自动维护集合中对象的插入顺序,在创 建时要预先指定大小.如果空间用完,新添加的对象将会取代集合中最旧的对象. 功能特点 可以插入及更新,但更新不能超出 collection 的大小,否则更新失败.不允许删除,但是可 以调用 drop() 删除集合中…
固定集合:capped collection 是性能出色的固定大小的集合,以LRU算法淘汰记录,自助维护集合中的对象的插入顺序,创建时预先制定大小,空间使用完,心对象取代旧的对象,保持最新的数据. 可以插入及更新,但更新不能超出 collection 的大小,否则更新失败.不允许删除,但是可 以调用 drop() 删除集合中的所有行,但是drop 后需要显式地重建集合.在 32 位机上,一 个 capped collection 的最大值约为 482.5M,64 位上只受系统文件大小的限制. 属…
笔记-capped collection 1.      collection 1.1.    简介 集合分为固定与非固定collection,capped collection 1.1.1.   capped collections Capped collections are fixed-size collections that support high-throughput operations that insert and retrieve documents based on in…
MongoDB修改数据库数据的时候报错 原因: 集合被设置成了 固定集合 .固定集合的数据不能被修改.只能查找-删除-再插入,也就是创建集合的时候设置了capped参数为true 解决: 创建集合的时候capped为false或者不写这个参数,默认为false 参考: https://www.solidsyntax.be/2016/03/26/MongoDB-Cannot-change-the-size-of-a-document-in-a-capped-collection/…
固定集合指的是事先创建而且大小固定的集合 . 固定集合特性:固定集合很像环形队列,如果空间不足,最早的文档就会被删除,为新的文档腾出空间.一般来说,固定集合适用于任何想要自动淘汰过期属性的场景,没有太多的操作限制. 创建固定集合使用命令: db.createCollection("collectionName",{capped:true,size:100000,max:100}); size指定集合大小,单位为KB,max指定文档的数量 当指定文档数量上限时,必须同时指定大小.淘汰机制…
简介参考 TokuMX 和 MongoDB 各自的官方站点.       ##  Tokutek 最重要的特点和 marketing word 是所谓 fractal tree indexing technology,相关链接: 1. 由于 per-node buffer 的引入所导致的 ACID 里的 Durability 问题应对方式(通过更合理的规划物理机器布局.增加单事务数据量等方式来分摊 fsync 开销:更「松弛」的持久化处理,即不要求每次 operation 都做持久化.而是「延迟…
dbpath下是清一色的collection-n-***与index-n-***开头的物理文件,如何知道某一个集合与其对应与其对应的物理文件? db.collection_name.stats() 返回的结果包含集合数据对应的物理文件 db.collection_name.stats({indexDetails:true}) 返回的结果包含集合数据和索引对应的物理文件 官方有db.collection.stats用法的详细信息:https://docs.mongodb.com/manual/re…
mongodb的3.0版本之前: 如2.3版本,可以直接使用db调用collection来操作数据 但在3.0版本以上,会报错:db.collection is not a function 3.0版本使用的规则发生了一些修改: 3.0版本的Node.js MongoDB Driver API中第一个example例子…
mongodb shell 中执行: db.source(复制源表).find().forEach(function(x){ db.target(目的表).insert(x); })…
简单记录一下: 造成该问题的原因是集合被设置成了 固定集合 .固定集合的数据不能被修改.只能查找-删除-再插入…
info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 Web 应用程序框架.使用 Django,我们在几分钟之内就可以创建高品质.易维护.数据库驱动的应用程序. Django 框架的核心组件有: 用于创建模型的对象关系映射 为最终用户设计的完美... info:OpenERPurl:https://www.oschina.net/p/openerpde…
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 Web 应用程序框架.使用 Django,我们在几分钟之内就可以创建高品质.易维护.数据库驱动的应用程序. Django 框架的核心组件有: 用于创建模型的对象关系映射 为最终用户设计的完美... info:更多OpenERP信息url:https://www.oschina.net/p/o…
PostgreSQL数据库资料 转自:http://blog.csdn.net/postgrechina/article/details/49132791 推荐书籍: 概念书籍: <PostgreSQL Introduction and Concepts> 开发书籍: <PostgreSQL开发必备参考手册> 管理类书籍: <PostgreSQL 9 Administration Cookbook> <PostgreSQL 9.0 High Performance…
在开始使用MongoDB(Version:3.2.9)之前,必须首先在MongoDB中创建 Database 和 Collection.Database是相互独立的,每个Database都有自己的Collections,不同的database中,可以存在名字相同的collection,但是Database不是物理存储单位,MongoDB以Collection为物理存储单位,每个collection都有自己的数据文件和index文件,这些文件以 .wt 结尾. 一,创建Collection 1,查…
Overview Capped collections are fixed-size collections that support high-throughput operations that insert and retrieve documents based on insertion order. Capped collections work in a way similar to circular buffers: once a collection fills its allo…
转自:http://www.lanceyan.com/tech/arch/mongodb_shard1.html 按照上一节中<搭建高可用mongodb集群(三)-- 深入副本集>搭建后还有两个问题没有解决: 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的时候能否做到自动扩展? 在系统早期,数据量还小的时候不会引起太大的问题,但是随着数据量持续增多,后续迟早会出现一台机器硬件瓶颈问题的.而mongodb主打的就是海量数据架构,他不能解决海量数据怎么…
在每个MongoDB(版本 3.2.9) Instance中,都有一个本地数据库(local),用于存储 Replication 进程的信息和本地数据.local 数据库的特性是:位于local数据库中的数据和集合不会被 Replication 进程复制到其他MongoDB instance上.如果实例上有些collection 和 data不计划被复制到其他MongoDB Instance,可以将这些collection 和 data 存储在local 数据库中. MongoDB shell提…
一.索引 MongoDB 提供了多样性的索引支持,索引信息被保存在system.indexes 中,且默认总是为_id创建索引,它的索引使用基本和MySQL 等关系型数据库一样.其实可以这样说说,索引是凌驾于数据存储系统之上的另一层系统,所以各种结构迥异的存储都有相同或相似的索引实现及使用接口并不足为 奇. 1.基础索引 在字段age 上创建索引,1(升序);-1(降序): db.users.ensureIndex({age:1}) _id 是创建表的时候自动创建的索引,此索引是不能够删除的.当…
mongoDB basic from:http://www.tutorialspoint.com/mongodb prject:https://github.com/chenxing12/l4mongodb overview getting-start collection dataType insert find Overview MongoDB is a cross-platform, document oriented database that provides, high perfor…
MongoDB C Driver使用教程 转载请注明出处http://www.cnblogs.com/oloroso/ 本指南提供简介 MongoDB C 驱动程序. 在 C API 的详细信息,请参阅API 文档. 原文来自http://api.mongodb.com/c/current/tutorial.html [TOC] 0.安装 有关特定的平台上安装MongoDB C驱动程序的详细说明,请参阅安装指南. MongoDB C 驱动程序的安装http://www.cnblogs.com/o…
最近一年忙碌于数据处理相关的工作,跟MongoDB打交道极多,以下为实践过程中的Q&A,后续会不定期更新补充. 另有<MongoDB使用小结:一些常用操作分享>,注:本文完成时MongoDB的最新版本为MongoDB 2.6. 1.count统计结果错误 这是由于分布式集群正在迁移数据,它导致count结果值错误,需要使用aggregate pipeline来得到正确统计结果,例如: db.collection.aggregate([{$group: {_id: null, count…
本文整理了一年多以来我常用的MongoDB操作,涉及mongo-shell.pymongo,既有运维层面也有应用层面,内容有浅有深,这也就是我从零到熟练的历程. MongoDB的使用之前也分享过一篇,稍微高阶点:见这里:<MongoDB使用小结> 1.shell登陆和显示 假设在本机上有一个端口为17380的MongoDB服务,假设已经把mongo bin文件加入到系统PATH下. 登陆:mongo --port 17380 显示DB:show dbs 进入某DB:use test_cswuy…