你印象中似知非知的NOSQL数据库
/**************************************************************/
NoSQl产生原因: NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。 /**************************************************************/ NoSQL是什么? NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,是一项全新的数据库革命性运动,早期就有人提出。NoSQL的拥护者们提倡运用非关系型的数据存储,相对于铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入。 /**************************************************************/ NoSql的适用场景 NoSQL数据库在以下的这几种情况下比较适用:
/**************************************************************/ NoSQL的优点: 1.易扩展 NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。也无形之间,在架构的层面上带来了可扩展的能力。2.大数据量,高性能 NoSQL数据库都具有非常高的读写性能,尤其在大数据量下,同样表现优秀。这得益于它的无关系性,数据库的结构简单。一般MySQL使用Query Cache,每次表的更新Cache就失效,是一种大粒度的Cache,在针对web2.0的交互频繁的应用,Cache性能不高。而NoSQL的Cache是记录级的,是一种细粒度的Cache,所以NoSQL在这个层面上来说就要性能高很多了。3.灵活的数据类型 NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是一个噩梦。这点在大数据量的web2.0时代尤其明显。4.高可用 NoSQL在不太影响性能的情况,就可以方便的实现高可用的架构。比如Cassandra,HBase模型,通过复制模型也能实现高可用。 /**************************************************************/ NoSql的缺点: 1. 不提供对SQL的支持:如果不支持SQL这样的工业标准,将会对用户产生一定的学习和应用迁移成本; /**************************************************************/ NoSql的分类: 1.key-value存储 代表:Berkeley DB、Hibari、Leveldb、memcachedb、Redis、Tair、DynamoDB 2.列式存储 代表:Hbase、Cassandra、Hypertable、GBase、Tera 3.文档存储 代表:MongoDB、CouchDB、Couchbase、EJDB、MarkLogic、SequoiaDB、SimpleDB 4.图存储 代表:Cayley、Neo4j 5.对象存储 代表:db4o、Versant 6.xml数据库 代表:BaseX、sedna 当前多数将nosql分为前四类
Nosql产品:
/**************************************************************/ NOSQL的总结暂时先写到这里,对每个nosql的数据库的简短描述和比较将在后续上传(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |