第六章 RDBMS 的扩展 关系模型中概括与聚合的扩展 支持共享与递归的分子对象概念 关系查询语言 QUEL 的扩展及其支持 关系模型中的抽象数据类型 XSQL 语言的扩展 嵌套的关系模型 NF2.

Slides:



Advertisements
Similar presentations
首 页 首 页 上一页 下一页 本讲内容 投影法概述三视图形成及其投影规律平面立体三视图、尺寸标注 本讲内容 复习: P25~P31 、 P84~P85 作业: P7, P8, P14[2-32(2) A3 (1:1)]
Advertisements

第八章 轴系零件 § 8-1 键、销及其连接 一、键连接 二、销连接 § 8-2 轴 一、轴的分类和应用 二、轴的结构和轴上零件的固定
一、统计范围 注册地在湖里区的具有房地产开发资质的 房地产开发企业 无论目前是否有开发项目 无论开发的项目是在湖里区还是在其他区 没有开发项目的企业需要报送年报和月报 中的资金表(空表)。 新成立的项目公司,要先入库,再报报表。
第十二章 常微分方程 返回. 一、主要内容 基本概念 一阶方程 类 型 1. 直接积分法 2. 可分离变量 3. 齐次方程 4. 可化为齐次 方程 5. 全微分方程 6. 线性方程 类 型 1. 直接积分法 2. 可分离变量 3. 齐次方程 4. 可化为齐次 方程 5. 全微分方程 6. 线性方程.
概率统计( ZYH ) 节目录 3.1 二维随机变量的概率分布 3.2 边缘分布 3.4 随机变量的独立性 第三章 随机向量及其分布 3.3 条件分布.
第 12 章位运算 C 语言兼具高级语言及低级语言的特性,因此 适合编写系统软件。 C 语言具备低级语言的特性 就在于它能直接对硬件进行操作,即位运算。 所谓位运算是指,按二进制位进行的运算。 例如,将一个存储单元中各二进位左移或右移一 位等。
第四章 犯罪概念与犯罪构成. 第一节 犯罪概念 一、犯罪概念的类型  (一)犯罪的形式概念  (二)犯罪的实质概念  (三)犯罪的混合概念.
PHPCMS 使用指南及二次开发向导 --- 系统设置篇 PHPCMS 网络培训课程 --- 系统设置篇 PHPCMS 项目部 王官庆制作 系统相关设置 1. 站点管理 2. 发布点管理 3. 系统其它设置 管理员设置 1. 角色定义 2. 管理员管理.
HistCite 结果分析示例 罗昭锋. By:SC 可能原因:文献年度过窄,少有相互引用.
位置相关查询处理 研究背景及意义 移动计算、无线通信以及定位技术的快速发展,使 得位置相关的查询处理及基于位置的信息服务技术 已经成为一个热点研究领域 。 大量的应用领域 ( 如地理信息系统、智能导航、交 通管制、天气预报、军事、移动电子商务等 ) 均迫 切需要有效地查询这些数据对象。
细分曲面 傅孝明 SA 目录 细分曲面的基本思想 两个关键问题 一些基本概念 几种简单的细分曲面算法 细分曲面方法分类.
一、拟合优度检验 二、变量的显著性检验 三、参数的置信区间
编译程序 构造原理和实现技术 授课教师:吕江花. 第一章 编译程序概述 主要内容: 几个基本概念 编译器的工作过程概述 编译器各个阶段的功能描述 编译程序的实现途径.
主要内容  LR(0) 分析. 0 S→  E # E→  E+T E→  T T→  id T→  ( E ) 1 S→E  # E→E  +T 5 T→id  3 E→E+  T T→  id T→  (E) 4 E→E+T  9 E→T  6 T→(  E) E→
嵌入式操作系统 陈香兰 Fall 系统调用 10/27/09 嵌入式 OS 3/12 系统调用的意义  操作系统为用户态进程与硬件设备进行交互提供 了一组接口 —— 系统调用  把用户从底层的硬件编程中解放出来  极大的提高了系统的安全性  使用户程序具有可移植性.
Alexa 排名与 分级信息检索方法 刘骥 刘骥 前言 前言 从促进文献信息的广泛交流, Alexa 网站 排名知识和信息检索,利用网络资源促进利 互联网进行科学研究和提高效率和效益出发。 就 Alexa 网站、 Alexa 排名和分级信息检索方 法进行了阐述。对信息资源的利用、开放获.
地理信息系统概述. 数据和信息 (Data & Information) 数据 原始事实 如:员工姓名, 数据可以有数值、图形、声音、视觉数据等 信息 以一定规则组织在一起的事实的集合。
第 4 章 抽象解释 内容概述 以一种独立于编程语言的方式,介绍抽象解释的 一些本质概念 – 将 “ 程序分析对语言语义是正确的 ” 这个概念公式 化 – 用 “ 加宽和收缩技术 ” 来获得最小不动点的较好的 近似,并使所需计算步数得到限制 – 用 “ 伽罗瓦连接和伽罗瓦插入 ” 来把代价较大的属 性空间用代价较小的属性空间来代替.
第 2 章 数据流分析 内容概述 数据流分析推导的是数据沿着程序执行路 径流动的信息 – 过程内的分析:可用表达式分析、到达-定值分 析等 – 过程间分析 –Shape 分析 – 理论基础 – 数据流方程的求解.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第六十二讲 ) 离散数学. 最后,我们构造能识别 A 的 Kleene 闭包 A* 的自动机 M A* =(S A* , I , f A* , s A* , F A* ) , 令 S A* 包括所有的 S A 的状态以及一个 附加的状态 s.
1 为了更好的揭示随机现象的规律性并 利用数学工具描述其规律, 有必要引入随 机变量来描述随机试验的不同结果 例 电话总机某段时间内接到的电话次数, 可用一个变量 X 来描述 例 检测一件产品可能出现的两个结果, 也可以用一个变量来描述 第五章 随机变量及其分布函数.
主讲教师:陈殿友 总课时: 124 第八讲 函数的极限. 第一章 机动 目录 上页 下页 返回 结束 § 3 函数的极限 在上一节我们学习数列的极限,数列 {x n } 可看作自变量 为 n 的函数: x n =f(n),n ∈ N +, 所以,数列 {x n } 的极限为 a, 就是 当自变量 n.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第三十八讲 ) 离散数学. 第八章 格与布尔代数 §8.1 引 言 在第一章中我们介绍了关于集 合的理论。如果将 ρ ( S )看做 是集合 S 的所有子集组成的集合, 于是, ρ ( S )中两个集合的并 集 A ∪ B ,两个集合的交集.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第四十八讲 ) 离散数学. 例 设 S 是一个非空集合, ρ ( s )是 S 的幂集合。 不难证明 :(ρ(S),∩, ∪,ˉ, ,S) 是一个布尔代数。 其中: A∩B 表示 A , B 的交集; A ∪ B 表示 A ,
第十一章 曲线回归 第一节 曲线的类型与特点 第二节 曲线方程的配置 第三节 多项式回归.
线性代数习题课 吉林大学 术洪亮 第一讲 行 列 式 前面我们已经学习了关 于行列式的概念和一些基本 理论,其主要内容可概括为:
第 4 章 过程与变量的作用范围. 4.1 Visual Basic 的代码模块 Visual Basic 的应用程序是由过程组成的, 过程代码存放在模块中。 Visual Basic 提供了 三类模块,它们是窗体模块、标准模块和类 模块。 窗体模块 窗体模块是大多数 Visual Basic.
数 学 系 University of Science and Technology of China DEPARTMENT OF MATHEMATICS 第 3 章 曲线拟合的最小二乘法 给出一组离散点,确定一个函数逼近原函数,插值是这样的一种手段。 在实际中,数据不可避免的会有误差,插值函数会将这些误差也包括在内。
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第三十九讲 ) 离散数学. 例 设 S 是一个集合, ρ ( S )是 S 的幂集合,集合 的交( ∩ ),并(∪)是 ρ ( S )上的两个代数运算, 于是,( ρ ( S ), ∩ ,∪) 是一个格。而由例 知.
1 第 7 章 专家控制系统 概述 专家系统的起源与发展 专家系统的一般结构 专家系统的知识表示和获取 专家系统的特点及分类.
信息利用与学术论文写作 Library of Jiangsu University, Zhenjiang Sha Zhenjiang
第二章 贝叶斯决策理论 3学时.
流态化 概述 一、固体流态化:颗粒物料与流动的流体接触,使颗粒物料呈类 似于流体的状态。 二、流态化技术的应用:流化催化裂化、吸附、干燥、冷凝等。 三、流态化技术的优点:连续化操作;温度均匀,易调节和维持; 气、固间传质、传热速率高等。 四、本章基本内容: 1. 流态化基本概念 2. 流体力学特性 3.
量子化学 第四章 角动量与自旋 (Angular momentum and spin) 4.1 动量算符 4.2 角动量阶梯算符方法
主讲教师:陈殿友 总课时: 124 第十一讲 极限的运算法则. 第一章 二、 极限的四则运算法则 三、 复合函数的极限运算法则 一 、无穷小运算法则 机动 目录 上页 下页 返回 结束 §5 极限运算法则.
在发明中学习 线性代数 概念的引入 李尚志 中国科学技术大学. 随风潜入夜 : 知识的引入 之一、线性方程组的解法 加减消去法  方程的线性组合  原方程组的解是新方程的解 是否有 “ 增根 ” ?  互为线性组合 : 等价变形  初等变换  高斯消去法.
Photoshop CS4 标准培训教程 第三章第三章 在 Photoshop CS4 中所谓的不规则选区指的是随意性强,不被局限在几何形状内, 他们可以是鼠标任意创建的也可以是通过计算而得到的单个选区或多个选区。在 Photoshop 中可以用来创建不规则选区的工具被分组放置到套索工具组、魔棒工具组.
第一节 相图基本知识 1 三元相图的主要特点 (1)是立体图形,主要由曲面构成; (2)可发生四相平衡转变; (3)一、二、三相区为一空间。
第五节 学习要点 对句子的分析,向来是从句型、句类、句式的角度进行的。 以这三个角度为切入点,我们可以建立句型系统、句类系统和句 式系统。 ★句型系统 —— 按照句子的结构模式划分出来的类型系统。
量子力学教程 ( 第二版 ) 3.4 连 续 谱 本 征 函 数 的 归 一 化 连续谱本征函数是不能归一化的 一维粒子的动量本征值为的本征函数 ( 平面波 ) 为 可以取 中连续变化的一切实数值. 不难看出,只要则 在量子力学中, 坐标和动量的取值是连续变化 的 ; 角动量的取值是离散的.
第 3 章 控制流分析 内容概述 – 定义一个函数式编程语言,变量可以指称函数 – 以 dynamic dispatch problem 为例(作为参数的 函数被调用时,究竟执行的是哪个函数) – 规范该控制流分析问题,定义什么是可接受的控 制流分析 – 定义可接受分析在语义模型上的可靠性 – 讨论分析算法.
吉林大学远程教育课件 主讲人 : 杨凤杰学 时: 64 ( 第五十三讲 ) 离散数学. 定义 设 G= ( V , T , S , P ) 是一个语法结构,由 G 产生的语言 (或者说 G 的语言)是由初始状态 S 演绎出来的所有终止符的集合, 记为 L ( G ) ={w  T *
Relevance Theory Lecture 12. Relevance Theory 交际研究的对象是交际的概念、内容、 性质、功能、方法和交际行为、交际参 加者之间的关系等的认识和阐述。 20 世 纪 70 年代末以来, Sperber & Wilson 把认 知与交际结合起来,于 1986.
编译原理总结. 基本概念  编译器 、解释器  编译过程 、各过程的功能  编译器在程序执行过程中的作用  编译器的实现途径.
周期信号的傅里叶变换. 典型非周期信号 ( 如指数信号, 矩形信号等 ) 都是满足绝对可 积(或绝对可和)条件的能量信号,其傅里叶变换都存在, 但绝对可积(或绝对可和)条件仅是充分条件, 而不是必 要条件。引入了广义函数的概念,在允许傅里叶变换采用 冲激函数的前提下, 使许多并不满足绝对可积条件的功率.
 符号表  标识符的作用: 声明部分:定义了各种对象及对应的属性和 使用规则。 程序体:对所定义的对象进行各种操作。 $ididname IdnameAttributeIR  必要性 Token : 新表-符号表(种类、类型等信息):
Department of Mathematics 第二章 解析函数 第一节 解析函数的概念 与 C-R 条件 第二节 初等解析函数 第三节 初等多值函数.
1 第 7 章 存储过程、触发器和程序包 在很多时候,都需要保存 PL/SQL 程序块,以便 随后可以重新使用。这也意味着,程序块需要一个名 称,这样需才可以调用或者引用它。命名的 PL/SQL 程序块可被独立编译并存储在数据库中,任何与数据 库相连接的应用程序都可以访问这些存储的 PL/SQL 程序块。
网上预约集港操作指南 一、登录系统 登陆下面图片显示网址:输入堆场用户名、密码和校验码登陆系统.
首 页 首 页 上一页 下一页 本讲内容本讲内容 视图,剖视图(Ⅰ) 复习: P107 ~ P115 作业: P48(6-2,6-4), P49( 去 6-6) P50, P51(6-13), P52 P50, P51(6-13), P52 P53 (6-18,6-20) P53 (6-18,6-20)
《 UML 分析与设计》 交互概述图 授课人:唐一韬. 知 识 图 谱知 识 图 谱知 识 图 谱知 识 图 谱.
适用场景 应用背景 1 、企业使用电商平台作为前 台销售门户, NC 作为后台管 理软件; 2 、后台从商城平台自动定时 下载,快速导入到 NC 形成销 售订单,并按 ERP 业务规则 进行校验及触发后续流程; 3 、提高订单传递的及时性、 准确性、规范性,减少工作量, 降低出错率;
1 、如果 x + 5 > 4 ,那么两边都 可得 x >- 1 2 、在- 3y >- 4 的两边都乘以 7 可得 3 、在不等式 — x≤5 的两边都乘以- 1 可得 4 、将- 7x — 6 < 8 移项可得 。 5 、将 5 + a >- 2 a 移项可得 。 6 、将- 8x < 0.
第 7 章说明 经典的单方程计量经济学模型理论与方法,限于常参数、 线性、揭示变量之间因果关系的单方程模型,被解释变量 是连续的随机变量,其抽样是随机和不受限制的,在模型 估计过程中或者只利用时间序列样本,或者只利用截面数 据样本,主要依靠对经济理论和行为规律的理解确定模型 的结构形式。 本章中,将讨论几种扩展模型,主要包括将被解释变量抽.
§10.2 对偶空间 一、对偶空间与对偶基 二、对偶空间的有关结果 三、例题讲析.
企业产品标准信息公共服务平台 操作介绍 目录 一 、系统架构介绍 二 、企业产品标准自我声明填报系统 三 、企业产品标准公示系统.
表单自定义 “ 表单自定义 ” 功能是用于制作表单的 工具,用数飞 OA 提供的表单自定义 功能能够快速制作出内容丰富、格 式规范、美观的表单。
力的合成 力的合成 一、力的合成 二、力的平行四边形 上一页下一页 目 录 退 出. 一、力的合成 O. O. 1. 合力与分力 我们常常用 一个力来代替几个力。如果这个 力单独作用在物体上的效果与原 来几个力共同作用在物体上的效 果完全一样,那么,这一个力就 叫做那几个力的合力,而那几个 力就是这个力的分力。
逻辑设计基础 1 第 7 章 多级与(或)非门电路 逻辑设计基础 多级门电路.
“ 百链 ” 云图书馆. 什么是百链云图书馆?1 百链云图书馆的实际效果?2 百链云图书馆的实现原理?3 百链云图书馆的价值?44 图书馆要做什么?55 提 纲.
八. 真核生物的转录 ㈠ 特点 ① 转录单元为单顺反子( single cistron ),每 个蛋白质基因都有自身的启动子,从而造成在功能 上相关而又独立的基因之间具有更复杂的调控系统。 ② RNA 聚合酶的高度分工,由 3 种不同的酶催化转 录不同的 RNA 。 ③ 需要基本转录因子与转录调控因子的参与,这.
张勤 人大报刊复印资料 专题全文数据库 简 介简 介 《人大报刊资料全文数据库》是中国人民大 学书报资料中心与北京博利群电子信息有限 公司联合开发研制的大型数据库光盘。它涵 盖面广、信息量大、分类科学、筛选严谨、 结构合理,是国内最具权威的社会科学、人.
1 第三章 数列 数列的概念 考点 搜索 ●数列的概念 ●数列通项公式的求解方法 ●用函数的观点理解数列 高考 猜想 以递推数列、新情境下的 数列为载体, 重点考查数列的通 项及性质, 是近年来高考的热点, 也是考题难点之所在.
第二节. 广告牌为什么会被风吹倒? 结构的稳定性: 指结构在负载的作用下 维持其原有平衡状态的能力。 它是结构的重要性质之一。
第二节 财政的基本特征 第二节 财政的基本特征 一、财政分配以政府为主体 二、财政分配一般具有强制性 三、财政分配一般具有无偿性 第一章 财政概论 四、财政分配一般具有非营利性.
韩文数据库使用说明 鲁锦松. 主要内容 一、为什么要用数据库 二、怎样利用中文数据库 三、怎样利用韩文数据库.
目录 上页 下页 返回 结束 二、无界函数反常积分的审敛法 * 第五节 反常积分 无穷限的反常积分 无界函数的反常积分 一、无穷限反常积分的审敛法 反常积分的审敛法  函数 第五章 第五章.
SCI 数据库检索练习参考 本练习完全依照 SCI 数据库实际检索过程而 实现。 本练习完全依照 SCI 数据库实际检索过程而 实现。 练习中,选择了可以举一反三的题目,读 者可以根据题目进行另外的检索练习,如: 可将 “ 与 ” 运算检索改为 “ 或 ” 、 “ 非 ” 运算检索 等等。 练习中,选择了可以举一反三的题目,读.
§7.2 估计量的评价标准 上一节我们看到,对于总体 X 的同一个 未知参数,由于采用的估计方法不同,可 能会产生多个不同的估计量.这就提出一 个问题,当总体的一个参数存在不同的估 计量时,究竟采用哪一个好呢?或者说怎 样评价一个估计量的统计性能呢?下面给 出几个常用的评价准则. 一.无偏性.
元 胞 自 动 机. 一. 元胞自动机的定义及构成 元胞自动机 (Cellular Automata ,简称 CA ,也有 人译为细胞自动机、点格自动机、分子自动机 或单元自动机 ) 。 是一时间和空间都离散的动力系统。散布在规 则格网 (Lattice Grid) 中的每一元胞 (Cell) 取有限.
Presentation transcript:

第六章 RDBMS 的扩展 关系模型中概括与聚合的扩展 支持共享与递归的分子对象概念 关系查询语言 QUEL 的扩展及其支持 关系模型中的抽象数据类型 XSQL 语言的扩展 嵌套的关系模型 NF2

※ 6.1 关系模型中概括与聚集的扩展 例 1 :关于人的特化模型示例 Persons sex maritalStatus nationality Females Austrians Canadians … Singles Males Married

关系扩展模型 —— 一般化的 m 维特化示例 R S k1 S km …… R 11 R 1p 1 R m1 R mp m ……

扩展的关系模型的一般语法 var R : generic s k1 =(R 11,…,R 1p 1 ); … s km =(R m1,…,R mp m ); of aggregate keylist s 1 : key R 1 ; … s n : key R n ; end

对该语法的说明 对 generic 关系 R ,具有 n 个属性,其中: -若是一般的类型,仅用类型符标识它 -若是一个聚集引用,即若引用一个 generic 关 系类型,则需要加前缀 “key” 进行区分 对 R 可以特化,其 m 维的特化属性用 s k1 …s km 表 示 每一个特化属性 s ki 将 R 的实例化对象划分成 p i 个 不相交的集合,每一个集合为 R 的一个特化集

因此,若 R 有 m 维特化属性,则将 R 的实例 集进行 m 种划分,每一种划分都可以获得 R 的 P i 个特化集( R i1,…,R ip i ) M 个特化属性 s k1,…,s km 属于 R 的属性集 s 1,…,s n 的子集。

正确定义一个 generic 的关系 R 需要如下规则: 1.R 的 n 个属性中,每个属性的类型定义 R i ( 1≤i≤n )是以下两种类型: (1) 是一个类型标识符(前缀 key 必须不出现), 它表示了 R i 是一个原子值。 (2) 是一个 generic 的标识符,则前缀 key 必须在 定义中出现, 它表示对其他对象的引用。 2.Keylist—— 主关键属性表是 {s 1,…,s n } 的子 集

3. 每一个特化类型 R ij ( 1≤i≤m , 1≤j≤P i )都 是一个 generic 标识符,其关键字域与 R 的 相同,且其属性在定义时就要 copy 父类型 除特化属性外的所有属性。 4. 特化属性 S ki ( 1≤i≤m )都与 R 的某个属性 S j ( 1≤j≤n )相同。 5. 如果 S ki 与 S j 相同,则 S j 的类型 —R j 的值域 是( R i1,…,R ip i )。

一个应用实例 — 基于扩展关系模型的 CSG 表示 参看 P 31 页 CSG 的形式化表示: ::= ::= | | ::= cube | cylinder | cone | … ::= rotate | scale | translate | … ::= union | intersection |difference |…

由此看出,一个 object 有三种类型: 1. Prim_obj (原始对象) 2. Mot_obj (运动对象) 3. Comp_obj (组合对象) 如下图:

扩展 CSG 实例化关系模型 Mech_obj ID MAN ARG_OBJ LEFT_ARG RIGHT_ARG TYPE Mot_obj Prim_obj Comp_obj T MAT PRICE OP_CODE PTYPE cylinder … cuboid LENGTH WIDTH HEIGHT

CSG 的关系模型表示 (1) var mech_obj: generic (2) TYPE = (prim_obj, mot_obj, comp_obj); (3) of (4) aggregate [ID] (5) ID : identifier; (6) MAN: manufacturer; (7) TYPE: structural_comp (8) end

Mech_obj 的三个特化子类型说明 var prim_obj : generic prim_obj 是 mech_obj 的 PTYPE =(cylinder,…,cuboid); 特化,而本身通过特化控制 of 属性 PTYPE 进一步被特化 aggregate[ID] 为原始对象集合 ID:identifier; 这两个属性是父类属性, MAN:manufacturer; 除控制特化的 TYPE 属性 MAT:material; 外的全部属性的复制,以 PRICE:money; 此实现继承的概念 PTYPE:geom_form; end

var cuboid cuboid 不是 generic 类型 , aggregate [ID] 它没有进一步特化(没有子类) ID:identifier; MAN:manufacturer; 这四个属性继承父类 MAT : material; 而来 PRICE:money; LENGTH:real; 这三个属性是 cuboid WIDTH:real; 自身的进一步描述 HEIGHT:real; end

var mot_obj mot_obj 也不是 generic 类型 aggregate [ID] ID:identifier; MAN:manufacturer; ARG_OBJ: key mech_obj; 该属性表达了对一 个对象的引用 T : matrix; end

var comp_obj aggregate [ID] ID:identifier; MAN:manufacturer; LEFT_ARG_OBJ:key mech_obj; RIGHT_ARG_OBJ: key mech_obj; OP_CODE :( union,difference,intersection,…) end

一个无孔支架 bracket 的 CSG 的关系实例 mech_obj ID MAN TYPE … “bracket #1” “plate #1” “plate #2” … “Steal,Inc.” … “comp_obj” “prim_obj” …

comp_obj ID MANLEFT_ARG_OBJRIGHT_ARG_OBJOP_CODE … “bracket #1” … “steal,Inc.” … “plate#1” … “plate #2” … “union” … prim_obj ID MAN MAT PRICE PTYPE … “plate #1” “plate #2” … “steal,Inc.” … “iron” … … “cuboid” …

cuboid IDMANMATPRICELENGTHWIDTHHEIGHT … “plate #1” “plate #2” … “steal,Inc.” … “iron” … … 10 … 5 2 … 0.5 …

对该模型的总结与讨论 特点: 1. 扩展了对概括抽象和聚集抽象的支 持, 方法简单,易理解。 2. 通过复制方案实现继承。 问题: 1. 由于复制造成大量冗余,效率低下。 2. 没有面向对象行为,即不允许具体 的行为操作。 3. 基本对象的语义结构仍然不易表达。 4. 为保证一致性,在更新操作时需要进行持 续的信息复制,开销较大。

※ 6.2 分子对象 — 对 generic 类型的进一步扩 展 分子对象 (Molecular Object )的概念 — 分子对象由分子集合组成 — 分子集合将一系列实例 ( 可以是不同类型 ) 和它们的关系,聚集对象为较高层次的 实体

分子对象的结构分类: — 不相交 / 非递归; — 相交 / 非递归; — 不相交 / 递归; — 相交 / 递归; 相交:指一个分子对象的组成部分 是否能被其他同类型分子对象共享。 递归 / 非递归:分子对象的结构是否 是递归定义的。

四种类型分子的进一步说明 不相交 / 非递归 —— 是最简单的结构 — 分子集合内的所有分子之间均是两个不 相交的、结构不重叠的,因之也不是递 归定义的。 例如:原始对象集合。

相交 / 非递归的分子对象 — 分子间存在共享对象成份,即两个分子 可能在一些抵赖的分子对象上重叠。 例如:具有同一平台的两个几何体

不相交 / 递归 — 具有递归定义的不共享的分子结构, 例:几何对象的 CSG 表示是一个递归分子 对象的典型例子,它构成一颗二叉树。 参照图 3.2 (支架表示)

递归 / 相交 — 如果允许 CSG 中的几何部件被共享,则 它是一个有向无环图 DAG

CSG 1 CSG 2

6.3 将 QUEL 表达式作为类型的关系 模型的扩展 QUEL:— 由伯克利分校研制的 Ingres 查询语言 — 类似于元组关系演算 QUEL 的组成:由三个子句组合而成 —range of 子句:类似于 from 子句,作用为声 明元组变量的取值范围,书写格式为 range of t is r(t 为关系 r 的一个元组变量 ) —retrieve 子句:类似于 select 子句,作用为确 定查询目标,其变量必须已经在 range 子句中声明, retrive t.A 查询 t 的 A 属性值 —where P 子句:条件子句, P 为选择谓词 * 请参考 “ 数据库系统概念 ” 第五章

一般化引用基制的模型构造 纯关系结构示例: E-R : 关系表 boundary GEO_IDFACE_ID “cube#1” … “cube#1” … “cube#1” … “f1” … “f6” … “f1” … mech-part boundary faces N M IDSURFACE… “f1” “f2” … “f6” … ……………………………… ……………………………… mechanical_part IDNAME… “cube#1” … “cube#2” … “cube#3” … ……………………………… ………………………………

QUEL 查询语句序列 range of m is mechanical_part range of f is faces range of b is boundary retrive m.all,f.all where m.ID = “cube#1” and m.ID = b.GEO_ID and f.ID = b.FACE_ID range of m is mechanical_part retrive m.all, m.FACE_JOIN where m.ID = “cube#1” range of f is faces retrive f.GEO_JOIN where f.ID= “f1”

关系模型的扩展 关系属性类型中扩展一个新类型 —QUEL 类 型 QUEL 类型为一个 QUEL 查询表达式,它可 以在被引用是触发执行 使用 QUEL 类型代替外键联接关系,例如上 图 boundary ,从而将原来显示的联接隐含 在父关系的某个属性中,只有在动态联接 时才被激活

上述关系示例的扩展 mechanical_part IDNAMEFACE_JOIN “cube#1” … “cube#2” … …… … …… “range of f is faces retrive f.all where f.ID in {“f1”, …}” … “range of …” faces IDSURFACE…GEO_JOIN “f1” “f2” … “f6” … …………………… “range of m is mechanical_part retrieve m.all where m.ID in {“cube#1”, “cube#2”}” …

相应的 QUEL 查询语句 利用 mech-part 的 FACE-JOIN 和 faces 中的 GEO-JOIN 属性代码为: range of m is mech-part retrieve m.all,m.FACE-JOIN where m.ID = “cube#1” range of f is faces retrieve f.GEO-JOIN where f.ID=“f1”

进一步的扩展 range of m is mech-part retrive m.FACE-JOIN.SURFACE where m.ID = “cube#1” 利用 QUEL 类型和操作符 ”.” 的重载,可以在 构造一个复杂的引用链时,通过简化显式 联接的方法简化查询和关系表的构建

安全性的缺陷 由于采用隐式的联接方法 ( 通过 QUEL 函数 ) ,使得 查询结果只有在运行时进行动态联接时才能确定, 因而容易产生类型安全性错误 例如: mechanical_part IDNAMEFACE_JOIN “cube#3” … “cube#2” … …… … …… “range of f is other_faces retrive f.all where f.ID in {“f20”, …,”f25”}” “range of …” other_faces IDSURFACE…GEO_JOIN “f20” “f21” … “f25” “smooth” … “rough” …………………… “range of m is mechanical_part retrieve m.all where m.ID in {“cube#3”}” …

安全性的缺陷 ( 续 ) 程序 range of m is mechanical_part retrive sum(m.FACE-JOIN.SURFACE) where m.ID = “cube#1” range of m is mechanical_part retrive sum(m.FACE_JOIN.SURFACE) where m.ID = “cube#3”

6.4 关系模型中的抽象数据类型 概念:该模型发展得最好的是 INGRES ,他 们在开始研制时已留有与 C 的接口 —— ADT-INGRES , 并进一步发展为 POSTGRES 。

抽象数据类型的建模过程 在关系建模时,可以将某些属性显式地说明为一 个抽象数据类型 ADT 例: cuboids ( id: integer, material: char(10), description: char(20), V1: ADT: vertex_type, V2: ADT: vertex_type, … V8: ADT: vertex_type)

抽象数据类型的建模过程 ( 续 ) 用户在系统提供的环境上,定义一个 ADT 的接口说明 例 : define ADT (typename = “vertex_type”, bytesin = 9, bytesout = 9, inputfunc = “to_internal_vertex”, outputfunc = “to_external_vertex”, filename = “/usr/ingres/…/vertex”) XYZ “X%Y%Z” to_internal_vertex to_external_vertex

抽象数据类型的建模过程 ( 续 ) 用户需要用 C(informix 也允许用 java) 语言实 现 ADT 的结构读写程序,并存放在按接口 说明的路径所示位置 在数据库运行时,需有用户需要检索 ADT 的值,则系统自动进行动态联接,激活并 运行相应的函数

例:执行一个查询 range of c is cuboids retrieve (c.material, c.description,c.V1) where c.id = 5 结果为: materialdescritptionV1 XYZ coppermassive

用同样的方法,可以定义并实现在 ADT 域上的各 种用户自定义操作 informix 中使用 UDR 工具实现 例: define adtop (opname = “R y ”, funcname = “rotate_abount_y”, filename = “/usr/ingres/../rotate_y”, result = ADT: vertex_type, arg1 = ADT: vertex_type, arg2 = ADT: angle_type, prec like “+”)

6.5 XSQL 支持的层次扩展模型 XSQL 是 Kifer 在 1992 中提出的一个 SQL 的面 向对象的扩展模型 SQL-3 标准已包括了 SQL 面向对象的扩展 XSQL 支持的层次扩展主要针对复合对象模 型,其扩展的主要是聚合抽象的实现方法

基于纯关系模型的 XSQL 的基本构成 代用 Surrogates :由系统产生并维护的关 系元组对象实例的逻辑标识符 特点 1. 唯一性 2. 系统内部产生,用户不能干涉 3. 不可修改,在一个对象的生命周期中保持不 变 4. 代用产生的标识符应当保证在 “ 世界范围 ” 内的 唯一性,以保证基于广域网的分布式 DB 中每 个元组的唯一性 生成方法: processor IDdate & time

component –of 属性 ——XSQL 利用该属性建立元 组间的引用关联。 关联的语义为 part-of 特点: component-of 属性支持元组间的 1:1 和 1:N 的 联接 E-R 表示: 关系表的定义 create table E1(E1-ID:identifier, E1_DATA:…) create table E2(E2-ID:identifier, E2_FATHER:component of (E1), E2_DATA:…) component of 的值是与 E2 的一个元组 e2 具有 R1 联系的 E1 的元组 e1 的 ID 值 N E1 R1 E2 componet of 1

多层次的引用结构 E1 E2E3 E4 R1 R2 R3 (0,*) 1 (1,1) (0,*) (1,1) NN N 1 create table E1(E1-ID:identifier, E1_DATA:…) create table E2(E2-ID:identifier, E2_FATHER:component of (E1), E2_DATA:…)

E2 E2-IDE2-FATHERE2-DATA $ $ … $ … ……………… E3 E3-IDE3-FATHERE3-DATA $ $ … $ … ……………… E4 E4-IDE4-FATHERE4-DATA $ … $ … ……………… E1 E1-IDE1-DATA $ $ … ……………… 代用标识符的组成含有元组对象间的依赖关系,即对属于同一 个复合对象的元组,其 ID 值具有相同的前缀 系统对每一个复合对象建立一个 map 的映射,含有指向该元组 的存储位置指针 TIDs

元组间 N:M 联系的扩展方法 原理:由于 XSQL 是在纯关系上进行的扩展, 因此,不可能表示集合属性,解决 N:M 关联 的方法只能采用第三方关系 —— 专门定义 一个引用关系表 R ,将两个有联系的元组对 应起来 reference 属性,它建立了一个引用关联

一般的 N:M 联系的关系表定义 E-R 表示: 关系表定义: create table E1(E1-ID:identifier, E1_DATA:…) create table E1(E2-ID:identifier, E2_DATA:…) create table R(R-ID:identifier, RtoE1: reference(E1), RtoE2: reference(E2)) E1 R1 E2 N M

XSQL 模型的评价 创新点: 元组的逻辑标识符概念的引入 在关系模型的基础上建立了关系间的层次结构 解决了数据类型的 QUEL 的安全隐患 局限性: component-of 属性可以较好支持 1:N 联系,但是 在共享低层对象时,由于关系不能表示集合,会 造成大量的冗余,即一个引用就需产生一个对象 元组,由此造成查询的复杂低效,和一致性更新 维护困难

局限性 ( 续 ) 对引用属性的支持力度很弱。由于 reference 属性相当于纯关系系统中的联接 关系,因此直接按照引用属性链完成检索 是不可能的,只能采用多个表的 JOIN 方法 进行显式地重构。 由于复合对象的管理由系统完成,即 map 对 用户不可见,因而进行复合对象物理存储 的集束 (clustering) 优化是困难的 ( 即在一个 页面上汇集不同元组组成的复合对象 ) 。