redis基础知识汇总
2024-03-12 21:03:12 0 举报
AI智能生成
设计天天看
作者其他创作
大纲/内容
数据模型…
三个世界及其有关概念
现实世界
信息世界
实体
属性
码
能唯一标识一个实体的属性或者属性的组合被称为该实体的码或键(Key)。一个实体可能存在
多个码。
多个码。
域
属性的取值范围称为该属性的域。例如,姓名的域为字符串的集合,成绩的域一般为0~100,性别的
域为'男'或'女”。
域为'男'或'女”。
实体型
同一实体往往具有相同的属性集合,所以用实体名及其属性名集合来抽象和描述同类实体,称为
实体型。
实体型。
实体集
同类型实体的集合称为实体集,例如全体学生就是一个实体集
联系
一对一
一对多
多对多
计算机世界
数据模型的分类及其组成要素
数据模型通常由数据结构、数据操作和数据完整性约束三要素组成。
关系模型…
① 关系(Relation)。一个关系就是通常所说的一张二维表,即表示一个关系实例。每个关系都有一个关系名。
② 元组(Tuple)。二维表中的一行称为一个元组。许多系统把元组称为记录
③ 属性(Attribute)。二维表中的一列称为一个属性。为了区别表中的不同属性,要给每个属性起一个名称,即属性名,且属性名不能相同。属性有名和值之分
④ 域(Domain)。属性的取值范围称为域。例如,“性别”的域是'男'或'女'
⑤ 分量。元组中的一个属性值称为分量。
⑥ 码(Key)。码,也称为关键字,是值关系的一个属性或多个属性的组合,可以唯一确定关系的一个元组。
⑦ 候选码或候选关键字。如果在一个关系中存在多个属性(或属性组合)都能用来唯一标识该关系中的元组,这些属性(或属性组合)就被称为该关系的候选码或候选关键字
⑧ 主码或主键。在一个关系的若干候选码中,被选定的候选码或候选关键字被称为该关系的主码(Primary Key)或主键。
⑨ 主属性和非主属性。包含在候选码中的属性称为主属性(Prime attribute
⑩ 外键或外码。如果关系 R1 的一个或一组属性不是 R1的主码,而是另一关系 R2 的主码,那么该属性或属性组被称为关系 R1 的外码。
12.关系模式。对关系的描述称为关系模式,是关系的型,通常使用关系名和包含的属性名来表示具体形式为:关系名(属性1,属性 2,属性,, 属性 n)。表 1-2 中的关系模式可以表示为:教师(工号姓名,性别, 职称,工资,出生日期,所在系)。需要强调的是,在关系模型中,实体间的联系也是用关系来表示的。
关系模型的完整性约束条件包含实体完整性、参照完整性和用户定义完整性。
关系模型的优点和缺点
优点:① 建立在严格的数学基础之上。
② 概念单一,容易理解;数据结构简单,不论是实体还是实体间的联系,都用关系表示关系操作的原始数据、中间数据及结果数据也用关系表示,使得用户易懂易用。③ 关系的存储路径对用户透明。关系的数据操作是高度非过程化的,用户只需给出查询什么,而不必给出怎么查询,提高了数据的独立性和保密性,简化了程序员的工作。
② 概念单一,容易理解;数据结构简单,不论是实体还是实体间的联系,都用关系表示关系操作的原始数据、中间数据及结果数据也用关系表示,使得用户易懂易用。③ 关系的存储路径对用户透明。关系的数据操作是高度非过程化的,用户只需给出查询什么,而不必给出怎么查询,提高了数据的独立性和保密性,简化了程序员的工作。
缺点:
查询操作的效率低于非关系模型。为了提高查询效率,需要对用户的查询要求进行优化从而增加了数据库管理系统的开发难度。
查询操作的效率低于非关系模型。为了提高查询效率,需要对用户的查询要求进行优化从而增加了数据库管理系统的开发难度。
其他非关系型数据模型
数据库系统中经常使用的数据模型为层次模型、网状模型、关系模型和面向对象模型。其中,层次模型和网状模型是早期的数据模型,被称为非关系模型。面向对象的方法和技术在计算机各领域的应用也促进了数据库技术面向对象模型的研究和发展。
层次模型
层次模型的基本特点是:任何一个给定的记录值,只有按其路径查看时,才能显示出 它的全部意义,没有一个子女的记录值能够脱离双亲记录值而独立存在。
(2)层次模型的操作和完整性约束层次模型的数据操纵主要有查询、插入、删除和修改,进行插入、删除和修改操作时要满足层次
模型的完整性约束条件。① 进行插入操作时,如果没有相应的双亲结点值,就不能插入子女结点值。例如,如某学生没有分配班级,就不能将该学生的信息录入数据库。② 进行删除操作时,如果删除双亲结点值,那么相应的子女结点值也被同时删除。如果删除某班级信息,那么该班级内所有的学生数据也会随之丢失。
③ 进行更新操作时,应更新所有相应记录,以保证数据的一致性。
模型的完整性约束条件。① 进行插入操作时,如果没有相应的双亲结点值,就不能插入子女结点值。例如,如某学生没有分配班级,就不能将该学生的信息录入数据库。② 进行删除操作时,如果删除双亲结点值,那么相应的子女结点值也被同时删除。如果删除某班级信息,那么该班级内所有的学生数据也会随之丢失。
③ 进行更新操作时,应更新所有相应记录,以保证数据的一致性。
(3)层次模型的优点和缺点层次模型的优点:比较简单,查询效率高,性能优于关系模型、不低于网状模型,提供了良好的完整性支持,最适合实体间联系是固定的且预先定义好的应用系统。
层次模型的缺点:插入和删除操作的限制比较多,应用程序的编写比较复杂;查询子女结点必须通过双亲结点;无法直接表示多对多联系等。
层次模型的缺点:插入和删除操作的限制比较多,应用程序的编写比较复杂;查询子女结点必须通过双亲结点;无法直接表示多对多联系等。
网状模型
满足下面两个条件的基本层次联系的集合:① 允许一个以上的结点无双亲;② 一个结点可以有多于一个的双亲。
学
学
网状模型的操作和完整性约束网状模型的操作主要包括査询、插入、删除和更新数据。一般,网状模型没有层次模型那样严格的完整性约束条件,但具体的网状数据库系统对数据操作增加了一些限制,提供了一定的完整性约束① 插入操作中,允许插入尚未确定双亲结点值的子女结点值。② 删除操作允许只删除双亲结点值。③ 更新操作只需要更新指定记录即可。
网状模型的优点和缺点网状模型的优点:可以直接地表示现实世界中的复杂关系;由于实体之间的关系在底层中可以由指针实现,因此具有良好的性能,存取效率高。网状模型的缺点:结构复杂,使用不易,随着应用环境的扩大,数据结构越来越复杂,数据的入、删除涉及的相关数据较多,不利于数据库的维护和重建;数据定义语言和数据操作语言比较复杂用户不易使用;记录之间的联系是通过存取路径实现的,程序员必须了解系统结构的细节,加重了程序员的负担。
面向对象模型
面向对象模型的优点和缺点面向对象模型的优点:能有效地表达客观世界和有效地查询信息,适合处理各种各样的数据类型;开发效率高、可维护性好;能很好地解决应用程序语言和数据库管理系统对数据类型支持不致的问题。
面向对象模型的缺点:相关技术还在发展中,尚存在查询语言标准化的问题;理论待完善,还缺少有关面向对象分析的一套清晰的概念模型;目前还不适合所有应用。
面向对象模型的缺点:相关技术还在发展中,尚存在查询语言标准化的问题;理论待完善,还缺少有关面向对象分析的一套清晰的概念模型;目前还不适合所有应用。
数据库管理条统…
常见的数据库管理系统
存储的值
可以是字符串、整数或浮点,统称为元素
读写能力
对字符串操作,对整数类型加减
数据库管理系统的主要功能
① 数据定义功能。数据库管理系统提供数据定义语言(Data Definition Language,DDL),供用户定义数据库的三层模式结构、二级映像和完整性约束等。
② 数据操纵功能。数据库管理系统提供数据操纵语言(Data Manipulation Language,DML),供用户对数据库中的数据进行查询、插入、删除、修改等操作
③ 数据库的建立和维护功能。主要指数据的载入、转储、重组织及数据库的恢复、系统性能监视与分析等功能。
④ 数据库运行管理功能。是数据库管理系统的核心部分,主要包括对数据库进行并发控制、安全性检查、完整性约束条件检查和执行、数据库内部的维护等。
⑤ 数据的组织、存储和管理。数据库管理系统负责对数据字典、用户数据、存储路径等数据进行分门别类地组织、存储和管理,确定以何种文件结构和存储方式物理地组织这些数据,以提高存储效率和各种操作的效率。
⑥ 通信功能。数据库管理系统提供与其他软件系统通信的功能,从而实现用户程序与数据库管理系统之间、不同数据库管理系统之间、数据库管理系统与文件系统之间的通信。
数据库管理系统的组成…
数据库管理系统是功能强大的软件系统,不同的数据库管理系统产品结构差异很大。一般的数据库管理系统由数据字典、查询处理器、存储管理器等部分组成。
从集合中插入或删除元素
数据库管理系统的数据存取过程
读记录
检查权限
读取逻辑记录
读取物理记录
读取物理记录
从数据库读取数据
从操作系统送数据
从系统缓冲区读记录
从数据库管理系统送记录到程序工作区
数据库系统基本概念
信息和数据
数据处理经常用到的概念就是信息与数据,二者既有区别又有联系。
信息具有依附性,感知性,传递性,共享性,时效性等特点
数据是承载信息的符号,即是信息的载体
数据处理与数据管理
数据处理是指将数据转换成信息的过程,包括对数据进行采集、管理、存储、加工和传播,信息=数据+数据处理
数据管理是数据处理过程中的核心和基础性工作,是指利用计算机技术对数据进行分类、组织、编码、存储、检索和维护。
数据管理技术的发展
人工管理阶段20世纪50年代之前
数据不保留
没有专门的数据管理软件
数据和程序之间不具备独立性
数据不共享
文件系统阶段(20世纪50年代后期至60年代中期
数据可以长期保留
文件系统对数据进行管理
程序和数据之间有较低的独立性
数据共享性能差
数据文件呈现多样化
数据库系统阶段(20世纪60年代后)
数据结构化
数据共享性差
数据和程序之间具有较高独立性
统一的数据管理和控制
数据的完整性控制
数据的安全性控制
数据的并发控制
数据恢复的控制
数据库系统的组成…
数据库
数据库中的数据具有集成性和共享性。集成性是指数据库中的数据及数据之间的联系按照一定的结构被集中存储;共享性是指数据库中的数据可以被多个不同的用户所共享,即多个不同的用户可以使用不同的语言同时存取数据库中的数据。
数据库用户
数据库用户主要由三类用户构成,分别为数据库管理员(DataBaseAdministratorDBA)、数据库应用程序开发人员(系统分析员、系统设计员和程序设计员)、用户。
软件
(1)操作系统
操作系统是所有软件运行的基础,给用户提供良好的应用接口,数据库系统也必须在操作系统的支持下才能正常使用。
操作系统是所有软件运行的基础,给用户提供良好的应用接口,数据库系统也必须在操作系统的支持下才能正常使用。
(2)数据库管理系统
数据库管理系统(DataBase Management System,DBMS)是数据库系统的核心组成部分是一种操纵和管理数据库的软件。数据库管理系统位于用户与操作系统之间,主要功能是为用户应用程序员和数据库管理员提供访问数据库的方法,包括定义、建立、维护、使用和控制数据库。
数据库管理系统(DataBase Management System,DBMS)是数据库系统的核心组成部分是一种操纵和管理数据库的软件。数据库管理系统位于用户与操作系统之间,主要功能是为用户应用程序员和数据库管理员提供访问数据库的方法,包括定义、建立、维护、使用和控制数据库。
(3)数据库应用系统及开发工具数据库应用系统包括为特定应用环境建立的数据库、开发的各类应用程序、编写的文档 资料等。开发工具是指具有数据库访问接口的高级语言及其编程环境,以便应用程序的开发。
硬件
数据库系统的体系结构
数据库系统的三级模式结构
外模式
外模式,又称为子模式或用户模式,
外模式位于三级模式的最外层,一个数据库可以有多个外模式。这是因为不同用户的需求不同,带来了看待数据的方式和对数据存储等方面的要求的差异,从而形成不同用户对应的外模式的不同。外模式也是保证数据安全性的有力措施。
模式
模式,又称为概念模式或逻辑模式,
一个数据库只有一个模式,是以某种数据模型为基础、对所有用户的数据进行综合抽象而得到的统一的全局数据结构。
内模式
内模式,也称为存储模式或物理模式
一个数据库只有一个内模式,它是数据访问的物理基础。
数据库系统的二级映像和数据独立性
为了能够实现数据库的三个抽象层次的联系和转换,数据库管理系统在三级模式之间提供了二级映像:外模式/模式映像,模式/内模式映像。
1、外模式/模式映像
外模式/模式映像定义了外模式与模式之间的对应关系,也就是数据的局部逻辑结构与全局逻辑结构之间的关系。利用这个关系,数据库管理系统就可以完成外模式与模式之间的转换。
外模式/模式映像定义了外模式与模式之间的对应关系,也就是数据的局部逻辑结构与全局逻辑结构之间的关系。利用这个关系,数据库管理系统就可以完成外模式与模式之间的转换。
2、模式/内模式映像
模式/内模式映像定义了模式与内模式之间的对应关系,也就是数据全局逻辑结构与存储 结构之间的对应关系。利用这个关系,数据库管理系统就可以完成模式与内模式之间的转换。
一个数据库只有一个模式和一个内模式,因此模式和内模式的映像也是唯一的其映像的定义通常包含在模式描述中。
模式/内模式映像定义了模式与内模式之间的对应关系,也就是数据全局逻辑结构与存储 结构之间的对应关系。利用这个关系,数据库管理系统就可以完成模式与内模式之间的转换。
一个数据库只有一个模式和一个内模式,因此模式和内模式的映像也是唯一的其映像的定义通常包含在模式描述中。
数据和程序相互之间依赖程度低、独立程度大的特性称为数据独立性,是由数据库管理系统的二级映像功能来保证的。
数据独立性分为如下两种:
一种是数据的物理独立性;另一种是数据的逻辑独立性,
数据独立性分为如下两种:
一种是数据的物理独立性;另一种是数据的逻辑独立性,
数据库系统的三级模式结构和二级映像的优点
1.由于数据与程序之间具有独立性,因此数据的定义和描述可以从应用程序中分离,数据库管理系统负责数据的底层存储和表示,从而极大简化了程序的编写工作,也减少了程序的维护工作。
②)数据库系统的三级模式结构实现了数据使用的抽象化,二级映像功能保证了数据的独立性,从而从根本上保证了应用程序的稳定性。
③ 数据的共享和安全得到保证。在多个不同的外模式下,数据库中的数据可由多个用户共享,同时在外模式下只能对限定的数据操作,保证了数据的安全性。
数据库系统的应用架构
数据库系统的应用架构是指应用程序在数据库服务器之间进行交互的方式。从最终用户角度,数据库应用系统的应用架构分为集中式结构、分布式结构、客户/服务器结构、浏览器/服务器结构
收藏
0 条评论
下一页