非关系数据库nosql
用来解决特定问题的数据库
特点:
1.没有关系模式schema-free/non-relational,与关系数据库不同
2.快速处理rapid process,数据放在内存中处理
3.distributed process分布式
4.big data
5.easy program
6.open-source
7.水平式(横向拓展性)horizontally scalable
类型
1.Document store文档数据库,以xml与json的形式存储,例子:视频网站,blog
2.key value/tuple store以个数,键值对的形式存储,处理速度快
3.
4.Graph Database Management System
5.Multimodel Database Management System
键值数据库Key Value Store
特点:简单,速度快,在内存中
键值要成对,形成映射关系
命名空间namespace:java的包(package)
内存中的in-memory:利用了缓存技术,把常用的数据放在内存中
redis is an open-source in memory storage, used as a distributed, in-memory key-value database
优势:轻量级lightweight,快速rapid,分布式系统distributed system
劣势:查询能力弱weakly retrieve ability,缺少数据之间的约束lack of data constraints,难解决数据之间的关系hardly handle data relationship
原则(扬长避短)
1.编程,
文档数据库document store
A document - oriented database , or document store , is a computer program and data storage system designed for storing , retrieving and managing document - oriented information , also known as semi - structured data .
半结构化的数据库
优势:无需事先定义结构Simple(schema—free),相对关系数据库高效Relatively eficient,文档格式Standard document format,查询能力强Powerful retrieve ability(semi-structured),分布式Distributed system
劣势:没有数据约束Lack of data constraints,数据会出现冗余Data redundancy,相对键值对数据库低效Relatively ineficient
列族数据库Column families store
A column families database(or wide—column store) is a column-oriented DBMS and therefore a special type of NosQL database. It uses tables, rows, and columns,but unlike a relational database, the names and format of the columns can vary from row to row in the same table
优势:为大数据准备suitable for big data processing,易于增加新的列easy to add new columns,开发工具多tons of development tool,检索能力强powerful retrieve ability,数据读写快High-speed data I/O
劣势:系统复杂complex system,数据结构复杂complex data structure,难学难用hard to learn/use