关系型数据库与非关系型数据库区别
关系型数据库(Mysql和Oracle)
1.表和表、表和字段、数据和数据存在着关系
优点:
1.数据之间有关系,进行数据的增删改查的时候是非常方便的
2.关系型数据库是有事务操作的,保证数据的完整性和一致性。
缺点:
1.因为数据和数据是有关系的,底层是运行了大量的算法,大量算法会降低系统的效率,会降低性能
2.面对海量数据的增删改查的时候会显的无能为力
常见应用:
适合处理一般量级的数据(银行转账和钱)
非关系数据库的(redis和MangDB)
为了处理海量数据,非关系数据库设计之初就是为了替代关系型数据库的关系
优点:
1.海量数据的增删改查是可以的
2.海量数据的维护和处理非常轻松
缺点:
1.数据和数据没有关系,他们之间就是单独存在的
2.非关系数据库没有关系,没有强大的事务关系,没有保证数据的完整性和安全性
关于Nosql
1.Nosql
非关系型数据库,Not only sql。
2.Nosql特点:
(1)易扩展,数据之间没有关系的。
(2)大数据量,高性能。高性能读写非常灵活的。
(3)灵活的数据模型。不需要事先对存储数据建立字段。
(4)高可用。
3.Nosql主要主流产品
Redis(广泛应用),CouchDB,mongoDB,Cassandra等。Nosql中比较火的三个数据库Redis、Memchache、MongoDb。
4.Nosql数据库四大分类:
(1)键值对存储(key-value):Redis键值对存储,优势:快速查询,缺点:存储数据缺少结构化。
(2)列存储:Hbase,优势:快速查询,扩展性强。缺点:功能相对于局限。
(3)文档数据库存储:MongoDB,早起应用多。优势:要求不特别的严格。缺点:查询性不高,缺少统一查询语法。
(4)图形数据库存储:应用于社交网络,优势:利用图结构相关算法。缺点:需要整个图计算才得出结果,不容易做分布式集群方案。