数据库系统的三级模式包括

数据库系统的三级模式包括,第1张

数据库的三级模式是指外模式、概念模式、内模式。

人们为数据设计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,它包括外模式、概念模式、内模式,有效地组织、管理数据,提高了数据库的逻辑独立性和物理独立性。

用户级对应外模式,概念级对应概念模式,物理级对应内模式,使不同级别的用户对数据库形成不同的视图。

所谓视图,就是指观察、认识和理解数据的范围、角度和方法,是数据库在用户“眼中"的反映,很显然,不同层次(级别)用户所“看到”的数据库是不相同的。

美国国家标准协会(AmericanNationalStandardInstitute,ANSI)的数据库管理系统研究小组于1978年提出了标准化的建议,将数据库结构分为3级:面向用户或应用程序员的用户级、面向建立和维护数据库人员的概念级、面向系统程序员的物理级。

(1)存储记录结构设计综合分析数据存储要求和应用需求,设计存储记录格式

(2)存储空间分配存储空间分配有两个原则:①存取频度高的数据尽量安排在快速、随机设备上,存取频度低的数据则安排在速度较慢的设备上

②相互依赖性强的数据尽量存储在同一台设备上,且尽量安排在邻近的存储空间上

从提高系统性能方面考虑,应将设计好的存储记录作为一个整体合理地分配物理存储区域

尽可能充分利用物理顺序特点,把不同类型的存储记录指派到不同的物理群中

(3)访问方法的设计一个访问方法包括存储结构和检索机构两部分

存储结构限定了访问存储记录时可以使用的访问路径;检索机构定义了每个应用实际使用的访问路径

(4)物理设计的性能评价①查询响应时间从查询开始到有结果显示之间所经历的时间称为查询响应时间

查询响应时间可进一步细分为服务时间、等待时间和延迟时间

在物理设计过程中,要对系统的性能进行评价

性能评价包括时间、空间、效率、开销等各个方面

⊙CPU服务时间和I/O服务时间的长短取决于应用程序设计

⊙CPU队列等待时间和I/O队列等待时间的长短受计算机系统作业的影响

⊙设计者可以有限度地控制分布式数据库系统的通信延迟时间

②存储空间存储空间存放程序和数据

程序包括运行的应用程序、DBMS子程序、OS子程序等

数据包括用户工作区、DBMS工作区、OS工作区、索引缓冲区、数据缓冲区等

存储空间分为主存空间和辅存空间

设计者只能有限度地控制主存空间,例如可指定缓冲区的分配等

但设计者能够有效地控制辅存空间

③开销与效率设计中还要考虑以下各种开销,开销增大,系统效率将下降

⊙事务开销指从事务开始到事务结束所耗用的时间

更新事务要修改索引、重写物理块、进行写校验等 *** 作,增加了额外的开销

更新频度应列为设计的考虑因素

⊙报告生成开销指从数据输入到有结果输出这段时间

报告生成占用CPU及I/O的服务时间较长

设计中要进行筛选,除去不必要的报告生成

⊙对数据库的重组也是一项大的开销

设计中应考虑数据量和处理频度这两个因数,做到避免或尽量减少重组数据库

在物理设计阶段,设计、评价、修改这个过程可能要反复多次,最终得到较为完善的物理数据库结构说明书

建立数据库时,DBA依据物理数据库结构说明书,使用DBMS提供的工具可以进行数据库配置

在数据库运行时,DBA监察数据库的各项性能,根据依据物理数据库结构说明书的准则,及时进行修正和优化 *** 作,保证数据库系统能够保持高效率地运行

6

程序编制及调试在逻辑数据库结构确定以后,应用程序设计的编制就可以和物理设计并行地展开程序模块代码通常先在模拟的环境下通过初步调试,然后再进行联合调试

联合调试的工作主要有以下几点:(1)建立数据库结构根据逻辑设计和物理设计的结果,用DBMS提供的数据语言(DDL)编写出数据库的源模式,经编译得到目标模式,执行目标模式即可建立实际的数据库结构

(2)调试运行数据库结构建立后,装入试验数据,使数据库进入调试运行阶段

运行应用程序,测试(3)装入实际的初始数据在数据库正式投入运行之前,还要做好以下几项工作:(1)制定数据库重新组织的可行方案

(2)制定故障恢复规范(3)制定系统的安全规范7

运行和维护数据库正式投入运行后,运行维护阶段的主要工作是:(1)维护数据库的安全性与完整性

按照制定的安全规范和故障恢复规范,在系统的安全出现问题时,及时调整授权和更改密码

及时发现系统运行时出现的错误,迅速修改,确保系统正常运行

把数据库的备份和转储作为日常的工作,一旦发生故障,立即使用数据库的最新备份予以恢复

(2)监察系统的性能

运用DBMS提供的性能监察与分析工具,不断地监控着系统的运行情况

当数据库的存储空间或响应时间等性能下降时,立即进行分析研究找出原因,并及时采取措施改进

例如,可通修改某些参数、整理碎片、调整存储结构或重新组织数据库等方法,使数据库系统保持高效率地正常运作

(3)扩充系统的功能在维持原有系统功能和性能的基础上,适应环境和需求的变化,采纳用户的合理意见,对原有系统进行扩充,增加新的功能

其实微信朋友圈的数据库设计模式无非就是符合了三种设置模式,其中最常用的是第三种。

第一范式(1NF)

在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。

所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一个实例的信息。例如,对于图3-2 中的员工信息表,不能将员工信息都放在一列中显示,也不能将其中的两列或多列在一列中显示;员工信息表的每一行只表示一个员工的信息,一个员工的信息在表中只出现一次。简而言之,第一范式就是无重复的列。

第二范式(2NF)

第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式(2NF)要求数据库表中的每个实例或行必须可以被惟一地区分。为实现区分通常需要为表加上一个列,以存储各个实例的惟一标识。如图3-2 员工信息表中加上了员工编号(emp_id)列,因为每个员工的员工编号是惟一的,因此每个员工可以被惟一区分。这个惟一属性列被称为主关键字或主键、主码。

第二范式(2NF)要求实体的属性完全依赖于主关键字。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性,如果存在,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。为实现区分通常需要为表加上一个列,以存储各个实例的惟一标识。简而言之,第二范式就是非主属性非部分依赖于主关键字。

第三范式(3NF)

满足第三范式(3NF)必须先满足第二范式(2NF)。简而言之,第三范式(3NF)要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在图3-2的员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。简而言之,第三范式就是属性不依赖于其它非主属性。

使用Delhpi可以方便而快速地建立强大的数据库应用程序,可以和Paradox、dbase、Lo cal InterBase Server、Foxpro及ODBC数据源等多种桌面型数据库直接配合使用。

数据库转换方法

1所使用的控件

2TBatchMove控件的使用

TBatchMove允许在一组记录或是整个数据表中执行特种作业,这个控件的主要用途在于 把数据从服务器中卸到本地的数据源供分析或进行其他 *** 作。TBatchMove可以在目的地建立 对应于原数据表内容的数据表,自动将列名及数据类型进行适当的对应 *** 作。

TBatchMove两个特性指明批量移动(Batch Move) *** 作的源表及目的表。Source指定一个 对应于已有的源数据表的数据集(一个Tquery或Ttable控件),Destination指明对应于一个数 据库数据表的Ttable控件,目的数据表可以是已经存在的也可以是不存在的。

Mode特性指明TBatchMove对象所要做的事情:

我们可以根据batCopy模式,对数据库类型进行适当的转换,以下是从dBASE类型到其它类 型之间的转换结果:

数据库转换举例

现有用Foxbase开发的财务程序中的会计科目数据库(kjkmkdbf),系统将升级到Window s环境下开发,数据库将采用Paradox语言。为了沿用该库结构和数据,可采用如下方法进行转 换。

1Datasource1控件:

AutoEdit True

DataSet Table1

Enabled True

Name DataSorce1

2Table1控件:

DatabaseName cw

Name Table1

Readonly False

TableName KJKMK

TableType udBase

Datasource1控件和Table1控件共同定义被转换的源文件,该文件是在别名为cw里的kjk mk,文件类型为Dbase。

3BatchMove1控件:

Destination Table2

Mode balCopy

Name BatchMove1

Sorce Table1

MatchMovel控件定义转换类型为Copy以及源文件、目标文件。

4Datasource2控件:

AutoEdit True

DataSet Table2

Enabled True

Name DataSorce2

Table2控件:

DatabaseName cwdb

Name Table2

Readonly False

TableName KJKMK

TableType uParadox

Datasource2控件和Table2控件共同定义转换后的目标文件,该文件是在别名为cwdb里的 kjkmk,文件类型为Paradox。

6StringGrid1控件:

Datasorce Datasorce1

Name StringGridl

StringGridl网格控件先定义源文件,执行转换后再定义目标文件,主要用于方便查看。

7Button1控件:

OnClck ButtonClck

OndragDrop

Ondragover

OnEnddrag

该控件有一个OnClick事件,表示执行文件类型转换。其代码如下:

