博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库系统
阅读量:4041 次
发布时间:2019-05-24

本文共 1990 字,大约阅读时间需要 6 分钟。

总述:数据库基础,权当再次温习

 

 

1.数据库模式

答:数据库系统采用外模式、概念模式、内模式三级构成。外模式也称为子模式或用户模式,对应于用户级数据库,是用户看到或使用的那部分数据的逻辑结构。概念模式也称为模式或逻辑模式,是全体数据的逻辑结构和特征的描述,是所有用户的公共视图。一个数据库只有一个概念模式。内模式对应于物理级数据库,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。在数据库系统的三级模式中:模式是数据库的中心与关键;内模式依赖模式,独立于外模式和存储设备;外模式面向具体应用,独立于内模式和存储设备;应用程序依赖于外模式,独立于模式和内模式。

数据库系统的两级独立性是指物理独立性和逻辑独立性。

 

2.数据模型

答:数据模型是显示世界数据特征的抽象,其描述的内容包含三个部分:数据结构、数据操作、数据约束。数据模型主要有两大类:概念数据模型(实体关系模型)、基本数据模型(结构数据模型)。基本数据模型是数据库系统的核心和基础,由数据结构、数据操作、完整性约束三部分组成。概念数据模型是以用户的观点对数据和信息建模,主要用途是数据库设计。常见的数据模型有层次模型、网状模型、关系模型、面向对象模型。

关系模型中存在关系运算,主要的操作有:并、交、差、笛卡尔积、投影、选择、θ连接、除。数据库中存在范式,范式是为了关系模型模型规范化。

 

3.数据库访问接口

答:数据库访问接口是应用程序与数据库之间的连接部分,常见的连接形式有:专用调用、开放数据库互联(ODBC)、Java数据库连接(JDBC)。

 

4.数据库的控制功能

答:并发控制主要是为了解决并发操作带来的数据不一致问题。数据库引入事务的概念,然后使用封锁技术:排他型封锁(X封锁)和共享型封锁(S封锁),针对某些场景建立封锁协议。封锁虽然可以满足事务的要求,但是其引入了死锁的问题。

数据库性能优化的常见手段分为四个方面:硬件升级、数据库设计、索引优化策略、查询优化。 每个方面都有一些具体的操作手法,需要结合在一起使用。

数据库的完整性由各种各样的完整性约束来保证,常见的完整性约束有:完整性约束条件、实体完整性、参照完整性、用户定义的完整性、触发器。

数据库的安全性通过:用户识别和鉴别、数据授权、视图、审计和跟踪四个方面进行处理。数据库的备份通常有热备份、冷备份、日志文件等方式。数据库中数据的恢复要根据故障的不同类型采取对应的恢复策略,故障类型有:事务故障、系统故障、介质故障与病毒破坏、有检查点的。

数据库设计可以分为五个阶段,分别是规划、需求分析、概念设计、逻辑设计、物理设计。

 

5.分布式数据库

答:分布式数据库系统是数据库技术和网络技术结合的产物,基本思想是将集中式数据库中的数据分布与网络上的多台计算机中。分布式数据库具有数据独立性、集中于自治共享结合的控制结构、适当增加数据冗余度、全局一致性可串行性和可恢复性等特点。

分布式数据库的体系结构除了局部DBMS的内模式和概念模式与集中式数据库完全一致外,特别新增了全局DBMS作为相对于局部DBMS概念模式的全局外模式,以及多级映射关系。分布式体系结构从外到内依次是:全局外模式、全局概念模式、分片模式、分布模式、局部概念模式、局部内模式。

数据分片将数据库整体逻辑结构分解为合适的逻辑单位,然后由分布模式定义片段及其副本在各场地的物理分布,主要是提高访问的局部性,利于按用户需要组织数据的分布和控制数据的冗余度。数据分片的方式有:水平分片、垂直分片、混合分片、导出分片。数据分片遵循的原则是:完整性、重构性、不相交性。分布的透明性是指用户不必关心数据的逻辑分片、数据存储的物理位置、局部场地上数据库的数据模型。分布透明性包括分片透明性、位置透明性、局部数据模型透明性。

分布式数据的查询效率不但要考虑查询效率,也要考虑通信的效率。在分布式数据库系统中,查询按照通信模式划分为局部查询、远程查询、全局查询。全局查询需要做化简处理,降低查询和通信的时间损耗,通常的建议是:用片段替换查询树中的全局关系;尽可能将选择和投影等一元操作推向查询树的叶端;合并公共子表达式;消除空关系和冗余度;移除无用的垂直叶片。由于系统中的数据片段和关系存在多个副本的情况,在查询处理的时候要根据副本的特点来降低通信消耗和查询消耗。同样因为副本的存在,在插入信息或者更新信息的时候要兼顾副本的情况,可以采用的策略有:更新到主系统前先更新全部的副本;先更新所有有效节点的副本再更新主系统;先更新主副本再更新主系统,最后主副本广播更新到其他从属副本;采用快照的方式先更新数据到快照,等一段时候后再做全系统更新。

 

6.数据仓库技术

答:数据仓库和数据挖掘技术通常是合并到一起进行学习的,数据仓库保存数据挖掘需要的数据,数据挖掘根据数据的特点选择合适的算法进行处理。

转载地址:http://sqpdi.baihongyu.com/

你可能感兴趣的文章
Idea导入的工程看不到src等代码
查看>>
技术栈
查看>>
Jenkins中shell-script执行报错sh: line 2: npm: command not found
查看>>
8.X版本的node打包时,gulp命令报错 require.extensions.hasownproperty
查看>>
Jenkins 启动命令
查看>>
Maven项目版本继承 – 我必须指定父版本?
查看>>
Maven跳过单元测试的两种方式
查看>>
通过C++反射实现C++与任意脚本(lua、js等)的交互(二)
查看>>
利用清华镜像站解决pip超时问题
查看>>
[leetcode BY python]1两数之和
查看>>
微信小程序开发全线记录
查看>>
PTA:一元多项式的加乘运算
查看>>
CCF 分蛋糕
查看>>
解决python2.7中UnicodeEncodeError
查看>>
小谈python 输出
查看>>
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
查看>>
python:如何将excel文件转化成CSV格式
查看>>
机器学习实战之决策树(一)
查看>>
机器学习实战之决策树二
查看>>
[LeetCode By Python]7 Reverse Integer
查看>>