nosql

来源:互联网 发布:淘宝助理下载不了订单 编辑:程序博客网 时间:2024/05/17 16:01

Sqlnosql的迁移;

Nosqlgoogle bigtable为代表;另:HbaseCassandraMongoDB

选用MongoDB(文档型数据库)

其次的HBase(google bigtable为基础的开源产品)

Cassandra(facebook开发,弃用);

MongoDB核心贡献者:不是MongoDB不行,而是你不懂!

http://www.csdn.net/article/2012-11-15/2811920-mongodb-quan-gong-lue

http://www.cnblogs.com/huangxincheng/category/355399.html

···

MongoDB整合Spring 详细讲解(含代码)

http://blog.csdn.net/cuiran/article/details/8287204

使用

什么情况下最佳的使用nosql

mongodb  mysql

模糊查询: mongodb为优;

--------------------------------------------------------

官网下载

安装

解压缩,简化下文件夹名(mongodb)

Mongodb中创建一个文件夹(db),用来存放mongodb的数据

Cmd操作

数据库的增删改查;高级操作;

···

1),指定数据库保存地址;

微软徽标+R,输入cmd,首先找到“mongodb”的路径,然后运行mongod开启命令,同时用--dbpath指定数据存放地点为“db”文件夹

cmd---d:,更换盘符---cd javaSoft\mongodb\bin--mongod --dbpath D:\javaSoft\mongodb\db

浏览器:

http://localhost:27017/

提示,添加1000端口数字;

http://localhost:28017/

2),连接到默认test数据库;

d: --- cd javaSoft\mongodb\bin --- mongo   

错误:不能连接到“couldn't connect to server 127.0.0.1:27017”;

~将上面的cmd(指定数据库保存地址)保持开启;重新开启一个cmd运行;

------------------------------------------------------------

Crud

http://docs.mongodb.org/manual/crud/

文档左侧的CRUD;

Insert:

db.bios.insert(

   {......

Find:

db.bios.find() //全部查询;

db.bios.find( { name: { first: 'John', last: 'McCarthy' } } )  //条件查询;

Save:不需要写id

db.bios.save(

   {

Update:没有文件匹配于修改参数,则新加记录;

db.bios.update(

   { name: { first: 'Dennis', last: 'Ritchie'} },

   {...

},

   { upsert: true }

Deletein

db.bios.remove()

Findin

db.bios.find(

   {

      _id: { $in: [ 13 ] }

   }

)

记录数

db.bios.count()

-----------------------------------------------------

查询

索引使用;

添加10w记录:

for(var i =0;i<100000;i++){var rand=parseInt(i*Math.random());db.person.insert({name:hxc+i,age:i})}

~上面的紫色需要手写,否则容易出错;

查询:

db.person.find({name:hxc+10000}).explain()  //紫色需要手写,否则出错;

建立索引:

db.person.ensureIndex(“name”:1)  //1升序;-1降序;

查看索引:

db.person.gexIndexes()

模糊查询:---

db.person.find({name:/hxc+10000/}).explain() //全模糊;

db.person.find({name:/^hxc+10000/}).explain() //右模糊;

···

cursor: 光标,索引方式,BtreeCursor,name_1--索引名;

nscanned: 搜索记录行数。

n:返回数据行数。

millis:用时。

···

db.person.find({age:20000}).explain() 

其它语句

db.person.find()

db.person.remove()

db.person.count()

-----------------------------------------------------------

集群:主从数据库

-----------------------------------------------------------

集群:数据库分片

-----------------------------------------------------------

运维:安装部署;状态监控;安全认证;备份和恢复

-----------------------------------------------------------

///////////////////////////////////////////////////////////////////////////////////////////////////////

Ssh中使用


原创粉丝点击