什么是MongoDB
MongoDB是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。
在高负载的情况下,添加更多的节点,可以保证服务器性能。
旨在为WEB应用提供可扩展的高性能数据存储解决方案。
将数据存储为一个文档,数据结构由健值对组成。MongoDB类似于JSON对象。字段值可以包含其他文档,数组及文档数组。
MongoDB的特点
是一个面向文档存储的数据库,操作起来比较简单容易
可以设置任何属性的索引来实现更快的排序
可以通过本地或者网络创建数据镜像,这使MongoDB有更强的扩展性
如果负载的增加(需要更多的存储空间和更强的处理能力),它可以分布在计算机网络中的其他节点上,这就是分片
支持丰富的查询表达式
使用update()命令可以实现替换完成的文档或者一些指定的数据字段
Map/reduce主要用来对数据进行批量处理和聚合操作
允许在服务端执行脚本,可以用js编写函数,直接在服务端执行
支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP等多种语言
安装简单
MongoDB的应用场景
Craiglist,FourSquare,Shutterfly,bit.ly,spike.com,Intuit
MongoDB的常用命令
连接MongoDB:
#使用默认端口连接:
mongodb://localhost
#通过shell连接:
mongo
MongoDB shell version:3.0.6
connercting to:test
#使用用户名和密码连接:
mongodb://admin:123456@localhost/test
创建数据库:
use database_name
删除数据库:
use database_name
db.dropDatabase()
创建集合:
db.createCollection(name,options)
删除集合:
db.collection.drop()
插入文档:
db.COLLECTION_NAME.insert(document)
更新文档
db.collection.update()
删除文档
db.collection.remove()
查询文档
db.collection.find()
MongoDB条件操作符
条件操作符用于比较两个表达式并从mongoDB集合中获取数据
大于:gt
小于等于:lte