procedure TForm1Button1Click(Sender:TObject);

begin

BatchMove1execute;

end;

经上述方法定义,编译执行后,即可将kjkmkdbf文件转换成kjkmkdb文件,然后就可以用 Database Desktop工具对其进行修改调整。

用此方法还可进行其它任意文件的转换

(一)系统数据库类型

数据库是整个农用地分等信息系统的基础,是系统开发设计要考虑的重中之重。在数据形式上,系统数据库包括两大块:一是空间数据库,二是属性数据库。目前的空间数据技术已从以MapInfo为代表的混合型数据库(空间数据库+关系型数据库)发展到以ArcInfo的Coverage为代表的拓展型数据库。鉴于农用地分等属性数据量庞大,为减少数据冗余,提高数据检索的速度,本研究采用空间数据和属性数据分开管理的模式,依据关键字段进行绑定,进行科学索引,从而实现空间数据和属性动态链接和高效整合。

1空间数据库

江苏省农用地分等信息系统空间数据库内容包括以下方面:

(1)土地利用现状图层:全省13个省辖市以1996年土地利用现状图为基础,经变更调绘形成以2000年为基准年的土地利用现状图,以现行的土地分类标准按八大类分类进行信息提取并分层存储,系统分别存储为耕地、林地、水域、未利用地、建设用地等图层。

(2)全省土壤类型图层:以土属为分类单位,比例尺为1:20万。

(3)1996年和2000年全省行政区划图层:在行政区划中精确到乡镇级别,分别提取存储了市名图层、县(区)名图层、乡(镇)名图层、全省行政界线图层、市级行政界线图层、县(区)级行政界线图层、乡(镇)级行政界线图层。

(4)评价单元图层:通过GIS空间叠加功能,利用土地利用现状图、行政区划图和土壤类型图叠加产生的评价单元图层,建立分等评价单元数据库。

2属性数据库

江苏省农用地分等信息系统属性数据库内容包括以下方面:

(1)土壤属性数据:以全国第二次土壤普查为基础,结合全省土壤监测样点数据,建立土壤质量状况数据库,最小单位为土种,包括pH值、有机质含量、表层土壤质地、耕层厚度、障碍层深度、水土侵蚀程度、盐渍化程度数据。

(2)农田水利环境数据:建立了1996~2000年间各乡镇农田水利环境基础数据库,包括灌溉保证率、排水条件数据。

(3)土地利用现状数据:建立了全省13个省辖市的以1996年土地利用现状图为基础,经变更调绘形成的以2000年为基准年的土地利用现状数据库,区分耕地中的详细用地类型差异,标示水田、旱地、荒草地等纳入本次评价范围的用地内容。

(4)全省地形地貌数据库。

(5)农业区划数据:输入了江苏省农业区划数据,把江苏全省划分为6大区划,以乡镇为最小级别,建立全省乡镇的区划归属数据库。

(6)农业耕作制度数据:建立了全省各市、县、乡镇的农业耕作制度数据库,包括指定作物水稻和小麦的播种空间分布状况数据库。

(7)光温生产潜力数据:建立了全省各市、县指定作物水稻和小麦的光温生产潜力和气候生产潜力数据库。

(8)农业投入-产出数据:全省13个省辖市以乡镇为单位,建立了1996~2000年农业生产投入-产出数据库。

(9)作物产量数据:全省13个省辖市以乡镇为单位,建立了1996~2000年的指定作物水稻和小麦的产量数据库。

(10)土地利用详查分类面积数据:全省13个省辖市以乡镇为单位,建立了2000年土地利用详查分类面积数据库。

从数据格式上分,数据库又可分为:①图件数据库:指空间数据以及绑定在空间数据上的相关属性数据,本次江苏省农用地分等建立了以分等单元为记录的属性数据库,并通过关键字段与空间数据关联;②分类统计数据库:包括全省13个省辖市以乡镇为单位的1996~2000年指定作物产量统计数据和全省13个省辖市以乡镇为单位的2000年土地利用详查分类面积统计数据。

(二)系统数据库管理模式

为减少数据存储冗余,同时提高索引速度,江苏省农用地分等信息系统数据文件采用普遍的目录树形式进行管理,按省-市-县行政体系分别存储相关数据。全省建立13个省辖市分目录,分目录下按照各自所含的县(区)建立子目录。根据目前行政管理体系现状,基础资料大多来源于县级行政单位,因此采用县(区)为基本行政单位较为合理,在保证资料来源的同时,也利于资料的分类归档存储。其相对应的空间图件数据也按精度要求分割到县级行政单位,既能减少系统调用数据的吞吐量,同时也满足了系统的精度需求。空间数据、属性数据、文本数据按照各自所属的行政级别归类存储,同时设立数据文件管理器进行目录文件的索引管理,见图3-86。

