数据库种类大全及区别

数据库种类大全及区别

【备注:鸣谢链接:https://blog.csdn.net/aaronthon/article/details/81714528】

一、 数据库共有2种类型:关系型数据库非关系型数据库

1、关系数据库

MySQL、MariaDB(MySQL的代替品)、
Percona Server(MySQL的代替品·)、PostgreSQL、
Microsoft Access、Google Fusion Tables、SQLite、DB2、FileMaker、OracleSQL ServerINFORMIX、Sybase、dBASE、Clipper、FoxPro、foshub。

几乎所有的数据库管理系统都配备了一个开放式数据库连接(ODBC)驱动程序,令各个数据库之间得以互相集成。

2、非关系型数据库(NoSQL)

redisMongoDBMemcacheHBase、BigTable、Cassandra、CouchDB、Neo4J

、区别

关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织
优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。
———————————————————————————————————————
非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。
优点:
1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘;
3、高扩展性;
4、成本低:nosql数据库部署简单,基本都是开源软件。

缺点:
1、不提供sql支持,学习和使用成本较高;
2、无事务处理;
3、数据结构相对复杂,复杂查询方面稍欠。

非关系型数据库的分类和比较:
1、key-value型 (针对高性能并发读写场景)
2、文档型 (针对海量数据访问场景)
3、列式数据库
4、图形数据库
————————————————————————————————

三、每个数据库的区别:
mysql:
oracle:
sql server:
informix:

redis: (非关系型数据库----键值数据库)
MongoDB:(非关系型数据库----文档数据库)
HBase:(非关系型数据库----列存储数据库)
Neo4J : (非关系型数据库----图形数据库)

{补充: 数据库模型:对象模型、层次模型(轻量级数据访问协议)、网状模型(大型数据储存)、关系模型、面向对象模型、半结构化模型、平面模型(表格模型,一般在形式上是一个二维数组。如表格模型数据Excel)。}

