数据库
2025-06-10 15:39:44   1  举报             
     
         
 AI智能生成
  您的指令似乎不完整。数据库通常包含大量信息,但您并未指定具体的数据表、字段或者要生成描述的核心内容。如果您需要创建一个描述特定数据库文件的文本,请提供更多细节,例如所含数据的种类、格式、重要性以及任何需要特别强调的属性或修饰语。这样一来,我便能够为您精确地生成所需描述。
    作者其他创作
 大纲/内容
  • 基本概念:    
     三级模式-两级映像    
     概念模式与内模式之间,还存在映像,即二级映像    
     外部层(ExternalLevel)    
     外模式(External Schema)、  
     概念层(Conceptual Level)    
     概念 模式(Conceptual Schema):逻辑模式  
     内部层(Internal Level)    
     内模式(Internal Schema):物理模式、存储模式  
     数据库系统    
     数据库关系    
     三种类型    
      基本表:实际存在的表,实际存储数据的逻辑表示。  
      查询表:查询结果对应的表  
      视图表:由基表或其他视图表导出的表,本身不独立存储,数据库只存放它的定义,常称为虚表。  
     视图的优点    
      视图能简化用户操作  
      视图使用户能以多种角度看待同一数据  
      视图对重构数据库提供了一定程度的逻辑独立性  视图可以对机密数据提供安全保护  
     分布式数据库    
     概念:指数据存储和处理在多台计算机上分布式管理的数据库系统  
     特点    
     数据分布  
     透明性  
     数据冗余和复制  
     数据一致性    
     常见的解决方案包括使用一致性协议(如两阶 段提交协议(2PC)或Paxos协议),以及通过CAP定理来做出权衡:一致性、可用性和分区容忍性  
     可扩展性、高可用性和容错性  
     优点    
      高可用性:通过冗余和故障恢复机制,分布式数据库可以提供比传统集中式数据库更高的可用性。  
      可扩展性:随着数据量增长,能够通过增加节点进行水平扩展,轻松应对大规模数据存储和处理的需求。  
       容错性:系统能够容忍单点故障,保证数据的可靠性和系统的持续可用性。  
     缺点    
      一致性问题:分布式系统需要处理不同节点之间的数据一致性问题,特别是在存在网络延迟或节点故障时。解决方 案如分布式事务或一致性协议增加了系统的复杂性。  
      性能瓶颈:虽然可以水平扩展,但由于网络延迟、节点间的数据同步等因素,分布式数据库的性能可能不如单节点 的集中式数据库。  
      管理复杂性:分布式数据库的管理需要处理多个节点的协调、故障恢复、数据备份、负载均衡等问题,管理起来较 为复杂。  
     数据库设计    
     子主题 1    
     (1 )需求分析:即分析数据存储的要求    
     产出物有数据流图、数据字典、需求说明 书。  
     获得用户对系统的三个要求:信息要求、处理要求、系统要求。  
     (2)概念结构设计:设计E-R图,也即实体-联系图。工作步骤包括:选择局部 应用、逐一设计分E-R图、E-R图合并。分E-R图进行合并时,它们之间存在的冲 突主要有以下3类。    
      属性冲突。同一属性可能会存在于不同的分E-R图中。  
      命名冲突。相同意义的属性,在不同的分E-R图上有着不同的命名,或是名称相同的属性在不同的分E-R图中代表着不同的意义。  
      结构冲突。同一实体在不同的分E-R图中有不同的属性,同一对象在某一分E-R图中被抽  
     象为实体而在另一分E-R图中又被抽象为属性。 (3)逻辑结构设计:将E-R图,转换成关系模式。工作步骤包括:确定数据模型、  
     将E-R图转换成为指定的数据模型、确定完整性约束和确定用户视图。 (4)物理设计:步骤包括确定数据分布、存储结构和访问方式。  
     (5)数据库实施阶段:根据逻辑设计和物理设计阶段的结果建立数据库,编制与调 试应用程序,组织数据入库,并进行试运行。  
     (6)数据库运行和维护阶段:数据库应用系统经过试运行即可投入运行,但该阶段 需要不断地对系统进行评价、调整与修改。  
     数据模型四种分类    
     • 关系模型:是二维表的形式表示的实体-联系模型,是将实体-联系模型转换而来的,经过开发人员设计的;  
     • 概念模型:是从用户的角度进行建模的,是现实世界到信息世界的第一抽象,是真正的实体-联系模型。  
     • 网状模型:表示实体类型及其实体之间的联系,一个事物和另外几个都有联系,形成一张网。  
     • 面向对象模型:是采用面向对象的方法设计数据库,以对象为单位,每个对象包括属性和方法,具有类和继承等特点  
     数据模型三要素    
     • 数据结构:所研究的对象类型的集合  
     • 数据操作:对数据库中各种对象的实例允许执行的操作的集合   
     • 数据的约束条件:一组完整性规则的集合  
     • 数据库模型:    
     E-R模型    
     使用椭圆表示属性(一般没有)、长方形表示实体、菱形表示联系,联系的两端要填写联系类 型  
     关系模型    
     数据的逻辑结构是一张二维表,由行列组成  
     关系代数    
     并:结果是两张表中所有记录数合并,相同记录只显示一次。  
     交:结果是两张表中相同的记录。  
     差:S1 -S2,结果是S1 表中有而S2表中没有的那些记录。  
     笛卡尔积    
     S1 XS2,产生的结果包括S1 和S2的所有属性列,并且S1 中每条记录依次和S2中所有记录组合成一条记录,最终属性列为S1 +52属性列,记录数为S1 *52记录数。  
     投影(π):实际是按条件选择某关系模式中的某列,列也可以用数字表示。   
     选择(σ):实际是按条件选择某关系模式中的某条记录。  
     自然连接:显示全部的属性列,但是相同属性列只显示一次,显示两个关系模式中属性相同且值相同的记录。  
     SQL  
     • 规范化:    
     键与约束    
     超键:能唯一标识记录的属性集合(可能不止一个)  
     候选键:最小的超键,用于作为主键(通常只有一个)   
     主属性:除候选键外的具有代表意义的非重复且非衍生属性  
      主键:任选一个候选键,即可作为主键。  
     外键:其他表中的主键。   
     实体完整性约束:即主键约束,主键值不能为空,也不能重复。   
     参照完整性约束:即外键约束,外键必须是其他表中已经存在的主键的值,或者为空。  
      用户自定义完整性约束:自定义表达式约束,如设定年龄属性的值必须在0到1 80之间。  
     函数依赖    
     部分函数依赖    
     A、B->C,C对A部分函数依赖  
     传递函数依赖    
     A决定->B,B决定->C,C 对A传递函数依赖  
     函数依赖的公理系统(Armstrong阿姆斯特朗公理)    
     三条基本规则    
     • 自反律:若属性集Y是属性集X的子集(Y⊆X⊆U),则X→Y成立。这表示如果一个属性集合Y是另一个属性集合X的子集,那么X可以决定Y。  
     • 增广律:若X→Y成立,且属性集Z是属性集U的子集(Z⊆U),则XZ→YZ也成立。这表示如果X可以决定Y,那么在任何集合Z加入到X和Y两侧的情况下,依赖关系仍然成立。  
     • 传递律:若X→Y及Y→Z成立,则X→Z也成立。这表示如果X可以决定Y,且Y可以决定Z,那么X也可以决定Z。  
     范式(层层传递)    
     第一范式(1NF):每个项都是原子项,不能再拆  
     第二范式(2NF):不能存在部分函数依赖,不能看到联合主键    
     肯定满足第一范式,可以存在传递函数  
     第三范式(3NF ):不能存在传递函数依赖    
     肯定满足第二范式  
     BC范式(BCNF)    
     满足3NF,是3NF的增强版  
     在3NF基础上,增删数据不会产生异常  
     第四范式(4NF)    
     不允许存在多值依赖  
     反规范化(提高性能)    
     规范化设计后,数据库设计者希望牺牲部分规范化来提高性能  
     具体方式    
     增加冗余列    
     在多个表中保留相同的列,通过增加数据冗余减少或避免查询时的连接操作。  
     增加派生列    
     在表中增加可以由本表或其它表中数据计算生成的列,减少查询时的连接操作并避免计算或使用集合函数。  
     重新组表    
     如果许多用户需要查看两个表连接出来的结果数据,则把这两个表重新组成一个表来减少连接而提高性能。  
     水平分割表  
     垂直分割表    
     对表进行分割,将主键与部分列放到一个表中,主键与其它列放到另一个表中,在查询时减少l/0次数。  
     模式分解    
     满足数据规范化时需要拆表,过程中有2个判断标准    
      是否保持函数依赖分解:对于关系模式R,有依赖集F,若对R进行分解,分解出来的多个关系模式,保持原来的依赖集不变,则为保持函数依赖的分解。另外,注意要消除掉冗余依赖(如传递依赖)  
      有损无损分解:分解后的关系模式能够还原出原关系模式,就是无损分解,不能还原就是有损  
     • 事务并发:    
     并发三种问题、  
     三级封锁协议  
     • 数据库新技术:    
     数据库安全与备份、  
     反规范化、  
     分布式数据库、  
     缓存数据库  
     数据库集群  
     NoSqI  
    
 
 
 
 
  0 条评论
 下一页