非关系型数据库:NoSQL
传统的关系型数据库在处理新型网站,特别是超大规模和高并发类型的纯动态网站存在了一些问题
NoSQL数据库的产生为了解决大规模数据集合多重数据种类(高并发、动态)带来的挑战,特别是大数据应用难题
NOSQL主要分成四类:
具有键和值,主要用到哈希表,表中有一共特定的键和指针指向特定的数据。缺点:数据库管理员(DBA)只对部分值进行查询或更新的时候(key-value)显的效率低下
例如:Tokyo cabinet/tyrant ,redis, voldemort ,oracle bdb
处理分布式存储的海量数据。键仍然存在,她的特点是指向多个列,这些列由列家族安排
例如:cassandra ,hbase ,risk
灵感来源于:lotus notes办公软件,与键值存储数据库类似。这数据库的数据模型是版本化的文档,半结构化的文档以特定的格式存储,比如JSON,
文档型数据库可以看做是键值存储数据库的升级版本,允许之间嵌套键值,在处理网页等复杂数据时候,文档型数据库比传统键值数据库的查询效率更高
例如:couchdb.mongodb,sequoiadb
是灵活的图形模型,并可以扩展到多个服务器上
NoSQL数据库没有标准的查询语言(SQL),因此进行数据库查询的时候需要制定数据模型
许多NoSQL数据库都有REST式的数据接口或查询API“
例如:Neo4J,InfoGrid,Infinite Graph
NoSQL特点:易扩展、大数据量高性能、灵活的数据模型、高可用
NoSQL框架体系:下->上:数据持久层、整体分布层、数据逻辑模型层、接口层
NoSQL适用场景;