四、后期会补充、修改。如果有不对的请指正,我三天内修改掉!谢谢

  • 33
    点赞
  • 122
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
数据库管理系统和数据库系统的区别 数据库管理系统和数据库系统的区别数据库应⽤中,常⽤到DB、DBMS、DBS等术语,其形式定义如下。 数据库(DataBase,简称DB) 严格地说,数据库是"按照数据结构来组织、和管理数据的"。数据库能为各种⽤户共享,具有较⼩冗余度、数据间联系紧密⽽⼜有较⾼的数 据独⽴性等特点。 数据库管理系统(DataBase Mangement System,简称DBMS) 数据库管理系统(database management system)是⼀种操纵和管理数据库的软件,⽤于建⽴、使⽤和维护数据库,简称dbms。它对数据库 进⾏统⼀的管理和控制,以保证数据库的安全性和完整性。⽤户通过dbms访问数据库中的数据,数据库管理员也通过dbms进⾏数据库的维 护⼯作。它可使多个应⽤程序和⽤户⽤不同的⽅法在同时或不同时刻去建⽴,修改和询问数据库数据库管理系统主要提供如下功能。 1.数据定义:DBMS提供数据定义语⾔DDL(Data Definition Language),供⽤户定义数据库的三级模式结构、两级映像以及完整性约束和 保密限制等约束。DDL主要⽤于建⽴、修改数据库的库结构。DDL所描述的库结构仅仅给出了数据库的框架,数据库的框架信息被存放在数 据字典(Data Dictionary)中。 2.数据操作:DBMS提供数据操作语⾔DML(Data Manipulation Language),供⽤户实现对数据的追加、删除、更新、查询等操作。 3.数据库的运⾏管理:数据库的运⾏管理功能是DBMS的运⾏控制、管理功能,包括多⽤户环境下的并发控制、安全性检查和存取限制控 制、完整性检查和执⾏、运⾏⽇志的组织管理、事务的管理和⾃动恢复,即保证事务的原⼦性。这些功能保证了数据库系统的正常运⾏。 4.数据组织、存储与管理:DBMS要分类组织、存储和管理各种数据,包括数据字典、⽤户数据、存取路径等,需确定以何种⽂件结构和存 取⽅式在存储级上组织这些数据,如何实现数据之间的联系。数据组织和存储的基本⽬标是提⾼存储空间利⽤率,选择合适的存取⽅法提⾼ 存取效率。 5.数据库的保护:数据库中的数据是信息社会的战略资源,随数据的保护⾄关重要。DBMS对数据库的保护通过4个⽅⾯来实现:数据库的 恢复、数据库的并发控制、数据库的完整性控制、数据库安全性控制。DBMS的其他保护功能还有系统缓冲区的管理以及数据存储的某些⾃ 适应调节机制等。 6.数据库的维护:这⼀部分包括数据库的数据载⼊、转换、转储、数据库的重组合重构以及性能监控等功能,这些功能分别由各个使⽤程序 来完成。 7.通信:DBMS具有与操作系统的联机处理、分时系统及远程作业输⼊的相关接⼝,负责处理数据的传送。对⽹络环境下的数据库系统,还 应该包括DBMS与⽹络中其他软件系统的通信功能以及数据库之间的互操作功能。 数据库系统(DataBase System,简称DBS) 数据库系统⼀般由4个部分组成: (1)数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按⼀定的数学模型组织、描述和 存储,具有较⼩的冗余,较⾼的数据独⽴性和易扩展性,并可为各种⽤户共享。 (2)硬件:构成计算机系统的各种物理设备,包括存储所需的外部设备。硬件的配置应满⾜整个数据库系统的需要。 (3)软件:包括操作系统、数据库管理系统及应⽤程序。数据库管理系统(database management system,DBMS)是数据库系统的核⼼ 软件,是在操作系统(如Windows、Linux等操作系统)的⽀持下⼯作,解决如何科学地组织和存储数据,如何⾼效获取和维护数据的系统 软件。其主要功能包括:数据定义功能、数据操纵功能、数据库的运⾏管理和数据库的建⽴与维护。 (4)⼈员:主要有4类。 第⼀类为系统分析员和数据库设计⼈员:系统分析员负责应⽤系统的需求分析和规范说明,他们和⽤户及数据库管理员⼀起确定系统的硬件 配置,并参与数据库系统的概要设计。数据库设计⼈员负责数据库中数据的确定、数据库各级模式的设计。 第⼆类为应⽤程序员,负责编写使⽤数据库的应⽤程序。这些应⽤程序可对数据进⾏检索、建⽴、删除或修改。 第三类为最终⽤户,他们利⽤系统的接⼝或查询语⾔访问数据库。 第四类⽤户是数据库管理员(data base administrator,DBA),负责数据库的总体信息控制。DBA的具体职责包括:具体数据库中的信息 内容和结构,决定数据库的存储结构和存取策略,定义数据库的安全性要求和完整性约束条件,监控数据库的使⽤和运⾏,负责数据库的性 能改进、数据库的重组和重构,以提⾼系统的性能。
Oracle数据库设计策略及规范 设计策略及规范 1. 目的 定义Oracle数据库设计规范,作为数据库规划、设计、开发以及维护人员的技术参考资料。用以规范和指导相关人员的设计行为。 2. 概述 本文档根据Oracle数据库性能特点,描述对表、视图、存储过程、对象命名等方面的设计规范。 3. 基本策略 3.1 设计策略 分类拆分数据量大的表。 对于经常使用的表(如某些参数表或代码对照表),由于其使用频率很高,要尽量减少表中的记录数量。例如,银行的户主账表原来设计成一张表,虽然可以方便程序的设计与维护,但经过分析发现,由于数据量太大,会影响数据的迅速定位。如果将户主账表分别设计为活期户主账、定期户主账及对公户主账等,则可以大大提高查询效率。 分区策略 在拥有数500行以上的表时,采用分区策略。 索引设计。 对于大的数据库表,合理的索引能够提高整个数据库的操作效率。在索引设计中,索引字段应挑选重复值较少的字段;在对建有复合索引的字段进行检索时,应注意按照复合索引字段建立的顺序进行。例如,如果对一个5万多条记录的流水表以日期和流水号为序建立复合索引,由于在该表中日期的重复值接近整个表的记录数,用流水号进行查询所用的时间接近3秒;而如果以流水号为索引字段建立索引进行相同的查询,所用时间不到1秒。因此在大型数据库设计中,只有进行合理的索引字段选择,才能有效提高整个数据库的操作效率。 有时候为了提高性能。减少表的关联,恰当的数据冗余是允许的。 索引对新增,删除,更新的性能影响比较大,对相关的表的索引使用要权衡 为表和索引建立不同的表空间,禁止在系统表空间中放入非核心oracle系统成分的对象, 确保数据表空间和索引表空间位于不同的磁盘磁盘驱动器上。 对于经常发生同时查询或频繁查询的表,最好把他放到不同的磁盘空间上 4. 逻辑设计规范 4.1 范式 如果没有性能上的原因,应该使用关系数据库理论,达到较高的范式,避免数据冗余。 如果在数据量上与性能上无特别要求,考虑到实现的方便性可以有适当的数据冗余,但基本上要达到3NF。 4.2 表设计 对于数据量比较大的表,根据表数据的属性进行分区,以得到较好的性能。如果表按某些字段进行增长,则采用按字段值范围进行范围分区;如果表按某个字段的几个关键值进行分布,则采用列表分区;对于静态表,则采用Hash分区或列表分区;在范围分区中,如果数据按某关键字段均衡分布,则采用子分区的复合分区方法。 每个表均创建类型为Sequence的主键字段。 每个表中需含有如下几个基本字段:一个表的SEQ号,4个创建信息字段,5-8个备用字段,一个删除标记字段,最好还有一个行版本字段 字段名 类型 备注 业务SEQ号 整数型 作为表主键 OBLIGATE1 字符型 备用字段 OBLIGATE2 OBLIGATE3 OBLIGATE4 OBLIGATE5 CREATE_USER_ID VARCHAR 创建用户ID CREATE_DATETIME DATE 创建时间 LAST_UPDATE_USER_ID VARCHAR 更新用户ID LAST_UPDATE_DATETIME TIMESTAMP 更新时间 不要用Identify字段作为表的主键与其它表关联。 4.3 索引设计 常规OLTP应用,创建B-TREE索引,不创建位图索引。 不需要为小型数据表(<5000)创建索引。 给单个表创建的索引不超过5个,特别是海量交易类表。 索引条件查询结果记录,不超总记录的20%。 不要给固定选项的字段创建独立索引。 如只有'男,女'的性别字段;'是,否'的状态字段等,不要创建独立索引,位可以建立复合索引。 对于复合索引,索引字段顺序比较关键,把查询频率比较高的字段排在索引组合的最前面。 索引放到独立的表空间,该表空间不需要REDO LOG。 含有外键约束的表的字段,必须有单独索引。如订单明细的表头外键。 5. 对象命名规范 5.1 一般规范 5.1.1 语言 命名使用英文单词,不使用复数。 Oracle数据库设计策略及规范全文共3页,当前为第1页。 英文单词使用同对象本身意义相对或相近的单词。选择最简单或最通用的单词。不能使用毫不相干的单词来命名。 Oracle数据库设计策略及规范全文共3页,当前为第1页。 当一个单词不能表达对象含义时,用词组组合,如果组合太长时,采用简写或缩写,缩写要基本能表达原单词的意义。 当出现对象名重名时,是不同类型对象时,加类型前缀或后缀以示区别。 禁止使用中文或拼音缩写进行命名 5.1.2 大小写 名称一律大写,以方便不同数据库移植,以及避免程序调用问题 5.1.3 单词分隔 命名的各单词之间使用下划线进行分隔。 命名的各单词之间不允许有空格存在 5.1.4 保留字 命名不允许使用SQL保留字。 5.1.5 

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值