针对上面两类系统有多种技术实现方案,存储部分的数据库主要分为两大类:关系型数据库与NoSQL数据库。
关系型数据库,是建立在关系模型基础上的数据库,其借助于集合代数等数学概念和方法来处理数据库中的数据。主流的oracle、DB2、MS SQL Server和mysql都属于这类传统数据库。
16
NoSQL数据库,全称为Not Only SQL,意思就是适用关系型数据库的时候就使用关系型数据库,不适用的时候也没有必要非使用关系型数据库不可,可以考虑使用更加合适的数据存储。主要分为临时性键值存储(memcached、Redis)、永久性键值存储(ROMA、Redis)、面向文档的数据库(MongoDB、CouchDB)、面向列的数据库(Cassandra、HBase),每种NoSQL都有其特有的使用场景及优点。
Oracle,mysql等传统的关系数据库非常成熟并且已大规模商用,为什么还要用NoSQL数据库呢?主要是由于随着互联网发展,数据量越来越大,对性能要求越来越高,传统数据库存在着先天性的缺陷,即单机(单库)性能瓶颈,并且扩展困难。这样既有单机单库瓶颈,却又扩展困难,自然无法满足日益增长的海量数据存储及其性能要求,所以才会出现了各种不同的NoSQL产品,NoSQL根本性的优势在于在云计算时代,简单、易于大规模分布式扩展,并且读写性能非常高。
下面分析下两者的特点,及优缺点: 关系型数据库 NoSQL数据库
特点
-数据关系模型基于关系模型,结构化存储,完整性约束。
-基于二维表及其之间的联系,需要连接、并、交、差、除等数据操作。
-采用结构化的查询语言(SQL)做数据读写。
-操作需要数据的一致性,需要事务甚至是强一致性。
- 非结构化的存储。
- 基于多维关系模型。
- 具有特有的使用场景。
优点
- 保持数据的一致性(事务处理)
- 可以进行join等复杂查询。
- 通用化,技术成熟。
- 高并发,大数据下读写能力较强。
- 基本支持分布式,易于扩展,可伸缩。
- 简单,弱结构化存储。
缺点
- 数据读写必须经过sql解析,大量数据、高并发下读写性能不足。
- 对数据做读写,或修改数据结构时需要加锁,影响并发操作。
- 无法适应非结构化存储。
- 扩展困难。
- 昂贵、复杂。
- join等复杂操作能力较弱。
- 事务支持较弱。
- 通用性差。
- 无完整约束复杂业务场景支持较差。
17
虽然在云计算时代,传统数据库存在着先天性的弊端,但是NoSQL数据库又无法将其替代,NoSQL只能作为传统数据的补充而不能将其替代,所以规避传统数据库的缺点是目前大数据时代必须要解决的问题。如果传统数据易于扩展,可切分,就可以避免单机(单库)的性能缺陷,但是由于目前开源或者商用的传统数据库基本不支持大规模自动扩展,所以就需要借助第三方来做处理,那就是本书要讲的数据切分,下面就来分析一下如何进行数据切分。
分享到:
相关推荐
通过HBase的应用实践,介绍其体系架构,以及传统关系型数据库和NOSQL数据库在应用设计方面需要考虑的问题。以实际应用案例为参考,关系型数据库和NOSQL在同类业务场景下的设计方案对比。
MongoDb是非关系型数据库的一种,它是一种基于分布式的文档型数据库。
关系型数据库与NoSQL数据库_张华强.pdf
关系型数据库与nosql数据库
NoSQL简介 NoSQL兴起的原因 NoSQL与关系数据库的比较 NoSQL的四大类型 NoSQL的三大基石 从NoSQL到NewSQL数据库
基于关系型数据库与NoSQL的海量数据处理,韩特,熊翱,大数据量的读写处理问题是大型数据库应用系统中的关键问题。面对数据类型繁多、数据量巨大的医疗器械数据,传统的关系型数据库具
关系型数据库与NOSQL数据库的应用场景.pptx
第19章 非关系型数据库—NoSQL.docx
Nosql非关系型数据库
nosql no关系型数据库,包括Redis,TC/TT,MongoDB,Cassandra
为弥补关系型数据库的不足,各种各样的NoSQL数据库应运而生。 为了更好地了解本书所介绍的NoSQL数据库,对关系型数据库的理解是必不可少的。那么,就让我们先来看一看关系型数据库的历史、分类和特征吧。 关系型...
NoSQL: 即Not Only SQL 与关系型数据库相对应的,也可理解为 no relational ,即非关系型数据库 。 NoSQL数据库PPT全文共20页,当前为第3页。 二.NoSQL数据库的产生 关系数据库面临挑战 关系数据库面对超大规模和...
A.4实验四:NoSQL和关系数据库的操作比较 本实验对应第6章的内容。 A.4.1实验目的 (1)理解4种数据库(MySQL、HBase,Redis和 MongoDB)的概念及不同点。(2)熟练使用4种数据库操作常用的 Shell命令。 (3)熟悉4种...
redis是一款特殊的数据库软件,它是一款高性能的NOSQL系列的非关系型数据库。Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset...
Nosql非关系型数据库
10NoSQL非关系型数据库
本资料是在线教育课程第一天中使用的mongoDB的安装资料以及使用指南
数据库和传统的关系型数据库差不多的概念,每个数据库含有多个集合,每个数据库最后会作为文件储存至服务器中,另外还有一些特殊的数据库进行了保留 (2)集合(table): 在MongoDB中,数据是以文档的形式存储的,...
这些数据有很大一部分是由关系型数据库管理系统(RDBMSs)来处理,其严谨成熟的数学理论基础使得数据建模和应用程序编程更加简单。但随着信息化的浪潮和互联网的兴起,传统的RDBMS在一些业务上开始出现问题。首先,...
非关系型数据库(NOSQL)的优点 无需经过 SQL 层的解析,读写效率高。 基于键值对,读写性能很高,易于扩展 可以支持多种类型数据的存储,如图片,文档等等。 扩展(可分为内存性数据库以及文档型数据库,比如 ...