《MongoDB 权威指南》 学习总结
全书翻过+看过博文(http://www.cnblogs.com/huangxincheng/category/355399.html)+自己动手安装过mongoDB写过demo代码(Windows,c#)
总结如下:
- 语言不错,看着很舒服。像是自然语言、javascript、json的感觉 >db.food.find({"Age":27}),find,insert,update等不错
- 文档(记录,行)=》集合(表)=》数据库
- 总体来说非常容易拓展,不需要向关系型数据库(sqlserver)一样提前定义好表结构(各种列名、类型),可以直接插入Person {No,Name,Sex....}。
- 还可以直接写入复杂类型Person.Adress{Provice,City,Street,Detail....},这样就不必像之前关系型数据库一样纠结于多表外键连接,特麻烦。MongoDB这点,我很是喜欢。这点也保证了联查速度非常快,而且简单。
- 使用程序语言操纵MongoDB时需要根据语言安装对应的驱动。如果使用c#语言,那使用驱动(https://github.com/mongodb/mongo-csharp-driver/downloads)后就很简单,类似Linq,EF的感觉,不必纠结于CRUD的具体语句,只要GetCollection<T>,Update即可。当然这只是我的第一编码印象,也许细节上还是蛮复杂的。
- 分片,用于均衡数据,减少每台机器上的数据、以此减少访问量,用多机器来有效扩展、而不必购买大机器
- 主备复制用于保证数据的多备份、冗余防止意外发生,不过还是需要手动切换主备更改。副本集,用于自动化的容灾集群,有仲裁机器、副本、活跃、心跳判断等机制,自动的保证一个集群中必有一个可用。 这两者都不需程序控制,对程序透明、黑盒,无需关心。这样对程序员-DBA有好处
- 索引。类似关系型数据库
- 聚合函数 count,group。类似关系型数据库
- 文档的物理存储实体是Binary Json(BJSON)类型,轻量化的类似json文本,能将所有文档表示为字符串。
- 基本数据类型:数字、字符串、日期、数组、内嵌文档(子文档,上述提到的功能点4)
总体上MongoDB已经不是关系型数据库,在大数据处理、复杂数据处理、均衡分摊处理上很有优势。
官网 http://www.mongodb.org/downloads
学完了才发现,技术虽然在发展,但是基本概念、思想思路还是类似的。了解关系型DB、Javascript、Json 后再看 MongoDB,明显轻松、易于理解,技术的发展既有一脉相承、又有变化、解决旧有的矛盾提出新的方案。
《MongoDB 权威指南》 学习总结的更多相关文章
- mongoDB权威指南学习笔记
//mongoDB第1-3章节添加,修改,修改器的笔记: //备注:和MySQL查询一样,时刻想着优化查询数据的时间和性能 //db.help() //数据库帮助信息 //db.blog.help() ...
- Hadoop权威指南学习笔记二
MapReduce简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考,有什么不到之处还望指出,一起学习一起进步. 转载请注明:http://blog.csdn.n ...
- 《JS权威指南学习总结》
JS权威指南学习总结:http://www.cnblogs.com/ahthw/category/652668.html
- 《JS权威指南学习总结--开始简介》
本书共分成了四大部分: 1.JS语言核心 2.客户端JS 3.JS核心参考 4.客户端JS核心参考 其中 <JS权威指南学习总结--1.1语法核心> 是:第一部分JS语言核心 各章节重点 ...
- Hadoop权威指南学习笔记一
Hadoop简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考,有什么不到之处还望指出.一起学习一起进步. 转载请注明:http://blog.csdn.net/ ...
- Hadoop权威指南学习笔记三
HDFS简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考.有什么不到之处还望指出,一起学习一起进步. 转载请注明:http://blog.csdn.net/my ...
- HTTP权威指南-学习笔记
目录 HTTP权威指南-学习笔记 HTTP: Web的基础 URL与资源 HTTP报文 连接管理 HTTP结构 Web服务器 代理 缓存 集成点: 网关,隧道及中继 Web机器人 识别,认证与安全 客 ...
- JavaScript 权威指南-学习笔记(一)
本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! ## JavaScript 权威指南-学 ...
- CSS权威指南学习笔记系列(1)CSS和文档
题外话:HTML是一种结构化语言,而CSS是它的补充:这是一种样式语言.CSS是前端三板斧之一,因此学习CSS很重要.而我还是菜鸟,所以需要加强学习CSS.这个是我学习CSS权威指南的笔记,如有不对, ...
- Node.js权威指南学习记录
学习nodeJS权威指南的学习记录 导航: 1.console模块 2.全局变量 3.Buffer对象 4.事件对象 5.网络请求 6.文件操作对象 一. COMMON.js的学习.(commonJS ...
随机推荐
- aapt命令介绍及常用命令实践
D:\>aapt -h ERROR: Unknown command '-h' Android Asset Packaging Tool Usage: aapt l[ist] [-v] [-a] ...
- ural 2065. Different Sums
2065. Different Sums Time limit: 1.0 secondMemory limit: 64 MB Alex is a very serious mathematician ...
- SolrCloud zookeeper节点信息
shard 节点列表 get /collections/appstore/leaders/shard1 { "core":"appstore", "n ...
- 使用spring rest插入数据库时发生了 前言中不允许有内容 错误
该错误一般是编码带来的问题,比如在请求post的时候,使用了application/x-www-form-urlencoded的content type 那么请求传过来的string则需要用urlDe ...
- Leetcode Unique Paths
A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). The ...
- ACM 另一种阶乘问题
另一种阶乘问题 时间限制:3000 ms | 内存限制:65535 KB 难度:1 描述 大家都知道阶乘这个概念,举个简单的例子:5!=1*2*3*4*5.现在我们引入一种新的阶乘概念,将原来 ...
- 51Nod 1256 乘法逆元 Label:exgcd
1256 乘法逆元 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出2个数M和N(M < N),且M与N互质,找出一个数K满足0 < K < N且K ...
- 带有hover效果的text-overflow
代码:<!DOCTYPE html> <html> <head> <style> div.test { white-space:nowrap; widt ...
- MongoDB的数据库基本操作(二)
创建数据库 >use mydb switched to db mydb 查看所有的数据表 >show collections system.indexes 创建数据表 >db.c ...
- Struts2整理+课堂代码+注意事项
1.在Struts配置文件的<package 中的 namespace默认是namesopace="/". 当生成namespace=“abc/”(abc是自己定义的,类 ...
书目