修改了一些语句

This commit is contained in:
astaxie
2012-09-17 09:40:56 +08:00
parent db3b69e00f
commit f72789e588

10
5.6.md
View File

@@ -1,12 +1,12 @@
#5.6NOSQL数据库操作
NoSQL(Not Only SQL),指的是非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。
NoSQL(Not Only SQL),指的是非关系型的数据库。随着Web2.0的兴起,传统的关系数据库在应付Web2.0网站特别是超大规模和高并发的SNS类型的Web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。
而Go语言作为21世纪的C语言对NOSQL的支持也是很好目前流行的NOSQL主要有redis、mongoDB、Cassandra和Membase等。这些数据库都有高性能、高并发读写等特点目前已经广泛应用于各种应用中。我接下来主要讲解一下redis和mongoDB的操作。
##redis
redis是一个key-value存储系统。和Memcached类似它支持存储的value类型相对更多包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。
目前应用redis最广泛的应该是新浪微博平台其次还有目前互联网很热门的被Facebook收购的instagram。其他还有好多有名的[互联网企业](http://redis.io/topics/whos-using-redis)
目前应用redis最广泛的应该是新浪微博平台其次还有Facebook收购的图片社交网站instagram。以及其他一些有名的[互联网企业](http://redis.io/topics/whos-using-redis)
Go目前支持redis的驱动有如下
- https://github.com/alphazero/Go-Redis
@@ -18,7 +18,7 @@ Go目前支持redis的驱动有如下
https://github.com/astaxie/goredis
接下来的例子中我以我自己fork的这个redis驱动来演示如何进行数据的操作
接下来的以我自己fork的这个redis驱动为例来演示如何进行数据的操作
package main
@@ -54,7 +54,7 @@ https://github.com/astaxie/goredis
##mongoDB
Mongo是一个高性能开源无模式的文档型数据库是一个介于关系数据库和非关系数据库之间的产品是非关系数据库当中功能最丰富最像关系数据库的。他支持的数据结构非常松散是类似json的bjson格式因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大其语法有点类似于面向对象的查询语言几乎可以实现类似关系数据库单表查询的绝大部分功能而且还支持对数据建立索引。
MongoDB是一个高性能,开源,无模式的文档型数据库,是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,采用的是类似json的bjson格式来存储数据因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大其语法有点类似于面向对象的查询语言几乎可以实现类似关系数据库单表查询的绝大部分功能而且还支持对数据建立索引。
下图展示了mysql和mongoDB之间的对应关系我们可以看出来非常的方便但是mongoDB的性能非常好。
@@ -62,7 +62,7 @@ Mongo是一个高性能开源无模式的文档型数据库是一个介
目前Go支持mongoDB最好的驱动就是[mgo](http://labix.org/mgo)这个驱动目前最有可能成为官方的pkg。
下面我演示如果通过Go来操作mongoDB
下面我演示如果通过Go来操作mongoDB
package main