图3-86 江苏省农用地分等信息系统数据文件管理模式图

(三)系统数据库结构

数据库的结构设计决定了数据之间的调用及接口关系,清晰的逻辑调用关系和统一的数据接口格式有利于数据的组织、管理、调用。

1空间数据库

江苏省农用地分等信息系统空间数据库以矢量图件的形式存在,以分图层的方式管理,包括了全省行政界线、土壤类型、按八大类分别提取的土地利用现状、分等单元等图层。其中,分等单元图层作为农用地分等的基础,考虑到图层本身信息量大,可能影响到系统运行效率,因此所在图层的属性表中只保留了ID字段,通过ID字段与外部属性库绑定,实现分等单元与外部属性库一一对应关系。ID字段是本图层的特征代码,表征了单元的唯一性,能体现出单元的图上位置和行政归属。《农用地分等定级规程》(国土资源大调查专用)和《中华人民共和国行政区划代码》(GB/T 2260-1999)为本研究分等单元代码的编码依据;本研究有1996年和2000年两套行政区划工作底图,为此分等单元特征代码共设14位,依次为江苏省代码(2位)-市代码(2位)-2000年县或区代码(2位)-2000年乡镇代码(2位)-1996年县或区代码(2位)-1996年乡镇代码(2位)-分等单元号(2位)。其中,省、市、县(区)的行政代码按国家统一代码,乡镇级代码在县(区)范围内根据划分分等单元的需要依次编码;分等单元编号的原则是不破乡镇界,即单元号是在同一乡镇内部自行编码。示例:32011501210101,指1996年江苏(32)南京(01)市江宁县(21)由于2000年行政调整变更为南京(01)的江宁区(15)。按行政体系分级编码的优点是有利于空间查询和国土资源管理部门根据工作需求按行政级别分类汇总统计数据。

2属性数据库

江苏省农用地分等信息系统采用关系型数据库来存储数据,优点是结构清晰明了,数据的更新维护方便,通过索引能优化数据库,建立快速的查询浏览(表3-26~表3-30)。

表3-26 行政代码数据结构表

表3-27 土壤属性数据结构表

表3-28 农田水利设施数据结构表

表329 指定农作物投入-产出数据结构表

表3-30 农业耕作制度及农业区划表

(四)系统模型库

系统以《农用地分等定级规程》(国土资源大调查专用)中的相关技术方法和计算模型为基础,在模型库中预先内置了分等计算模型。模型库是动态,它允许专家根据情况动态调整计算模型形式及其参数。系统主要模型的数学计算公式如下:

(1)农用地自然质量分值(Clij)计算公式见式(3-11)。

(2)样点土地利用系数计算公式:

中国耕地质量等级调查与评定(江苏卷)

式中:

Klj´——样点的第j种指定作物土地利用系数;

Yj——样点的第j种指定作物实际单产;

Yj,max——第j种指定作物最大标准粮单产。

(3)等值区土地利用系数计算公式:

中国耕地质量等级调查与评定(江苏卷)

式中:

Klj——等值区内第j种指定作物土地利用系数;

Klj´——参与计算的同一等值区内合格样点第j种指定作物土地利用系数;

n——排除异常数据后参与计算的样点的个数。

(4)样点土地经济系数计算公式:

中国耕地质量等级调查与评定(江苏卷)

式中:

Kcj′——样点的第j种指定作物土地经济系数;

Yj——样点第j种指定作物实际单产;

Cj——样点第j种指定作物实际成本;

Aj——第j种指定作物最高“产量-成本”指数。

(5)等值区土地经济系数计算公式:

中国耕地质量等级调查与评定(江苏卷)

式中:

Kcj——等值区内土地经济系数;

Kcj´——参与计算的同一等值区内合格样点第j种指定作物土地经济系数;

n——排除异常数据后参与计算的样点的个数。

(6)农用地自然质量等指数(Ri)计算公式见式(3-12)和式(3-13)。

(7)农用地利用等指数(Yi)计算公式见式(3-14)和式(3-15)。

(8)农用地经济等指数(Gi)计算公式见式(3-16)和式(3-17)。

如何设计一个好的,可扩展性的数据库

数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。

在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。

以上就是关于数据库系统的三级模式包括全部的内容,包括:数据库系统的三级模式包括、数据库设计分为哪几个步骤、微信朋友圈数据库模式如何设计的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10191302.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存