首先是启动 mongdb的service ,不启用的话,使用mong shell 连接的现象是:



启动服务端,指定默认的存储的位置即可:

mongod  -- dbpath  F:/store  #数据库默认的存储的位置

在启动一个“黑框框”, 当为客户端来连接启动的这个server

连接到mong server ,并且在service的黑框框中会显示,客户端的连接



下面就是mongo shell 对数据库的操作了

     


表示同一张表中,存储的数据并不是结构化的数据,能够带来很多的好处,但是也可能带来一定的混乱,所以针对
这个,mongdb的数据有一定 的设计的规范,后面可定会有涉及。

在说一下上面的命令,我们的使用命令  db.notify.insert({........});

When you insert the first document, the mongdb will
create both the notify  database and the notify collection
(这里 数据库的名称 和 collection 的名称是一样的)
这里面的collection相当于 sql数据中的表,collection中包含的就是Document,下面是对document的说明:

MongoDB stores data in the form of documents, which are JSON-like
field and value pairs. Documents are analogous to structures in
programming languages that associate keys with values (e.g.
dictionaries, hashes, maps, and associative arrays). Formally, MongoDB
documents are BSON documents. BSON is a binary representation
of JSON with additional type information. In the documents, the
value of a field can be any of the BSON data types, including other
documents, arrays, and arrays of documents.

collection 和 Document 的关系如图所示:MongoDB stores all documents in collections. A
collection is a group of related documents that have a set of shared
common indexes. Collections are analogous to a table in relational
databases.



mongo 的查找: 也就是选择document 从单一的collection里面,就是从一张表中选择记录,符合SQL的思路。



查找的过程 与SQL查找的对应的关系:


find 操作的说明:
  • All queries in MongoDB address a single collection.
  • You can modify the query to impose limits,
    skips, and sort orders.
  • The order of documents returned by a query is not defined unless you
    specify a sort().
  • Operations that modify existing documents (i.e. updates) use the same query
    syntax as queries to select documents to update.
  • In aggregation pipeline, the
    $match pipeline stage provides access to MongoDB
    queries.


  • 索引:提高查找的速度
    db.inventory.find( { type: typeValue } );
    针对Collection inventory 的字段 type 建立索引。
    db.inventory.ensureIndex( { type: 1 } )
    建立索引的语句是:db.collection.ensureIndex(keys, options)
    在这里我们可以通过:db.collection.find({。。。条件。。。}).explain();
    来看到输出的结果,分析读取的效率



    只是简单的描述,感觉和Mysql的explain()比较的像。


    聚合:(aggregation) : In addition to the basic queries, MongoDB provides several data
    aggregation features
    . For example, MongoDB can return counts of the
    number of documents that match a query, or return the number of
    distinct values for a field, or process a collection of documents using
    a versatile stage-based data processing pipeline or map-reduce
    operations.































    mongDB 的使用的更多相关文章

    1. solr+mongo-connector+mongdb+tomcat集成

      话题:solr安装 一.下载solr 本例采用4.10.3版本. Solr所有版本下载地址:http://archive.apache.org/dist/lucene/solr/ 下载完成后,解压的目 ...

    2. [MongDB] 主从架构--官方极力不推荐

      一.缘由: 看着数据库大家庭都有主从模式,想着Mongodb应该也不会落下.但从官网看来,先是早先舍弃了Master-Master模式,现在又在不推荐 Master-Slave模式,这是要标新立异呀. ...

    3. MongDB/C# 杂项

      1.MongDB的时间类型字段输出时为UTC的解决方法:保存到数据库中的数据还是按UTC存的,读出来的就按标识值读 [BsonDateTimeOptions(Kind = DateTimeKind.L ...

    4. HBase与MongDB等NoSQL数据库对照

      HBase概念学习(十)HBase与MongDB等NoSQL数据库对照 转载请注明出处: jiq•钦's technical Blog - 季义钦 一.开篇 淘宝之前使用的存储层架构一直是MySQL数 ...

    5. go语言mongdb管道使用

      原始json: { "listsn": "", "code": "fwq_add", "detail" ...

    6. HBase概念学习(十)HBase与MongDB等NoSQL数据库对照

      转载请注明出处: jiq•钦's technical Blog - 季义钦 一.开篇 淘宝之前使用的存储层架构一直是MySQL数据库,配合以MongDB,Tair等存储. MySQL因为开源,而且生态 ...

    7. mongdb创建自增主键(primary key)的相关讨论 - Jason.Zhi

      根据mongodb官方文档介绍,如果在插入(insert)操作时,没有指定主键id,那么它会自动给插入行自动附上一个主键id.看起来不错,但是详细看看,就会发现这个id值有点复杂. 如下图: mong ...

    8. mongdb Java demo

      接触MONGDB,感觉用起来还挺好.今天做了一个小demo. 一.启动mongdb的服务

    9. springMVC+ mongdb + redis +Jedis 环境搭建

      环境信息: JDK1.7 : Eclipse 4.4.1 ; mongdb + mongVUE:mongDB的安装 redis的下载和安装:window下安装redis maven3.0.5 新建ma ...

    随机推荐

    1. Java基础知识强化之IO流笔记11:递归之递归概述和注意事项

      1. 递归: 方法定义中调用方法本身的现象. e.g: public void show(int n ) { if(n <= 0) { System.exit(0); } System.out. ...

    2. linux命令行计算器 <转>

      转自 http://blog.chinaunix.net/uid-26959241-id-3207711.html 详细文档请 man bc 在windows下,大家都知道直接运行calc,(c:\w ...

    3. 最小圆覆盖 hdu 3007

      今天学习了一下最小圆覆盖, 看了一下午都没看懂, 晚上慢慢的摸索这代码,接合着别人的讲解, 画着图跟着代码一步一步的走着,竟然有些理解了. 最小圆覆盖: 给定n个点, 求出半径最小的圆可以把这些点全部 ...

    4. Python开发【第十篇】:CSS (二)

      Python开发[前端]:CSS Kylin Zhang 发表于 2016-11-10 13:13:57 css样式选择器 标签上设置style属性: <body> <div sty ...

    5. 转载:C# 之泛型详解

      本文原地址:http://www.blogjava.net/Jack2007/archive/2008/05/05/198566.html.感谢博主分享! 什么是泛型 我们在编写程序时,经常遇到两个模 ...

    6. Java 8 Lambda表达式10个示例【存】

      PS:不能完全参考文章的代码,请参考这个文件http://files.cnblogs.com/files/AIThink/Test01.zip 在Java 8之前,如果想将行为传入函数,仅有的选择就是 ...

    7. .NET获取机器信息

      /// <summary> /// using System.Web; /// using System.Management; /// </summary> public s ...

    8. (转)php5中类的学习

      类的结构: 类的内部能可能有三种东西,就是常量(constant),属性(property)和方法(method),功能可以理解成类外部的常量,变量和函数.     复制代码代码如下: <?ph ...

    9. Swift - 20 - 字典的基础操作

      //: Playground - noun: a place where people can play import UIKit var dict = [1:"one", 2:& ...

    10. web初识-tomcat的基本使用

      Web入门 1.  软件结构: C/S :       有客户端, 维护较麻烦, 需要客户端和服务器端都更新. B/S :       优点 : 客户端就是浏览器, 更新方便, 只需要更新服务器端即可 ...