网站维护会导致打不开网页吗?,东凤镇做网站公司,四川建设工程网,时装网站建设的背景计算机数据库三级刷题总结#xff08;博主89分已过#xff0c;总结的内容分享#xff09; 文章目录 计算机数据库三级刷题总结#xff08;博主89分已过#xff0c;总结的内容分享#xff09;一、 数据库设计阶段二、事务相关三、数据库设计顺序四、数据库三级模式与二层映…计算机数据库三级刷题总结博主89分已过总结的内容分享 文章目录 计算机数据库三级刷题总结博主89分已过总结的内容分享一、 数据库设计阶段二、事务相关三、数据库设计顺序四、数据库三级模式与二层映像五、应用服务器与Web服务器六、数据库应用系统功能层次七、需求分析内容八、数据库恢复与索引九、事务并发控制与预防死锁十、其他知识 一、 数据库设计阶段
逻辑设计阶段包含人物逻辑结构设计、数据库事务概要设计、应用程序概要设计三部分。概念设计 进行系统总体框架设计。每个实体集要有唯一名字一般用名词或名词短语命名。 物理结构设计 目标实现空间利用率高、较高访问效率、较低维护成本。评估从时间、空间、维护代价多种方案方面进行。
二、事务相关
事务与用户交互坏处降低系统并发度增加死锁数量破坏检查点效果。数据一致性数据保持一致在分布式系统中指多节点数据是否一致关联数据逻辑关系是否正确完整。事务特性ACID 原子性事务中的操作要么全部执行要么全部不执行。一致性事务执行前后数据的完整性约束保持不变。隔离性多个事务并发执行时一个事务的执行不能被其他事务干扰。持久性事务一旦提交对数据的修改就永久保存到数据库中。
三、数据库设计顺序
需求分析→概念结构设计→逻辑结构设计→物理结构设计→实施阶段→运行维护。
需求分析进行需求调查分析、整理和表达需求信息形成需求说明书如DFD数据流图和DD数据字典等。概念结构设计将需求分析得到的用户数据抽象为信息结构概念模型最普遍的是实体关系E—R模型。逻辑结构设计把概念结构转化为特定DBMS支持的数据模型。步骤为①将概念模型转化为一般的关系、网状、层次模型②将转化来的模型向特定DBMS支持的数据模型转化③优化数据模型。物理结构设计为特定数据模型选取最适合应用要求的物理结构。实施 建立实际数据库结构用DDL定义数据库定义基本表、索引、约束、视图等。装入数据组织数据入库是此阶段最主要工作。编制和调试数据应用程序。 运行维护 试运行应用程序调试完成且有一小部分数据入库后对数据库进行联合调试。运行阶段由数据库管理员管理与维护包括数据库的转储和恢复、数据的安全性完整性控制。
四、数据库三级模式与二层映像
三级模式结构 外模式面向用户用户通过数据库操纵语言DML操作体现用户观。概念模式用数据模式描述语言DDL定义体现整体观。内模式描述存储方式和物理结构体现存储观。 二层映像 外模式/模式映像逻辑独立性每个外模式都有对应映像定义外模式与模式的对应关系一般在外模式中描述。当模式改变时修改此映像可使外模式不变应用程序也无需修改保证数据与程序的逻辑独立性。模式/内模式映像物理独立性唯一存在于模式和内模式之间定义数据全局逻辑结构和存储结构的对应关系。两级模式结构可能不同此映像保证了数据库外模式的稳定性除非需求变化否则应用程序无需修改。
五、应用服务器与Web服务器
应用服务器通过各种协议将商业逻辑暴露给客户端程序客户端调用其商业逻辑如同调用对象方法。Web服务器 解析HTTP协议接收到HTTP请求后返回HTTP响应如HTML页面。可响应静态页面、图片进行页面跳转或委托其他程序如CGI脚本、JSP脚本等生成动态响应。企业WEB服务器是企业网络用户信息交流平台是信息化应用入口一些应用系统集成在其上。其代理模型简单只传递请求给处理程序提供执行环境。虽不支持事务处理或数据库连接池但可配置策略实现容错性和可扩展性。
六、数据库应用系统功能层次
表示层用于显示数据和接受用户输入数据一般为Windows应用程序或Web应用程序。业务逻辑层是表示层和数据访问层的桥梁负责数据传递和处理。数据访问层实现对数据的保存和读取操作可访问关系数据库、文本文件或XML文档等。数据持久层以程序为媒介将表现层或服务层的数据持久化位于物理层和数据访问层之间。
七、需求分析内容
数据处理需求分析从数据组织与存储设计角度辨识数据项和数据结构与功能需求分析结果组成数据字典形成“数据规范说明书”。功能需求分析针对DBAS应具有的功能分析是核心环节分为数据处理需求分析与业务规则需求分析。从数据访问和处理角度明确数据访问操作可从用户视图出发汇总分析结果。性能需求分析描述系统应达到的性能指标。其他需求分析 存储需求分析估计DBAS系统数据存储量。安全需求分析用于数据库安全设计防止非法使用和攻击。
八、数据库恢复与索引
双机热备属于数据库恢复技术保证介质破坏后数据完整性。使用索引原则 在需经常搜索的列、主键、经常用于连接、范围搜索、排序、where查询子句引用效率高、Order By和Group By子句出现的列上创建索引。 文件组织形式 散列文件利用散列存储优点是随机存放、插入删除方便、存取速度快、节省存储空间缺点是不能顺序存取只能按关键字随机存取询问方式受限多次操作后可能需重组。堆文件基本表数据量少且操作频繁时适用无需建立索引维护代价低虽访问效率低但数据量少时定位时间短。顺序文件文件信息存于连续物理块支持顺序和随机存取顺序存取速度相对快缺点是不能动态增长不利于插入和删除适用于查询条件定义在查找码上的情况。聚集文件将关联关系记录存储在一起适合频繁多表连接查询可改善查询效率。
九、事务并发控制与预防死锁
事务是并发控制基本单位保证事务ACID特性是重要任务多个事务并发操作可能破坏其特性。预防死锁原则 各个事务应顺序访问共享资源分解复杂大事务。按同一顺序访问对象。合理设置事务隔离性级别。使用绑定连接。灵活使用显示加锁技术。
十、其他知识
顺序图与活动图顺序图描述对象自身及对象间信息传递顺序活动图描述系统、用例和程序模块中逻辑流程的先后和并行次序。触发器前触发型触发器在操作语句执行前激活后触发器在语句执行后激活。数据库文件每个数据库有且仅有一个主要数据文件可多个次要数据文件至少有一个日志文件也可多个日志文件不属于文件组一个文件不能是多个文件组的成员。强制存取控制规则主体许可证级别大于或等于客体密级时才能读取等于客体密级时才能写。数据库重组与重构重组不修改原设计逻辑和物理结构重构要部分修改数据库模式和内模式。索引相关 多属性索引中索引属性按区分度排序。散列索引检索速度快但不能用于范围查询。 分布式数据库 传输代价I/0代价 CPU代价 通信代价。查询优化目标使通信代价最省。数据分配方式集中式、分割式、全复制式、混合式。 SQL Server恢复模式简单恢复无日志备份自动回收日志空间最新备份后更改不受保护只能恢复到备份结尾、完整恢复需日志备份可恢复到任意时点、大容量日志恢复需日志备份是完整恢复附加模式允许高性能大容量复制操作减少日志空间使用量某些情况下需重做更改不支持时点恢复。数据库应用系统实现与部署包括建立数据库结构、数据加载、事务和应用程序编码及测试、系统集成测试与试运行、系统部署。IDEF0用于描述企业重要过程活动以图形表示输入在框图左侧输出在右侧控制在上方机制在下方。事务概要设计内容事务名称、所访问关系表及属性、处理逻辑、事务用户。活锁线程资源冲突激烈不断尝试获取资源却失败状态变化但无法达到目的与死锁不同活锁可能自动解开。存储过程可接受多个输入和输出参数。唯一索引保证索引键值不重复多列唯一索引确保索引列值组合唯一与非聚集索引无限定关系。Oracle安全控制机制分为数据库级通过用户身份认证和授予系统权限保证、表级、行级和列级通过授予或回收对象特权保证用户分为DBA用户和普通用户。数据库性能优化单纯增加数据库CPU数量不一定提高查询速度RAID1提高读速度、加强可靠性但磁盘利用率低、写速度未提高数据库管理员需深入了解数据库和业务系统。反规范化方法增加派生冗余列、增加冗余列、重新分组、分割表和新增汇总表等增加冗余列可避免查询连接操作。数据备份 静态转储保证数据有效性但降低数据库可用性。动态转储提高数据库可用性但数据有效性无保证需结合日志文件保证数据一致性。备份策略考虑因素备份空间、时间等。备份方式完全转储对所有数据转储占用时间和空间多、差量转储对最近一次完全转储以来变化进行转储速度快、占用空间小恢复速度快、增量转储只复制上次转储后变化部分所需时间和空间短但只能与完全转储配合恢复恢复时间长。 SQL Server系统数据库只有tempdb数据库不需要备份每次SQL Server启动时会重新新建。分布式数据库特征本地自治、非集中式管理、高可用性具有位置独立性、数据分片独立性和数据复制独立性形成的分布透明性。共享磁盘结构处理机有独立内存通过互联网共享磁盘可克服共享内存结构问题但有通信代价。分类器构造方法统计方法贝叶斯法和非参数法、机器学习方法决策树法和规则归纳法、神经网络方法BP算法K - means属于聚类算法。SQL server排名函数 RANK()返回结果集分区内每行排名排名可能不连续。DENSE_RANK()返回排名无间断始终连续。ROW_NUMBER()返回结果集分区内行序列号从1开始。NTILE()将行分发到指定数目组中返回行所属组编号。 数据库存储方法 聚集将经常一起使用、有公共列值的多个表数据行存储在一起。稠密索引数据文件每个查找码值在索引文件中都对应一个索引记录。 RAID1磁盘阵列特点镜像磁盘阵列数据百分百备份提供最高数据安全保障提高读速度加强系统可靠性磁盘利用率低冗余度50%写速度未提高适用于存放重要数据支持“热交换”。QPS与TPS定义 QPSQueries Per Second每秒查询率衡量服务器每秒响应查询次数。TPSTransactionsPerSecond事务数/秒软件测试结果测量单位一个事务指客户机向服务器发送请求并得到响应的过程。 DFD数据流图元素表示数据流用箭头处理用矩形框数据存储用圆角矩形框外部项用圆角框或者平行四边形框。数据库应用系统层次设计任务 表示层进行人机界面设计。业务逻辑层梳理业务活动表示为系统架构。数据访问层设计操作数据库的事务。数据持久层进行应用系统存储结构设计。 分区表数据操作只涉及部分数据时可考虑建立。汇总表将频繁使用统计操作中间结果保存其中降低数据访问量和CPU计算量。复合索引用户在多个列上建立的索引可代替多个单一索引查询时最好将WHERE条件顺序作为索引列顺序效率最高。主索引在数据文件主码属性集上建立的索引。顺序图消息表示对象间通信用对象生命线之间水平消息线表示箭头说明消息类型可表示递归过程消息可创建和销毁对象可带条件条件不互斥时消息可能并行发出。触发器类型 DML触发器由INSERT、UPDATE、DELETE等DML语句产生事件触发分为AFTER触发器在DML事件发生后执行只适用于数据表和INSTEADOF触发器在DML事件发生前执行可用于数据表和视图同一操作只能定义一个还可按触发事件类型分为INSERT、UPDATE、DELETE触发器。DDL触发器由执行DDL语句产生事件触发用于执行数据库级管理任务如审核和规范数据库操作。LOGON触发器响应LOGON事件登录触发可跟踪用户登录活动。 删除架构选项使用CASCADE选项会删除架构及其所有架构对象使用RESTRICT选项若架构包含对象则拒绝删除。SQL Server系统数据库安装后自动安装master、msdb、model、tempdb和Resource数据库master记录其他数据库物理存储位置msdb存储作业信息Resource是只读数据库包含系统对象。强制存取控制规则主体许可证级别不低于客体密级才能读取不高于客体密级才能写。多磁盘存储系统将基本表和索引放不同磁盘可提高文件读写速度。分布式数据库管理系统组件 全局数据库管理系统核心提供分布透明性协调全局事务执行支持全局应用。局部数据库管理系统负责创建和管理局部数据库提供场地自治能力执行全局应用及子查询。 数据划分方法 范围划分有利于范围查询及点查询。轮转法适合扫描整个关系的应用可并行读取数据负载均衡。散列划分适合点查询。 数据仓库目的集成企业数据形成面向分析的数据环境支持信息性、决策性分析应用。TOP限定结果集 WITH TIES包括最后一行取值并列的结果。TOP n取查询结果前n行数据。TOP n percent取查询结果前n%行数据。 公用表表达式将查询结果集命名可多次引用语法格式为WITH公用表表达式标识符(列表…列表) AS (SELECT语句)。集合运算交intersect、并union、差except。删除函数语法DROP FUNCTION。SQL Server触发器表INSERTED表用于存储INSERT和UPDATE语句影响的行副本。SQL Server用户自定义函数类型标量函数和表值函数。权限转授选项授权语句中加上WITH GRANT OPTION选项可使用户将权限转授给其他用户。非预期事务内部故障如运算溢出、并发事务死锁、违反完整性限制等故障不能由事务程序处理。分布式数据库特征本地自治、非集中式管理、高可用性。数据挖掘类型从销售交易数据库找出物品关系属于关联或关联分析、关联规则挖掘。DATEADD()函数在日期中添加或减去指定时间间隔语法为DATEADD( datepart, number, date)。内存、CPU、存储相关内存增加可提高数据处理效率CPU主频提高可增加单位时间处理数据量SLC成本高、容量小、速度快MLC容量大、成本低、速度慢。网络带宽定义单位时间1秒钟内能传输的数据量原指通讯线路或设备传送信号范围网络中是指规定时间内从一端流到另一端的信息量即数据传输率。数据库物理设计内容数据库逻辑模式描述、文件组织与存取设计、数据分布设计、确定系统配置、物理模式评估。需求分析过程包括标识问题、建立需求模型、描述需求、确认需求。DFD和IDEF0可用于建立需求模型IDEF2用于系统模拟建立动态模型。降低死锁发生法则按同一顺序访问资源、避免事务中的用户交互、采用小事务模式缩短事务长度减少锁占用时间、尽量使用记录级行锁少用表级锁、使用绑定连接使应用程序连接相互合作。COUNT函数区别COUNT (*)返回表的行数不过滤null和重复行COUNT (表达式)过滤null值值为null的行不计数不加distinct关键字会过滤重复行。触发器定义选项区别使用FOR或者AFTER选项定义的为后触发的触发器在引发操作成功且约束检查完成后执行使用INSTEAD OF选项定义的为前触发器执行触发器替代引发的SQL语句操作。游标关键字作用 NEXT返回紧跟当前行后的数据行首次操作返回结果集第一行当前行递增为结果行。PRIOR返回行设为当前行。FIRST设置第一行为当前行。LAST设置最后一行为当前行。 SQL Server 2008数据库文件大小主要数据文件大小最小不能小于3MB。主文件组相关主(PRIMARY) 文件组包含主要数据文件和未明确分配给其他文件组的数据文件系统表页均在主文件组日志文件不在文件组内数据库只有一个主文件组可多个用户定义文件组。SQL Server特殊用户 Guest特殊数据库用户常作为匿名访问者使用。sa系统定义的数据库登录账户一个登录账户可映射为多个数据库用户成为合法用户后除有系统视图查询权限外无其他操作权限。 备份关键字 差异备份WITH DIFFERENTIAL 。累计备份WITH CUMULATIVE。 无共享结构被认为是支持并行数据库系统的最好并行结构通过最小化共享资源降低资源竞争概率可扩展性高适合OLTP应用。XML数据库适用场景适合管理复杂数据结构的数据集数据有层次特征时便于操作。三层B/S结构系统将数据处理功能分布在表示层客户端由Web浏览器实现、应用层Web应用服务器实现业务规则、数据层数据库服务器通过DBMS完成数据存储和存取。分割表调优方法优缺点 水平分割增加应用复杂度查询所有数据需union操作。垂直分割数据行变小数据页存更多数据查询减少I/O次数提高性能但查询所有数据需Join操作。 数据库角色权限 db_datawriter有增、删、改、查所有用户表数据的权限。db_accessadmin有添加和删除数据库用户的权限。db_backupoperator有备份和恢复数据库的权限。db_owner有创建数据库对象的权限。 游标参数意义ABSOLUTE { n| nvar}n或nvar为正返回游标第一行开始的第n行并设为新当前行为负返回游标最后一行开始之前的第n行并设为新当前行为0不返回行。n为整数常量nvar数据类型为smallint、tinyint或int。SQL Server固定数据库角色及权限 db_owner可进行数据库全部操作包括配置、维护和删除。db_accessadmin可添加或删除数据库用户。db_securityadmin可管理数据库角色、成员以及语句和对象权限。db_ddladmin可执行数据定义语言(DDL)。db_backupoperator可备份数据库和日志。db_datareader可查询数据库所有用户数据。db_datawriter可插入、删除和更新数据库所有用户数据。db_denydatareader不允许查询数据库所有用户数据等同于对所有表和视图授予DENY SELECT权限。db_denydatawriter不允许INSERT、DELETE和UPDATE数据库所有用户数据。 T-SQL恢复语句恢复数据库使用RESTORE DATABASE语句恢复事务日志使用RESTORE LOG语句。局部数据模型透明性处于分配模式与局部概念模式之间用户编写应用程序需了解全局数据分片、副本复制及场地位置分配情况但无需了解各场地上数据库的数据模型。分布式数据库数据分配方式 集中式所有数据片段在一个场地上。分割式全局数据只有一份分割成若干片段每个片段在特定场地上。全复制式全局数据有多个副本每个场地都有完整副本。混合式全局数据分为若干子集每个子集在一个或多个场地上场地未必保存所有数据。 索引建立语句在SQL语言中建立索引使用CREATE INDEX语句一般格式为CREATE [UNIQUE] INDEX 索引名 ON 表名 (列名 [次序]列名 [次序]) INCLUDE (属性名)WHERE 约束条件。hash索引原理传统索引基于“比较”理想情况是不比较直接存取记录需在记录存储位置和关键字间建立对应关系fhash函数通过此函数可直接找到记录存储位置。分布式数据库查询相关 通信代价大原因各个站点分片间的连接和并操作。分布透明性层次分片透明性、位置透明性、局部数据模型透明性分片透明性是最高层次。目标本地自治、非集中式管理、高可用性、位置独立性、数据分片独立性等。 数据水平分片从关系行元组角度按条件划分为不同片断每一行至少属于一个片断以便重构关系。并行数据库划分技术 轮转法对关系顺序扫描元组按顺序存储到不同磁盘保证均匀分布。散列划分选定散列函数对元组基于划分属性散列按散列值存储到相应磁盘。范围划分按关系中某个属性取值范围划分数据文件并存到不同磁盘。轮转法适合扫描整个关系的应用能充分发挥并行性。 数据字典内容是对系统中各类数据描述的集合包括数据项、数据结构、数据流、数据存储和处理过程5个部分在数据库设计中很重要。数据模型构成由数据结构、数据操作和完整性约束三部分构成完整性约束是限定数据及联系的规则保证数据正确、有效、相容实体完整性规定主码属性不能为空。死锁检测方法周期性检查事务等待图。redo和undo操作原因及对象系统故障造成数据库不一致一是未完成事务更新可能写入数据库二是已提交事务更新可能在缓冲区未写入。对故障发生前已提交事务有BEGIN Transaction和commit做redo操作对未完成事务只有BEGIN Transaction无commit或rollback做undo操作。模式分解要求保证分解具有”无损连接性”连接重组可精确恢复原数据表和”保持函数依赖”原关系模式属性隐含关系在分解后不丢失。三层架构优缺点三层架构将更多任务传至服务器端计算增加网络通信量运行速度受网络制约在适用Internet、维护方面比C/S强在运行速度、数据安全、人机交互方面不如C/S。SQL Server Agent组件及作用是任务规划器和警报管理器可将周期性活动定义为任务自动运行系统管理员可利用其接收警告信息定位问题提高管理效率主要包括作业、警报和操作组件。仅具登录权限用户查询范围对SQL Server只能查询系统数据库中有关SQL Server的一些系统信息即master、msdb数据库部分数据。DATEDIFF函数作用及语法可返回两个日期之间的天数语法为DATEDIFF (datepart, startdate, enddate)startdate和enddate为合法日期表达式。数据库恢复顺序①恢复最近的完全数据库备份②恢复完全备份之后的最近的差异数据库备份③按日志备份的先后顺序恢复自最近的完全或差异数据库备份之后的所有日志备份。避免活锁策略DBMS采用先来先服务(FIFS) 策略处理事务数据操作请求按事务请求加锁先后顺序排队锁释放后分配给队列第一个事务避免活锁。数据库性能优化方面 分析阶段确定性能等非功能性需求及量化指标。设计阶段数据库逻辑设计规范化合理冗余设计主键、外键、字段考虑数据库物理存储和环境利用文件组分散I/O操作提高并发能力。系统设计阶段系统结构设计影响性能OLTP系统可选择C/S或三层C/S结构归纳业务逻辑在数据库编程实现减少网络流量利用数据库预编译和缓存功能根据需求初步设计索引。编码阶段程序员具备优化意识减少客户端大数据量循环操作用SQL语句或存储过程代替注意SQL语句优化如少用SELECT *注意事务和锁合理使用临时表、表变量慎用游标和触发器尽量使用索引。硬件优化使用基于硬件的RAID提供更佳性能避免占据系统CPU周期利用数据库分区技术平衡I/O访问避免I/O瓶颈。事务处理调优处理数据库并发操作带来的数据不一致问题并发控制主要方法是封锁调优考虑事务锁个数越少越好、锁类型读锁有利、持有锁时间越短越好。 SQL Server 2008备份方式完整备份、差异备份、事务日志备份、文件和文件组备份。分布式数据库操作顺序先进行数据分片对关系操作再数据分配对分片结果操作分片是全局关系的映像分配是物理存放场地的映像。使用索引原则重复强调在需要经常搜索的列、主键、经常用于连接、范围搜索、排序、where子句的列上创建索引。触发器数量限制一个表上可以建立多个后触发器而只能建立一个前触发器。