关系型数据库的特点 关系型数据库设计原则与步骤

本文章由注册用户 知识杂谈 上传提供 评论 发布 纠错/删除 版权声明 0
摘要:关系型数据库是一种数据库类型,采用表格的储存方式,数据以行和列的方式进行存储,存储的格式可以直观地反映实体间的关系。关系数据库是数据库应用的主流,许多数据库管理系统的数据模型都是基于关系数据模型开发的。下面来了解下关系型数据库的特点,关系型数据库设计原则与步骤。

一、关系型数据库是什么

关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。

二、关系型数据库的特点

1、存储方式:传统的关系型数据库采用表格的储存方式,数据以行和列的方式进行存储,要读取和查询都十分方便。

2、存储结构:关系型数据库按照结构化的方法存储数据,每个数据表都必须对各个字段定义好(也就是先定义好表的结构),再根据表的结构存入数据,这样做的好处就是由于数据的形式和内容在存入数据之前就已经定义好了,所以整个数据表的可靠性和稳定性都比较高,但带来的问题就是一旦存入数据后,如果需要修改数据表的结构就会十分困难。

3、存储规范:关系型数据库为了避免重复、规范化数据以及充分利用好存储空间,把数据按照最小关系表的形式进行存储,这样数据管理的就可以变得很清晰、一目了然,当然这主要是一张数据表的情况。如果是多张表情况就不一样了,由于数据涉及到多张数据表,数据表之间存在着复杂的关系,随着数据表数量的增加,数据管理会越来越复杂。

4、扩展方式:由于关系型数据库将数据存储在数据表中,数据操作的瓶颈出现在多张数据表的操作中,而且数据表越多这个问题越严重,如果要缓解这个问题,只能提高处理能力,也就是选择速度更快性能更高的计算机,这样的方法虽然可以一定的拓展空间,但这样的拓展空间一定有非常有限的,也就是关系型数据库只具备纵向扩展能力。

5、查询方式:关系型数据库采用结构化查询语言(即SQL)来对数据库进行查询,SQL早已获得了各个数据库厂商的支持,成为数据库行业的标准,它能够支持数据库的CRUD(增加,查询,更新,删除)操作,具有非常强大的功能,SQL可以采用类似索引的方法来加快查询操作。

6、规范化:在数据库的设计开发过程中开发人员通常会面对同时需要对一个或者多个数据实体(包括数组、列表和嵌套数据)进行操作,这样在关系型数据库中,一个数据实体一般首先要分割成多个部分,然后再对分割的部分进行规范化,规范化以后再分别存入到多张关系型数据表中,这是一个复杂的过程。好消息是随着软件技术的发展,相当多的软件开发平台都提供一些简单的解决方法,例如,可以利用ORM层(也就是对象关系映射)来将数据库中对象模型映射到基于SQL的关系型数据库中去以及进行不同类型系统的数据之间的转换。

7、事务性:关系型数据库强调ACID规则(原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)),可以满足对事务性要求较高或者需要进行复杂数据查询的数据操作,而且可以充分满足数据库操作的高性能和操作稳定性的要求。并且关系型数据库十分强调数据的强一致性,对于事务的操作有很好的支持。关系型数据库可以控制事务原子性细粒度,并且一旦操作有误或者有需要,可以马上回滚事务。

8、读写性能:关系型数据库十分强调数据的一致性,并为此降低读写性能付出了巨大的代价,虽然关系型数据库存储数据和处理数据的可靠性很不错,但一旦面对海量数据的处理的时候效率就会变得很差,特别是遇到高并发读写的时候性能就会下降的非常厉害。

9、授权方式:关系型数据库常见的有Oracle,SQLServer,DB2,Mysql,除了Mysql大多数的关系型数据库如果要使用都需要支付一笔价格高昂的费用,即使是免费的Mysql性能也受到了诸多的限制。

三、关系型数据库设计原则

在进行关系型数据库的设计过程中,要遵循以下几个原则,借此可以提高数据库的存储效率、数据完整性和可扩展性。

1、命名规范化

在概念模型设计中,对于出现的实体、属性及相关表的结构要统一。例如在数据库设计中,指定学生Sstudent,专指本科生,相关的属性有:学号、姓名、性别、出生年月等,及每个属性的类型、长度、取值范围等都要进行确定,这样就能保证在命名时不会出现同名异义或异名同义、属性特征及结构冲突等问题。

2、数据的一致性和完整性

