简述关系型数据库和非关系型数据库的区别

首先用一个通俗易懂的比喻来形容它们的区别:关系型数据库就类似于Excel,非关系型数据库类似于word,用哪一个,取决你想要编辑和处理什么数据。

关系型数据库:将数据存储在表中的数据库,以二维表为数据结构。表和字段类型之间的关系需要明确定义,以SQL语句为操作指令,也称为SQL数据库。

常见的关系型数据库:

SQLServer:微软公司开发的关系型数据库管理系统。

[1]

优点:不开源,它们针对不同的用户提供了具有不同特性的多个版本。拥有丰富的用户界面,可以处理大量数据。

缺点:传统数据库操作频繁容易中断,数据量大负载也大。

MySQL:1995年发布。

[2]

优点:开源,拥有很多文档和在线支持。

缺点:规模不大,数据量过操作过于频繁时容易中断。

PostgreSQL:1996年发布。

[3]

优点:开源,基于对象-关系模型的数据库,它不只是关系型数据库,用户可以自己拓展功能。

缺点:拓展功能的操作比较复杂,新手不易上手,不如直接使用非关系型数据库。内含文档不如MySQL多。

非关系型数据库不像关系数据库那样使用行和列的表格模式的数据库。相反,它的存储模型是针对它所存储的数据类型进行优化的。不只有使用SQL语句作为操作指令,可以使用其他类型的查询语言,也被称为NoSQL(Not only SQL)数据库, 不需要预先定义关键数据的模式,比SQL数据库更加灵活。

NoSQL数据库的常见类型:

  1. 面向文档的数据库(Document-oriented databases ):用于存储、管理、检索文档的信息。可以在海量的数据库中快速查询数据。例如MongoDB、CouchDB
  2. 键值存储数据库(Key-Value Stores): 这是一个使用不同键的数据库,其中每个键只与集合中的一个值相关联。把它当作一本字典。NoSQL最简单的数据库类型之一,例如Redis、Tokyo Cabint。
  3. 分布式数据库(Wide-Column Stores): 使用表、行和列,但与关系数据库不同,列的名称和格式在同一表中的行与行之间可能不同,弥补了SQL数据库拓展性的缺陷。
  4. 图储存数据库(Graph Stores): 使用图结构进行具有节点、边和属性的语义查询,以表示和存储数据。

常见的非关系型数据库:

MongoDB:是一个文档存储数据库,也是目前使用中最流行的NoSQL数据库引擎。

[4]

优点:它使用类似json的文档来存储数据,并支持在多个服务器上运行。MongoDB允许自动分片,这是一种数据库分区,可以将非常大的数据库分割成更小、更快、更容易管理的部分,称为数据分片。容易设置和上手,专业支持也多。

缺点:是他们不允许连接用于根据两个或多个表之间的公共字段组合数据或行。MongoDB确实有一个LOOKUP函数,官方建议用户不要依赖它们。

Redis:远程字典服务器是一个键值存储。

[5]

优点:它支持不同种类的抽象数据结构,如字符串、列表、映射、集合、排序集合等等。它也是开源的。不仅支持多数据类型,而且易于安装。

缺点:同上,不允许连接用于根据两个或多个表之间的公共字段组合数据或行。并且需要掌握Lua编程语言(一种高级脚本语言)

区别:

总结一下关系数据库和非关系数据库之间的区别:关系数据库以行和列的方式存储数据,就像电子表格一样,而非关系数据库则不以行和列的方式存储数据,使用最适合它所存储的数据类型的存储模型(四种存储模型之一)。

如何确定你要使用什么数据库:

1. 你要处理的数据在使用行和列来表示更合适就用关系型数据库;更适合储存在一个灵活的空间里就用非关系型数据库。

2. 数据集小/中等,需要进行密集的读/写操作,就用关系型数据库,需要灵活更改数据类型就用非关系型数据库。

[1]https://www.microsoft.com/en-us/sql-server/sql-server-2019

[2]https://www.mysql.com

[3]https://www.postgresql.org

[4]https://www.mongodb.com/zh-cn

