5.1 数据库基本知识
1.数据库概念
为了一定的目的,以特定的结构组织、存储和应用的相关联的数据集合体,称为数据库。
2.数据库的主要特征
数据集中控制:保证不同用户和应用可以共享数据;
数据具有独立性:数据独立于应用程序,提高了数据库应用系统的效率和稳定性;
数据冗余度小:数据统一定义、组织和存储,集中管理,避免了不必要的数据冗余,提高了数据的一致性;
复杂的数据模型:采用复杂的数据模型组织和管理数据是与文件方式的一个本质区别。
数据保护功能:对数据库设置密码和存取权限,拒绝非法用户进入数据库,以确保数据的安全性、一致性和并发控制。
3.数据的组织方式
数据是信息的具体表达形式。为了表达有意义的信息内容,数据必须按照一定的方式进行组织和存储。
- 数据项:是定义数据的最小单位,是数据记录中最基本的、不可分的数据单位。
- 域:是数据项的取值范围。数据项的值可以是数值、字母、汉字等的形式。
- 记录:由若干相关联的数据项组成,是关于一个实体的数据总和。
- 型:是同类记录的框架。
- 值:是记录反映实体的内容。
- 标识符:标识每个记录的数据项,也称“关键字”
- 文件:是给定类型记录的全部具体值的集合,用文件名称标识。
- 数据库:是具有特定联系的数据集合体。是比文件更大的数据组织。其内部的结构是文件的集合,这些文件直接具有着种联系,不能孤立存在。
4.数据间的逻辑关系
数据间的逻辑关系主要是指记录与记录之间的联系。
5.数据模型
数据模型是指数据库系统中关于数据和联系逻辑组织的形式表示。
传统数据模型:
层次模型:将数据组织成有向有序的树状结构,能很好的表达1:N的关系。
优点:层次分明,组织有序。
缺点:导致数据冗余,难以表达多对多的关系。
网络模型:将数据组织成有向图的结构,用连接指令或指针来确定数据间的显式连接关系,且具有多对多的数据组织方法。
优点:能描述多对多关系,数据冗余小
缺点:结构复杂,限制它在空间数据表达中的应用
关系模型:以数据表的形式组织数据,不分层也无指针,实体本身的信息和联系都存在这个二维表中。
优点:结构灵活,易理解,易维护。具有严格的数学基础。
缺点:不适合描述非结构特征数据。
5.2 关系数据库模型
1.关系数据库的基本概念
- 关系、记录:·一个表格就是一个关系。表中的每一行称为一个记录,也称为“元组”.
- 域:数据项的取值范围。
- 候选码:关系中唯一标识一个记录的属性或属性组。
- 主码:·一个关系中候选码可能有多个,选定一个作为主码。
关系的性质:
表中的关键字属性必须有唯一的名字。
行的顺序不是影响因素。
任意两个记录不能完全相同。
表格不能嵌套
每一列中分量是同一类型的数据。
关系完整性的约束:
实体的完整性:所有主码对应的属性值不能为空.
参照完整性:定义外码与主码之间的引用规则,即外码必须是另一个表的主码的有效值.
用户自定义完整性:针对某一具体关系数据库的约束条件.
2.关系代数
关系代数是一种抽象的查询语言,用关系的运算来表达查询,是作为研究关系数据语言的数学工具。
传统关系运算:
专门的关系运算
选择( Selection )
投影(Projection)
等值连接(Join )
3.数据查询
通常,查找一个数据库记录是一个连续的过程。计算机从头开始进行查询,直到找到需要的项目为止。
二分法查找程序:如果已经对数据进行了排序,数据查找效率就可得到提高。二分法查找程序是计算机快速查找数据的典型例子。
字符处理运算符:CN包含,NC不包含,LK相似,IN字段包含。
结构化查询语言(StructuralQueryLanguage):为实现数据库查询而专门设计的一种标准化语言。应用广泛,可以进行独立的、分散的数据库连接。
5.3 空间数据库管理系统
1.空间数据库概述
概念:空间数据库是某一区域内关于一定地理要素特征的数据集合。
特点:数据量特别大。属性数据和空间数据联合管理。数据应用范围广泛。
2.地理空间数据管理模式
文件--关系数据库混合管理模式
文件系统管理几何数据,数据库管理系统(DBMS)管理属性数据,它们之间是通过目标标识码进行连接的。
全关系式数据库管理模式
空间数据和属性数据统一用现有的RDBMS管理,在标准的DBMS上开发可以处理空间对象的功能。
特点∶数据存取较快。涉及空间关系查询、对象嵌套等复杂的空间操作时效率较低。
对象--关系数据库管理模式
将复杂的数据模型作为对象放入关系数据库中,并提供索引机制和简单的操作。这种扩展后的数据库称为对象——关系数据库。
特点:有效解决空间数据变长记录的存储问题。用户对空间对象的再定义较复杂。
面向对象技术(Object Oriented Technology)
是对问题领域进行自然分割,以对象为基础,以消息来驱动对象执行处理的程序设计技术。
优点:较符合人的认识规律,易于理解;对象与真实世界相对应,易于描述客观的现象与实体;提高了软件的可扩充性。
对象含有数据和操作方法的独立模块,可以认为是数据和行为的统一体。
一个对象object是一个三元组:object = (ID,S,M)
- ID为对象标识,说明对象存在的独立性。
- S是具有一组描述特征的属性,表明对象在某一时刻的状态。
- M具有一组表示行为的操作方法,用以改变对象的状态。
基本概念
类:共享同一属性和方法集的所有对象的集合。用于定义抽象数据类型,是面向对象的核心内容。
方法:“对象”可执行的所有操作。是针对“对象”的属性进行操作的各种函数或指令等。(ATM机的功能)
消息:对象之间进行通信的一种规格说明。一般由接收信息的对象,消息名及实际变元组成。(取款的金额,账号)
协议:一个对象对外服务的说明。(手机的通话,拍照)
封装:将对象的内部组成(属性组成和方法实现)和外部表示(方法接口)集成化,使之不受外界影响。
3.面向对象数据库
面向对象技术的特性
- 抽象性:忽略事物中与当前目标无关的非本质特征,从而找出事物的共性,并把具有共性的事物划为一类,得到一个抽象的概念。(学生,忽略姓名身高)
- 继承性:子类自动共享父类之间数据和方法的机制。被继承的类称为超类,继承的类称为子类。
- 多态性:同一消息被不同的对象接受时可产生完全不同的行动,这种现象称为多态性。
- 对象标识唯一性:系统为对象定义并维护唯一的标识符,这一标识符独立于对象本身的内容和地址,并支持对象的共享。
- 复合性:一组对象可以是另一个对象的一部分,对象之间产生一个嵌套层次的结构。
实现方式:1.面向对象程序设计模式;2.扩展RDBMS;3.建立全新的支持面向对象数据模型。
- 扩展关系数据库管理系统(RDBMS ),在其中增加面向对象的特性。
优点:能充分利用RDBMS的功能,可使用或是扩展SQL查询语言。可以大大减少开发工作量。
缺点:IO开销大。
- OODBMS
优点:全面支持面向对象数据模型,可扩充性较强,操作的效率高。
缺点:数据库结构复杂,并且开发工作量很大。
5.4 空间数据库设计原理与方法
空间数据库设计流程:划分阶段与工作任务
1.需求分析
概念:分析用户的需要与要求,它是设计数据库的起点,分析结果将直接影响到后面各个阶段的设计与最终的应用效果。
任务:充分了解原系统;明确用户需求;确定新系统的功能;考虑扩充。
过程:采用数据流分析法进行整理
数据流图(Data Flow Diagram):便于用户理解的系统数据流程的图形表示,能精确地在逻辑上描述系统的功能、输入、输出和数据存储。
数据字典(Data Dictionary):数据库中各类数据描述的集合,或者说是元数据及数据操作描述的集合。它的主要功能是存储和检索元数据。
2.概念结构设计
把用户需求抽象为概念模型的过程就是概念结构设计。概念结构是各种数据模型的共同基础。
E-R模型(Entity Relationship Model ) 即实体联系模型,是概念设计的主要方法和最常用的表达形式。
以矩形框表示实体类型;以菱形表示联系;以椭圆表示实体类型和联系类型的属性。
联系和实体之间以直线相连,并在直线的两端标明联系的种类( 1:∶1,1:M或M: N)
弱实体的划分与依赖联系∶有些实体对另外一些实体有很强的依赖关系。
子类和超类︰某个实体类型中所有实体同时也是另一实体类型中的实体。
子类继承超类的所有属性,子类本身还可以包含其他属性。
- 选择局部应用
在数据流程图中选择一个适当层次的数据流图,作为设计分E-R图的出发点。通常以中层数据流图作为设计分E-R图的依据。
- 设计分E-R图
确定实体类型∶如客户和销售商。
确定联系类型:销售活动或订货活动。
确定实体类型间的联系,画出ER图。
确定实体类型与联系类型的属性∶如编号和商品名称。
- 分E-R图的集成
3.逻辑结构设计
逻辑结构设计目标是把概念结构设计好的基本E-R图转换为与数据库管理系统的数据模型相符合的逻辑结构,并对其进行优化。
步骤:
E-R模型向数据模型的转换是逻辑数据设计阶段的主要步骤之一,这种转换要遵循一定的规则。
4.物理结构设计
设计逻辑结构的最佳存取方法、存储结构和存放位置以及合理选存储介质等,即设计最适合的物理环境的过程。
内容:选取存储方法,设计存储结构,确定存放位置,选择存储结构。
考虑因素︰时间效率、空间效率、维护代价、用户要求。
5.空间数据库实施
在空间数据库实施的过程中,应当尽量按照实施计划进行实施。如出现任何改动,都应当以书面形式备案。
步骤:数据检查,数据规整,数据入库,数据处理与分析,数据输出。
数据库更新:空间数据动态更新系统。
- 实施案例
在现有测绘数据及规划数据的基础上,遵循国家标准和测绘行业标准、规划行业标准等,形成空间数据标准体系。
5.5 空间数据库的发展趋势
1.分布式空间数据库技术
分布式空间数据库(Distributed Spatial Database, DSDB)是使用计算机网络把面向物理上分散,而管理和控制又需要不同程度集中的空间数据库连接起来,共同组成一个形式上统一的数据库。
特点︰可靠性,自治性,模块性,高效性。
分布式空间数据组织管理
1.完全底层开发
优点:针对性强,开发具体的功能。方便增加新的功能。
缺点:工作量大,开发周期长.
2.商业产品的基础上二次开发
优点:开发周期短,可及时提供应用。技术难度低。
2.空间数据仓库技术
数据仓库(Data Warehouse)是指面向主题的、集成的、随着时间变化的数据集合,用以支持管理决策。
空间数据仓库是在数据仓库中引入了空间维数据,是GIS技术和数据仓库技术相结合的产物,增加了对空间数据的存储和分析能力。
特点:空间数据仓库的组织是面向主题的;空间数据仓库是面向集成的;对信息添加空间标志;记录数据的时间序列。
体系结构:
3.数据挖掘
数据挖掘(Data Mining )也称为数据库中的知识发现,是指从大量数据中挖掘出隐含的、先前未知的、对决策有潜在作用的知识和规则的过程。
方法:
- 统计分析方法
采用统计学的方法,对社会、经济或地理现象的结构比例,事物之间的联系,或影响因素进行分析。包括了地统计分析方法、对比分析法,相关分析法,因素分析法,时间序列法等。
- 基于概括的方法
面向属性的归纳方法,将空间和非空间属性的关系概括成高层次的概念知识。它需要背景知识,即概念层次体系。
聚类方法:统计分析的一个分支,不需要背景知识(物以类聚)。
空间关联规则方法:如牛奶-黄油规则(90%),表明90%买牛奶的顾客会同时买黄油。