在关系型数据库中可以采用域完整性、实体完整性和参照完整性等约束条件来满足其数据的一致性和完整性,用check、default、null、主键和外键约束来实现。

3、数据冗余

数据库中的数据应尽可能地减少冗余,这就意味着重复数据应该减少到最少。例如:若一个部门职员的电话存储在不同的表中,假设该职员的电话号码发生变化时,冗余数据的存在就要求对多个表进行更新操作,若某个表不幸被忽略了,那么就会造成数据不一致的情况。所以在数据库设计中一定要尽可能存在少地冗余。

4、范式理论

在关系数据库设计时,一般是通过设计满足某一范式来获得一个好的数据库模式,通常认为3NF在性能、扩展性和数据完整性方面达到了最好的平衡,因此,一般数据库设计要求达到3NF,消除数据依赖中不合理的部分,最终实现使一个关系仅描述一个实体或者实体间一种联系的目的。

四、关系型数据库设计步骤

关系型数据库设计的过程可大体分为四个时期七个阶段。

1、用户需求分析时期,主要是了解和分析用户对数据的功能需求和应用需求,是整个设计过程的基础,事关整个数据库应用系统设计的成败。

2、数据库设计时期,主要是将用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的数据模型,可用实体—联系模型来表示,然后将其转换为已选好的关系型数据库管理系统RDBMS所支持的一组关系模式并为其选取一个适合应用环境的物理结构,包括存储结构和存取方法。

3、数据库实现时期,包括数据库结构创建阶段和应用行为设计与实现阶段,是根据数据库的物理模型创建数据库、创建表、创建索引、创建聚簇等。

4、数据库运行与维护时期,最后一个阶段则是数据库应用系统经过试运行后即可投入正式运行。

网站提醒和声明
本站为注册用户提供信息存储空间服务,非“MAIGOO编辑”、“MAIGOO榜单研究员”、“MAIGOO文章编辑员”上传提供的文章/文字均是注册用户自主发布上传,不代表本站观点,版权归原作者所有,如有侵权、虚假信息、错误信息或任何问题,请及时联系我们,我们将在第一时间删除或更正。 申请删除>> 纠错>> 投诉侵权>> 网页上相关信息的知识产权归网站方所有(包括但不限于文字、图片、图表、著作权、商标权、为用户提供的商业信息等),非经许可不得抄袭或使用。
提交说明: 快速提交发布>> 查看提交帮助>> 注册登录>>
相关推荐
2024数据中台TOP50榜单发布 2024年数据中台厂商排行榜一览
互联网周刊、德本咨询等机构联合发布了“2024数据中台TOP50榜单”。榜单集结国家级权威期刊与专业行业机构的多方专家,从业内口碑、企业规模、实力和未来发展力三大维度出发,评选出了数据中台领域领先级优秀厂商。其中,华为、阿里、神州控股、百度、火山引擎依次位列榜单前五位,下面跟随小编一起来看看2024国内数据中台企业排行榜详情吧。
数据库怎么建表 数据库怎么导入数据
数据表是数据库最重要的组成部分之一,所有数据存储在数据表中。数据表是其他对象的基础,没有数据表,关键字、主键、索引等也就无从谈起。那么数据库怎么建表?数据库怎么导入数据?下面就来介绍数据库建表及数据导入的方法。
数据库怎么学习 如何成为数据库工程师
数据库是由表、关系和操作组成的,几乎所有的应用软件的后台都需要数据库。数据库好似人的大脑的记忆系统,没有了数据库就没有了记忆系统。那么数据库怎么学习?如何成为数据库工程师?下面就来分享数据库学习和,数据库工程师入门的内容。
什么是数据库 数据库有哪些类型
数据库是什么?数据库可视为电子化的文件柜,是存放数据的仓库,一般以电子形式存储在计算机系统中。数据库作为最重要的基础软件,是确保计算机系统稳定运行的基石。数据库有哪些类型?数据库有两种类型,分别是关系型数据库与非关系型数据库。下面来了解下数据库。
十大数据分析必备网站 大数据分析网站有哪些 好用的数据网站推荐
数据,可以帮助人们更好地理解事物本质,指导人们的决策。各行各业的发展,都需要大量数据的支撑。本文中,maiGOO小编就带大家了解下热门大数据分析网站有哪些,例如巨量算数、艾瑞咨询、高德交通,以及SimilarWeb、Statista、七麦数据等数据分析报告网站,都较具代表性。下面一起来看一份十大数据分析网站盘点榜单。
互联网 数据库 ★★★
8082 5