回到目录 这个问题是这样的,有一个实体dog,里面有集合属性DogHistory,它里面有一些自己的属性,其中一个是SortNum,主要用来进行排序,而且这个排序可以影响主对象,即影响dog类,这个在mongodb里不容易实现,但也不是不能实现,我们需要分两步考虑这个问题,不过首先我们需要知道,mongodb里不支持子集合对象的子属性排序,但它支持子实体对象的子属性排序. 下面看一下数据结构 public class DogHistory { public bool IsHealth { get…
回到目录 对于MongoDB这个非关系型数据库(NoSql)来说,找一个IDE工具不是很容易,还好被我找到了,它就是大名鼎鼎的MongoVUE,它可以对mongodb数据表进行增删改查,下面我主要说一下它的查询功能,它与传统的SQLSERVER不同,在写语句时我们需要了解一下它自己的一些关键字.…
一.分页 1.limit返回指定条数的数据 2.skip指定跨度 3.limit与skip结合,进行分页 二.排序 1.sort排序:指定排序的key,大于0为升序,小于0为降序.如果指定了多个排序键,比如{age:1, name:-1},则是先按age升序排列,对于age键相等的文档,则按name降序排列. 2.排序的先后:从下图中可以发现,使用sort,始终是先对满足查询条件而查询到的结果集进行排序,然后再进行选取指定的条数或者是跳过指定的条 数.它们的关系就是:在数据库服务器端,先执行so…
回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助和启发,文章中有对新技术的研究(Mongo驱动),对老技术的回顾(代码重构),还有对架构设计的阐述等(面向接口编程,对扩展开放,对修改关闭,所以出现了IMongoRepository接口). MongoDB学习笔记系列~目录 MongoDB学习笔记~环境搭建 (2015-03-30 10:34) M…
MongoDB学习笔记~环境搭建 (2015-03-30 10:34) MongoDB学习笔记~MongoDBRepository仓储的实现 (2015-04-08 12:00) MongoDB学习笔记~ObjectId主键的设计 (2015-04-09 13:08) MongoDB学习笔记~客户端命令行的使用 (2015-04-10 13:40) MongoDB学习笔记~索引提高查询效率 (2015-04-10 15:35) MongoDB学习笔记~为IMongoRepository接口添加分…
MongoDB学习笔记:快速入门   一.MongoDB 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成.MongoDB 文档类似于 JSON 对象.字段值可以包含其他文档,数组及文档数组. 二.MongoDB安装及配置 查看:https://www.runoob.com/mongodb/mongodb-linux-ins…
最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网:https://www.mongodb.com/ MongoDB 是一个基于分布式文件存储的数据库,由 C++ 语言编写,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. Mong…
MongoDB学习笔记(1):MongoDB的安装和说明 快速开始 下载地址 官网下载: https://www.mongodb.com/download-center?jmp=nav#community 安装指导: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/ 可视化工具: Robo3T 基本概念 数据库 一个MongoDB中可以建立多个数据库,默认数据库为db位于data目录下. MongoDB的单个实例可…
MongoDB学习笔记:MongoDB 数据库的命名.设计规范     第一部分,我们先说命名规范. 文档 设计约束 UTF-8 字符 不能包含 \0 字符(空字符),这个字符标识建的结尾 . 和 $ 有特殊含义,需要避免 区分大小写 键不能重复 键/值对有序 实践约束 [强制]文档中的key禁止使用_以外的特殊字符 [强制]key全部小写,多个单词可以下划线分割 [强制]禁止使用数字打头的key [强制]禁止自定义_id(_id一般自增,使用无序id极有可能降低写入性能) [建议]相似类型文档…
<?php/*** PHP操作MongoDB学习笔记*///*************************//**   连接MongoDB数据库  **////*************************//格式=>("mongodb://用户名:密码 @地址:端口/默认指定数据库",参数)$conn = new Mongo();//可以简写为//$conn=new Mongo(); #连接本地主机,默认端口.//$conn=new Mongo("172…
MongoDB 学习笔记 mongodb 数据库 nosql 一.数据库的基本概念及操作 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 column field 数据字段/域 index index 索引 table joins 表连接,MongoDB不支持 primary key primary key 主键,MongoDB自动将_id字段设置为主…
MongoDB学习笔记(一) MongoDB介绍及安装MongoDB学习笔记(二) 通过samus驱动实现基本数据操作MongoDB学习笔记(三) 在MVC模式下通过Jqgrid表格操作MongoDB数据MongoDB学习笔记(四) 用MongoDB的文档结构描述数据关系MongoDB学习笔记(五) MongoDB文件存取操作MongoDB学习笔记(六) MongoDB索引用法和效率分析…
原文地址 MongoDB学习笔记(查询) 基本查询: 构造查询数据. > db.test.findOne() { "_id" : ObjectId("4fd58ecbb9ac507e96276f1a"), "name" : "stephen", "age" : 35, "genda" : "male", "email" : "ste…
复制集+sharding分片                                                               背景 主机 IP 服务及端口 Server A 192.168.50.1 shard1_1:27017shard2_1:27018config:20000mongos:30000 Server B 192.168.51.1 shard1_2:27017shard2_2:27018config:20000mongos:30000 创建数据目录及配…
主从复制                                                                                       主从节点开启 主节点的设置,只需要在某一个服务启动时加上 –master 参数 ,而从节点加上 –slave 和 –source 参数,即可实现同步. 所有的从节点都从主节点复制内容.目前还没有能从从节点复制的机制,原因是从节点没有保存自己的oplog. 添加及删除源 添加从节点可以在开启的时候不添加源,可以向sou…
索引                                                                                             基础索引 用到ensureIndex方法建立索引,1为升序,-1为降序. MongoDB数据库在创建集合的时候,默认会为_id创建索引. 注:当系统已有大量数据时,创建索引就是一个非常耗时的工作,只需要指定backgroud:true即可. db.yyd.ensureIndex({"name":1}…
权限                                                                                             绑定内网IP访问MongoDB服务 在启动的时候带上 –bind_ip 192.168.1.1 参数,可以使指定IP访问. mongod --bind_ip 192.168.1.1 连接时必须指定IP,否则会失败. mongo 192.168.1.1 用户 MongoDB中默认有一个空的admin数据库,在a…
Capped集合                                                            Capped集合的大小是固定的,如果空间都被用完了,新添加的对象会取代最旧的那个数据. 创建 使用了db.createCollection()方法创建了一个名字为mycapped,空间大小为100000的Capped Colletcion. 限制 如果需要限定Collection中对象的数量,就要设置max参数,如果到了限制的数量,就要移除一个最近的插入. 使用…
mongoDB 学习笔记纯干货(mongoose.增删改查.聚合.索引.连接.备份与恢复.监控等等) http://www.cnblogs.com/bxm0927/p/7159556.html…
MongoDB学习笔记(2):数据库操作及CURD 数据库操作 创建数据库 首先MongoDB中数据库的创建和数据库的切换都是使用命令,USE DATABASE,如果要切换的数据库不存在则会进行创建,但是我们看到虽然已经创建成功,当前也显示我们在使用myBD数据库,但是却不存在与show列表中,这是因为它当前为空,不存在任何数据,现在我们向其中插入数据: 删除数据库 数据集合的操作 此处勘正: db.COLLECTION_NAME.insert(document) 数据插入的命令如上,所以此处插…
MongoDB学习笔记一:MongoDB的下载和安装 趁着这几天比較空暇,准备学习一下MongoDB数据库.今天就简单的学习了一些MongoDB的下载和安装.并创建了存储MongoDB的数据仓库. 将自己今天学习到的写成博客分享给大家. 一.MongoDB的下载和安装 MongoDB的下载地址为:http://www.mongodb.org/ 1.进入官网的首页后,在首页的右上方单击Downloads连接,如图所看到的: 2.在页面中能够看到眼下最新的版本号和曾经公布过的版本号,这里选择最新版本…
一.说明 1.该系列MongoDB学习笔记的学习环境采用的MongoDB版本为mongodb-win32-i386-2.4.6,操作系统为win7. 二.安装 1.新建两个目录,分别是D:\Installations\MongoDB-2.4.6\MongoDB和D:\Installations\MongoDB-2.4.6\MongoDBDATA(用于存放数据库数据文件). 2.将下载的MongoDB压缩包解压,并拷贝里面的文件至D:\Installations\MongoDB-2.4.6\Mon…
MongoDB学习笔记:文档Crud Shell   文档插入 一.插入语法 db.collection.insertOne() 将单个文档插入到集合中.db.collection.insertMany() 将多个文件插入集合中. 文档删除 一.删除语法 db.collection.deleteOne() 即使多个文档可以匹配指定的过滤器,也最多删除匹配指定过滤器的单个文档.db.collection.deleteMany() 删除匹配指定过滤器的所有文档. 文档查询 一.查询语法 db.col…
MongoDB学习笔记:Python 操作MongoDB   Pymongo 安装 安装pymongopip install pymongoPyMongo是驱动程序,使python程序能够使用Mongodb数据库,使用python编写而成: 数据库相关操作 连接及创建数据库 import pymongo connect = pymongo.MongoClient("mongodb://localhost:27017/") mydb = connect ["test"…
MongoDB学习笔记二 Mongoose Mongoose 简介 之前我们都是通过shell来完成对数据库的各种操作, 在开发中大部分时候我们都需要通过程序来完成对数据库的操作 而Mongoose就是一个让我们可以通过Node来操作MongoDB的模块 Mongoose是一个对象文档模型(ODM)库,它对Node原生的MongoDB模块进行了进一步的优化封装, 并提供了更多的共嗯那个 在大多数情况下, 它被用来把结构化的模式应用到一个MongoDB集合, 并提供了验证和类型转换等好处 Mong…
DuiLib学习笔记(二) 扩展CScrollbar属性 Duilib的滚动条滑块默认最小值为滚动条的高度(HScrollbar)或者宽度(VScrollbar).并且这个值默认为16.当采用系统样式的滚动条,或者 Troy的源码(https://github.com/qdtroy/DuiLib_Ultimate)自带的样式时,是没有问题的,因为这两种样式默认高(宽)度都是16,当滑块最小时,也有16*16,背景图片(九宫格式)不会出拉伸BUG.但是,当自定义背景图片时,如果图片本身大小超过16…
[python学习笔记]9.魔法方法.属性和迭代器 魔法方法:xx, 收尾各有两个下划线的方法 __init__(self): 构造方法,创建对象时候自动执行,可以为其增加参数, 父类构造方法不会被自动调用, 可以通过super函数(super(FatherCall, self).init())或者未绑定构造方法,来调用父类的构造方法.super是有在__metaclass__=type时才可以使用, 有多个父类时,super能保证每个父类的构造方法都被执行 __del__: 析构方法:对象被回…
MongoDB简介 MongoDB在功能和复杂性之间取得了很好的平衡,并且大大简化了原先十分复杂的任务,它具备支撑今天主流web应用的关键功能:索引.复制.分片.丰富的查询语法,特别灵活的数据模型.与此同时还不牺牲速度. MongoDB是一款强大.灵活,且易于扩展的通用型数据库.能扩展出非常多的功能,如二级索引.范围查询.排序.聚合,以及地理空间索引. 设计特点 易于使用 MongoDB是一个面向文档的数据库,比关系型数据库有更好的扩展性.用文档代替行.能够仅使用一条记录来表现发展的层次关系.…
回到目录 Redis学习笔记已经告一段落,Redis仓储也已经实现了,对于key/value结构的redis我更愿意使用它来实现数据集的缓存机制,而对于结构灵活,查询效率高的时候使用redis就有点不太合适了,对于以文档结构(document)实现存储的MongoDB来实现数据集的查询更合适一些,并且MongoDB有自己的负载均衡机制及MapReduce机制,不公可能分但查询的压力,而且还可以进行分布式计算,这个功能应该是最要命的! MongoDB支持的数据结构非常松散,是类似Json的BJso…
1. MongoDB的特点: (1) 易于使用 MongoDB是一个面向文档的数据库,非关系型数据库.通过在文档中嵌入式文档和数据,面向对象的方法能够仅使用一条记录来表现复杂的层次关系.文档的键和值不再是固定的类型和大小. (2) 易于扩展 MongoDB的设计采用横向扩展,即通过分区将数据分散到更多机器上.面向文档的数据模型使它很容易地在多台服务器之间进行数据分割.MongoDB能够自动处理集群的数据和负载,自动重新分配文档,以及将用户请求路由到正确的机器上. (3) 丰富的功能 1) 索引…