针对上面两类系统有多种技术实现方案,存储部分的数据库主要分为两大类:关系型数据库与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只能作为传统数据的补充而不能将其替代,所以规避传统数据库的缺点是目前大数据时代必须要解决的问题。如果传统数据易于扩展,可切分,就可以避免单机(单库)的性能缺陷,但是由于目前开源或者商用的传统数据库基本不支持大规模自动扩展,所以就需要借助第三方来做处理,那就是本书要讲的数据切分,下面就来分析一下如何进行数据切分。
分享到:
相关推荐
关系型数据库适合需要复杂事务和强一致性的场景,而NOSQL数据库如HBase则适合大数据量、高并发访问、灵活的数据模型和可接受最终一致性的场景。在实际应用时,应根据业务需求和数据特性,选择最合适的数据库技术。
关系型数据库与NoSQL数据库 关系型数据库是支持关系模型的数据库系统,是目前各类数据库中最重要,也是使用最广泛的数据库系统。关系型数据库从诞生到现在经过几十年的发展,已经变的比较成熟,目前市场上主流的...
NoSQL数据库摒弃了传统关系型数据库的设计理念,如固定的表结构和复杂的事务处理机制,转而采取更为灵活的数据模型和支持水平扩展的技术方案。 #### NoSQL兴起的原因 NoSQL的兴起主要归因于传统关系型数据库无法...
关系型数据库与NOSQL数据库的应用场景 关系型数据库和NOSQL数据库是现代数据库系统的两大类型,它们各有优劣,在不同应用场景下有着不同的适用性。理解关系型数据库和NOSQL数据库的特点、优劣和应用场景,可以帮助...
MongoDb是非关系型数据库的一种,它是一种基于分布式的文档型数据库。
例如,企业可能使用关系型数据库来存储核心的业务数据,确保数据的一致性和完整性,同时利用NoSQL数据库处理高并发的用户交互数据和海量的非结构化数据。这样,既可以充分利用关系型数据库的强一致性特性,又能享受...
总的来说,NoSQL数据库和关系型数据库各有其适用的场景。在选择数据库类型时,应根据具体业务需求,如数据类型、数据规模、性能要求、扩展性需求以及数据一致性要求等进行权衡。NoSQL数据库在大数据、互联网应用和...
在高并发场景下,数据库和NoSQL如何做到互补是一个关键问题。...总的来说,理解NoSQL数据库的特性及其与关系型数据库的互补关系,有助于在实际项目中做出最佳的数据存储决策,优化系统性能,以应对不断增长的业务需求。
NoSQL,全称为“Not Only SQL”,是一种非关系型数据库技术,主要针对大规模数据分布式存储、高并发读写、实时性需求以及对海量数据高效存储和访问的需求。NoSQL数据库的特点在于它们通常不遵循传统的ACID(原子性、...
非关系型数据库-NoSQL 非关系型数据库(NoSQL)是指不使用传统的表格关系来存储数据的数据库系统。NoSQL 数据库的出现是为了弥补关系型数据库的不足之处,如大量数据的写入处理、对有数据更新的表做索引或表结构...
非关系型数据库(NoSQL,Not Only SQL)是近年来在大数据处理、分布式系统等领域广泛应用的一种数据库类型,它与传统的关系型数据库(RDBMS)相比,具有更高的可扩展性、灵活性和性能。本实验报告主要关注两个知名的...
NoSQL: 即Not Only SQL 与关系型数据库相对应的,也可理解为 no relational ,即非关系型数据库 。 NoSQL数据库PPT全文共20页,当前为第3页。 二.NoSQL数据库的产生 关系数据库面临挑战 关系数据库面对超大规模和...
DataCap 是数据转换、集成和...支持多种数据源,文件类型,大数据相关数据库,关系型数据库,NoSQL 数据库等。通过软件可以实现管理多种数据源,对该源下的数据进行各种操作转换,制作数据图表,监控数据源等各种功能。
非关系型数据库(NoSQL)是一种不同于传统的关系型数据库的数据存储模型。在信息化时代,随着大数据、云计算和互联网应用的快速发展,NoSQL数据库因其高可扩展性、高性能、灵活的数据模型等特点,逐渐受到广泛的关注...
1. **MySQL**:作为经典的关系型数据库管理系统(RDBMS),MySQL基于ACID(原子性、一致性、隔离性和持久性)原则,提供结构化数据存储,支持复杂的事务处理。在实验中,我们创建了一个名为`Student`的表,包含了`...
本文主要探讨了两种主要的数据库类型:关系型数据库(Relational Database Management System,简称RDBMS)和非关系型数据库(NoSQL Database),并分析了它们的基本概念、主流产品、优缺点以及适用场景。...
总结来说,关系型数据库和非关系型数据库各有优缺点,应根据具体业务需求选择合适的数据库类型。在面临大数据挑战时,非关系型数据库如MongoDB提供了一种有效应对高并发和海量数据的解决方案,而关系型数据库仍然是...