NoSQL数据库简介与产生
关系型数据库所存在“问题”
>利用ACID原则(原子性,一致性,隔离性,持久性)保证数据完整性;
>行列的规范化存储;
>预定义结构;
>存储数据量“小”;
>结构化查询;
NoSQL数据库
>NoSQL(NoSQL = Not Only SQL),即 “不仅仅是SQL”。
>NoSQL特点:
>采用数据集存储;
>动态结构定义;
>存储精简;
>可扩展性强;
>适合云计算;
NoSQL数据库分类
>键值(Key-Value)存储数据库:采用Hash表结构存储(简单,易部署)
>Tokyo Cabinet/Tyrant,Redis,Voldemort,OracleBDB,MemcacheDB。
>列存储数据库:应对分布式存储的海量数据,采用列族的形式保存数据。
>Cassandra,Hbase,Riak;
>文档型数据库:灵感是来自于lotus Notes,采用类似JSON的形式存储。
>CouchDB,MongoDB,SequoiaDB;
>图形(Graph)数据库:Neo4J,FlockDB;
>对象存储:通过类似面对对象语言的语法操作数据库。
>db4o,Versant
>xml数据库:高效的存储XML数据,并支持XML的内部查询语法,比如XQuery,Xpath。
>Berkely DB XML,BaseX;
NoSQL数据库和SQL数据库是结合使用的,并不存在双方谁被取代的概念,NoSQL数据库灵活应用于不同场景。