[5]https://redis.io

  • 19
    点赞
  • 110
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
数据库系统原理 数 据 库 设 计 步 骤 简 述 数据库设计步骤简述全文共9页,当前为第1页。 数据库设计步骤简述全文共9页,当前为第1页。 数据库设计步骤简述 数据库技术是信息资源的开发、管理和服务的最有效的手段,因此数据库的应用范围越来越广,从小的单项事物处理系统到大的信息服务系统大都利用了先进的数据库技术来保持系统数据的整体性、完整性和共享性。 数据库应用软件和其他软件一样,也有它的诞生和消亡。数据库应用软件作为软件,在其生命周期可以看作有三个大的时期:软件定义时期,软件开发时期和软件运行时期。 按照规范化设计方法,从数据库应用系统设计和开发的全过程来考虑,将数据库及其应用软件系统的生命周期的三个时期又可以细分为六个阶段:需求分析、概念结构设计、逻辑结构设计、物理结构设计、实施及运行维护。 一、需求分析 信息需求:指目标系统设计的所有实体、属性、以及实体间的联系等,包括信息的内容和性质,以及由信息需求导出的数据需求。 处理需求:指为得到需要的信息而对数据进行加工处理的要求,包括处理描述,发生的频度、响应时间以及安全保密要求等。进行数据库设计首先必须准确了解与分析用户需求。需求分析是真个设计过程的基础,是最困难、最耗费时间的一步。作为地基的需求分析是否做得充分与准备,决定了在其上构建数据库大厦的速 与质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。 数据库设计步骤简述全文共9页,当前为第2页。需求任务分析: 数据库设计步骤简述全文共9页,当前为第2页。 需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库。 需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。信息要求是指用户需要从数据库中获得信息的内容与性质。由用户的信息要求可以导出数据要求,即在数据库中需要存储哪些数据。处理要求是指用户要求完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理。新系统的功能必须能够满足用户的信息要求、处理要求、安全性与完整性要求 需求分析的方法: 通过调查了解了用户需求后,需要进一步分析和表达用户的需求。分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。 二、概念设计 将需求分析得到的用户需求抽象为信息结构即概念模的过程就是概念结构设计。 数据库设计步骤简述全文共9页,当前为第3页。概念结构是对现实世界的一种抽象,即对实际的人、物、事和概念进行人为处理,抽取人们关心的共同特性,忽略本质的细节,并把这些特性用各种概念精确地加以描述。 数据库设计步骤简述全文共9页,当前为第3页。 概念结构独立于数据库逻辑结构,也独立于支持数据库的DBMS。它是现实世界与机器世界的中介,它一方面能够充分反映现实世界,包括实体和实体之间的联系,同时又易于向关系、网状、层次等各种数据模转换。它是现实世界的一个真实模,易于理解,便于和不熟悉计算机的用户交换意见,使用户易于参与,当现实世界需求改变时,概念结构又可以很容易地作相应调整。因此概念结构设计是整个数据库设计的关键所在。 设计概念结构通常有四类方法: 1、自顶向下:首先定义全局概念结构的框架,然后逐步细化。 2、自底向上:首先定义各局部应用的概念结构然后将它们集成起来,得到全局概念结构。这是最经常采用的策略是自底向上方法。即自顶向下地进行需求分析,然后再自底向上地设计概念结构 3、逐步扩张:首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构。 4、混合策略:将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构 分E-R图经过合并生成的是初步E-R图。修改、重构初步E-R图以消除冗余主要采用分析方法 视图集成后形成一个整体的数据库概念结构,对该整体概念结构还必须进行进一步验证,确保它能够满足下列条件: 数据库设计步骤简述全文共9页,当前为第4页。整体概念结构内部必须具有一致性,即不能存在互相矛盾的表达。 数据库设计步骤简述全文共9页,当前为第4页。 整体概念结构能准确地反映原来的每个视图结构,包括属性、实体及实体间的联系 整体概念结构能满足需要分析阶段所确定的所有要求 整体概念结构最终还应该提交给用户,征求用户和有关人员的意见,进行评审、修改和优化,然后把它确定下来,作为数据库的概念结构,作为进一步设计数据库的依据。 三、逻辑设计 设计逻辑结构应该选择最适于描述与表达相应概念结构的数据模,然后选择最合适的DBMS。设
数据库系统原理 数 据 库 设 计 步 骤 简 述 数据库设计步骤简述 数据库技术是信息资源的开发、管理和服务的最有效的手段,因此数据库的应用范 围越来越广,从小的单项事物处理系统到大的信息服务系统大都利用了先进的数据 库技术来保持系统数据的整体性、完整性和共享性。 数据库应用软件和其他软件一样,也有它的诞生和消亡。数据库应用软件作为软件 ,在其生命周期可以看作有三个大的时期:软件定义时期,软件开发时期和软件运行时 期。 按照规范化设计方法,从数据库应用系统设计和开发的全过程来考虑,将数据库及 其应用软件系统的生命周期的三个时期又可以细分为六个阶段:需求分析、概念结构设 计、逻辑结构设计、物理结构设计、实施及运行维护。 一、需求分析 信息需求:指目标系统设计的所有实体、属性、以及实体间的联系等,包括信息的 内容和性质,以及由信息需求导出的数据需求。 处理需求:指为得到需要的信息而对数据进行加工处理的要求,包括处理描述,发 生的频度、响应时间以及安全保密要求等。进行数据库设计首先必须准确了解与分析用 户需求。需求分析是真个设计过程的基础,是最困难、最耗费时间的一步。作为地基的 需求分析是否做得充分与准备,决定了在其上构建数据库大厦的速度与质量。需求分析 做得不好,甚至会导致整个数据库设计返工重做。 需求任务分析: 需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等), 充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此 基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当 前应用需求来设计数据库。 需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安 全性与完整性要求。信息要求是指用户需要从数据库中获得信息的内容与性质。由用户 的信息要求可以导出数据要求,即在数据库中需要存储哪些数据。处理要求是指用户要 求完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理 。新系统的功能必须能够满足用户的信息要求、处理要求、安全性与完整性要求 需求分析的方法: 通过调查了解了用户需求后,需要进一步分析和表达用户的需求。分析和表达用户 需求的方法主要包括自顶向下和自底向上两类方法。 二、概念设计 将需求分析得到的用户需求抽象为信息结构即概念模的过程就是概念结构设计。 概念结构是对现实世界的一种抽象,即对实际的人、物、事和概念进行人为处理, 抽取人们关心的共同特性,忽略本质的细节,并把这些特性用各种概念精确地加以描 述。 概念结构独立于数据库逻辑结构,也独立于支持数据库的DBMS。它是现实世界与机 器世界的中介,它一方面能够充分反映现实世界,包括实体和实体之间的联系,同时又 易于向关系、网状、层次等各种数据模转换。它是现实世界的一个真实模,易于理 解,便于和不熟悉计算机的用户交换意见,使用户易于参与,当现实世界需求改变时, 概念结构又可以很容易地作相应调整。因此概念结构设计是整个数据库设计的关键所在 。 设计概念结构通常有四类方法: 1、自顶向下:首先定义全局概念结构的框架,然后逐步细化。 2、自底向上:首先定义各局部应用的概念结构然后将它们集成起来,得到全局概念 结构。这是最经常采用的策略是自底向上方法。即自顶向下地进行需求分析,然后再自 底向上地设计概念结构 3、逐步扩张:首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐 步生成其他概念结构,直至总体概念结构。 4、混合策略:将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结 构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构 分E-R图经过合并生成的是初步E-R图。修改、重构初步E- R图以消除冗余主要采用分析方法 视图集成后形成一个整体的数据库概念结构,对该整体概念结构还必须进行进一步 验证,确保它能够满足下列条件: 整体概念结构内部必须具有一致性,即不能存在互相矛盾的表达。 整体概念结构能准确地反映原来的每个视图结构,包括属性、实体及实体间的联系 整体概念结构能满足需要分析阶段所确定的所有要求 整体概念结构最终还应该提交给用户,征求用户和有关人员的意见,进行评审、修 改和优化,然后把它确定下来,作为数据库的概念结构,作为进一步设计数据库的依据 。 三、逻辑设计 设计逻辑结构应该选择最适于描述与表达相应概念结构的数据模,然后选择最合 适的DBMS。设计逻辑结构时一般要分三步进行: 将概念结构转换为一般的关系、网状、层次模 将转化来的关系、网状、层次模向特定DBMS支持下的数据模转换 对数据模进行优化 关系的逻辑结构是一组关系模式的集合。而E- R图则是由实体、实体的属性和实体之间的联系三个要素组成的。所以将E- R图转换为关

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值