资源描述
1、 时态数据库建表、设计,面向对象模型创建、定义
时代数据库的建表:
CREATE TABLE prescription (
patient_name VARCHAR(10) ,
doctor_name VARCHAR(10),
drug_name VARCHAR(30),
dose VARCHAR(30)
) AS VALIDTIME;
n 向表格插入记录 会引起TempDB做时态归并操作
1、VALIDTIME PERIOD [ DATE "2010-03-01" - DATE "2010-05-01" )
INSERT INTO prescription
VALUES ( 'p1' , 'dom' , 'va' , '30mg' );
2、 VALIDTIME PERIOD [ DATE "2013-02-01" - now )
INSERT INTO prescription
VALUES ( 'p2' , 'd1' , 'erythromycin' , '30mg' );
3、 VALIDTIME PERIOD [ DATE "2010-01-01" - DATE "2012-03-01" )
INSERT INTO prescription
VALUES ( 'p1' , ‘dom' , ‘vb' , '30mg' );
4 、 VALIDTIME PERIOD [ DATE "2010-02-01" - DATE "2012-04-01" )
INSERT INTO prescription
VALUES ( 'p1' , 'dom' , 'erythormycin' , '30mg' );
5 、 VALIDTIME PERIOD [ DATE "2010-01-01" - DATE "2010-01-15" )
INSERT INTO prescription
VALUES ( 'p1' , 'dom' , 'erythormycin' , '30mg' );
n 查询表格记录
VALIDTIME SELECT * FROM prescription;
或:
VALIDTIME PERIOD (begin(VALIDTIME(p)), now)
SELECT * FROM prescription p;
查询所有看过dom医生的病人姓名。
SELECT patient_name FROM prescription where doctor_name = ‘dom';
查询曾服过红霉素的病人姓名及其服药期间。
VALIDTIME SELECT patient_name FROM prescription where drug_name = 'erythromycin';
说明:查询结果为所有服过红霉素的病人姓名及其服药期间的集合。如果病人连续服用此药,即集合中有若干服药期间首尾相连,TSQL2会将这些服药期间自动归并为一个更大的时间区间。
查询与红霉素同时服用的其他药品名、服用此药的病人姓名以及同时服用的期间。
VALIDTIME SELECT p1.patient_name, p2.drug_name
FROM prescription AS p1, prescription AS p2
where p1.drug_name = 'erythromycin'
AND p2.drug_name <> 'erythromycin'
AND p1.patient_name = p2.patient_name;
4、删除用例
n 不引起分裂操作的时态数据删除
VALIDTIME PERIOD [DATE "2011-01-01" - DATE "2012-05-01")
DELETE FROM prescription;
n 引起分裂操作的时态数据删除
例 删除病人b2在2010-01-10——2010-02-01期间服用penicillin记录。
VALIDTIME PERIOD [ DATE "2010-01-10" - DATE "2010-02-01")
DELETE FROM prescription
WHERE patient_name='p1'
AND drug_name='erythromycin';
对于Student和CourseOffering之间的联系,我们称由前者到后者为takes,而反之为taken。、
面向对象数据模型的创建:
面向对象方法与数据库技术结合,首先就要建立面向对象的数据模型。数据模型通常由三个组成部分:数据结构,数据操作和数据约束
面向对象数据模型(Object Oriented Data Model,OODM)即是依据面向对象方法所建立的数据模型,其中包括数据模式(数据结构)、建立在模式上的数据操作和数据约束。
(1)数据模式 用对象结构以及类间继承和组合关系建立数据间的复杂结构关系,这种模式结构的语义表示能力远比ER方法与EER方法要强。
(2)数据操作 用对象与类中方法构做模式上的操作,这种操作语义范围远比传统数据模型要强,如可以构做一个圆形类,它的操作可以除查询、修改外,还可以有图形的放大/缩小,图形的移动、图形的拼接等,因此OODM具有比传统数据模型更强的功能。
(3)数据约束 数据约束也是一种方法,一般讲的是一种逻辑型的方法,即是一种逻辑表示式,可以用类中方法表示模式约束。
2、 现代应用中的数据所表现出来的和传统数据有什么不一样的特征?
(1) 多维性
(2) 易变性
(3) 多态性
3、 面向对象中给大家介绍了多种数据类型,其中构造型(复杂型)大概包涵几种数据类型?这些构造类型之间的特点是什么?
(1)基本类型
n 基础型 整型、字符串和布尔型等。
n “类”型 一个类本身就是一种如后所述的构造型,是一种复杂类型,但仍然可以将其作为一个整体看成一个“基础”的型,从而可以像上述基础型一样对待和使用。
(2)构造型
基础型和“类”型是基本型,通过它们,可以使用下述构造器形成各种复杂型(构造型)。
n SET 如果T是任意型,则SET<T>也是一种型,其对象是T的对象的一个有限集合。
n BAG 如果T是任意型,则BAG<T>也是一种型,其对象是型T的对象的一个“可重复”集合即一个元素可重用的集合,称为一个“袋”或“包”。包与集合的区别就是其中的元素可以重复。例如{1,4,1,6}是一个包而不是一个集合。
n LIST 如果T是任意型,则LIST<T>也是一种型,其对象是T的零个或多个对象的一个序列表,例如,字符串型char实际上是表LIST<char>型的一个速记特例。
n ARRAY 如果T是一个型,i是一个正整数,则ARRAY<T,i>就是一个型,其对象为T的i个对象的一个数组,例如,ARRAY<char,10>就是长度为10的字符串。
n RECORD 设Ti和Fi(i=1,2,……,n)分别为任意的一个型和该型的一个域(field)的名字,则 RECORD(F1:T1;F2:T2,…,Fn:Tn)也为一种型,其对象为分别具有名字Fi和型Ti(i=1,2,……,n)的域所组成的记录。
4、 基于对时间轴结构的选择,时间模型划分为哪4种时间模型?
时间可以分为绝对时间(absolute time)和相对时间(relative time)(又称固定时间和浮动时间)
n 时间模型:基于对时间轴结构的选择,时间模型可以划分如下几种模型:
1.连续模型(Continuous model)
n 连续模型把时间看作同构于实数,每一个实数对应于一个时间点。因此,在时间轴的两个时间点之间,可以存在其它的时间点。这种模型能够最精确地为时间建模,但是由于现代计算机基于数字逻辑的工作方式,所以不可能无失真的记录时间。在许多实时控制场合,例如工业控制领域,需要记录大量随时间不断变化的数据。在这种情况下,往往采取采样的方式记录数据变化,对相邻时间点之间的数据采取插值的方法得到。
n 2.步进模型(Stepwise model)
n 步进模型把数据的状态看成是时间的函数。当时间点上的数据状态发生变化时才记录状态变化,否则保持不变。在这种模型下,时间序列上任一点上数据的值对应于上一次数据改变时保持的状态,如果要查询当前数据的取值,需要回溯。
n 3.离散模型(Discrete model)
n 离散模型把时间和整数映射起来,在相邻的两个时间点之间不存在另一个时间点。任一时间点有前驱和后继时间点。在实际应用中,该模型适用于记录那些在关键时间点上才有意义的数据。
n 4.恒定模型(Non Temporal model)
n 有些数据是不随时间变化的,例如:籍贯、出生地等。这些数据只有其本身固有的属性。但是大部分数据在一种情况下没有时态属性,但在另一种情况下往往会有时态属性。例如:住址、身份、工作单位等。在一般情况下,在建模时通常没有充分考虑值随时间变化的情况。如果发生变化时,就采用最新值进行替换。
5、 空间对象可以抽象为哪3种基本空间数据类型?
在GIS中,基本空间数据类型由下述三种空间对象组成:
(1)点(Point) 例如城市。点只表示其空间位置,不表示其范围(extent)
(2)线(Line)例如河流、道路、管道、航线、等高线、等降雨线、通信或电力线路等。线不仅表示线上各点在空间的位置,而且还有长度,即表示其在空间的延伸范围。
(3)区域(Region)例如森林、湖泊、行政区域等。区域不但有位置,而且有面积、周长等参数,以表示其覆盖范围。
6、 时态数据库中存在哪3种时间体系?
1.用户自定义时间
用户自定义时间(User-defined Time)是指用户根据自己的需要或理解定义的时间。这种时间的属性值一般是时间点,用户本身会解释他所给出的时间信息,数据库系统不需要解释该数据的含义,只需将此时间域等同于其他一般的属性域来理解,对它的操作和对普通的字符串操作几乎没有什么差别。
2.有效时间
有效时间(Valid Time)是指一个对象(事件)在现实世界中发生并保持的那段时间,或者该对象在现实世界中为真的时间。
有效时间既可以反映过去和现在的时间,还可以反映将来的时间。有效时间的含义依赖于具体应用,取值是否有效视具体应用场合而定,对应于实际应用的需要或现实世界变化的历史。
3.事务时间
事务时间(Transaction Time)是指一个数据库对象进行操作的时间,是一个事实存储在数据库中的时间,它记录着对数据库修改或更新的各种操作历史,对应于现有事务或现有数据库状态变迁的历史。有时也称事务时间为系统时间(system time)。
7、 知识库中3个关键技术分别是什么?
n 知识表示
知识系统首先要解决的关键问题是如何用形式化表示知识,使得计算机系统能够对其进行处理,同时又能以一种人类能够理解的方式将所得到的结果输出。一般地,要求知识表达具有层次化、模块化和网络化等特征,即知识的结构化。
n 知识利用
指利用知识进行推理,从而得到结论的过程。知识推理设计的主要问题包括:知识库的搜索、目标控制、模式匹配、推理策略、不确定推理结论的评估等。
n 知识获取
从知识源获取知识建立知识库的工作。知识库的知识主要有两个来源:
原始知识,由外界直接进入知识库
中间知识(再生知识),由推理机生成后加入到知识库中的知识。
8、 数据仓库分为哪3种(数据)类型?
n 根据数据仓库所管理的数据类型和它们所解决的企业问题范围,一般可将数据仓库分为企业数据仓库(EDW)、操作型数据库(ODS)和数据集市(Data Mart)3种类型。
n 企业数据仓库:它既含有大量详细的数据,也含有大量累赘的或聚集的数据,这些数据具有不易改变性和面向历史性。这种数据仓库被用来进行涵盖多种企业领域上的战略或战术上的决策,是一种通用的数据仓库类型。
n 操作型数据库:既可以被用来针对工作数据作决策支持,又可用作将数据加载到数据仓库时的过渡区域。相对EDW来说,ODS还具有面向主题和面向综合的,易变的,仅包含目前的、详细的数据,而没有累计的、历史性的数据等特点。
n 数据集市:是一种更小的、更集中的数据仓库。简单地说,原始数据从数据仓库流入不同的部门以支持这些部门的定制化使用,这些部门级的数据仓库就是数据集市。不同的部门有不同的主题域,因而也就有不同的数据集市。
Ø 例如,财务部门有自己的数据集市,市场部门也有自己的数据集市,它们之间可能有关联,但相互不同,且在本质上互为独立。数据集市可以在一定程度上缓解访问数据仓库的瓶颈。
9、 数据广播调度算法中涉及到的两个参数分别是什么?
数据广播中的一个重要问题是选择及组织广播数据,这又被称为数据广播的调度问题。通常使用以下两个参数来衡量和研究数据广播的调度算法:
(1)访问时间:它指从移动节点提出访问请求开始到从广播中获得结果为止所需要的时间,它用来衡量移动节点查询数据的响应时间。
(2)调协时间:它指移动节点为了访问数据而保持接听广播的总时间。因为移动节点接听广播需要消耗电源,因此减少调协时间便能节省移动节点本来就有限的电源供应。
在访问时间的优化上,通常的做法是采用一种称为多盘广播调度的方法
服务器通过分析移动节点的请求,并适当引入一些背景知识,归纳出用户经常访问的热点数据,并把这些数据按照访问概率再分为若干组,让访问概率高的数据在一个广播周期中出现次数多,而访问概率低的数据在一个广播周期中出现次数少。
在调协时间的优化上,通常的做法是引入索引信息。在可以与服务器通信时,可以考虑从服务器中直接获取索引信息,但更通常的做法是在数据广播中插入索引信息。
当移动客户机侦听数据广播时,它先侦听索引信息,再由索引信息得知所需数据到来的时间,因此移动节点便可以在数据到来前转入休眠,节省电源消耗。
10、 空间数据库9-交模型 的八种状态分别对应的名称和取值?
A、B为两个区域
Ø A的内部——Aﹾ,A的边界∂A,A的外部——A-。
Ø B的内部——Bﹾ,B的边界∂B,B的外部——B-。
对于两个简单区域,已经确定了8种有意义的配置,分别对应8种谓词:
相等,相离,被覆盖,覆盖,部分重叠,相接,被包含和包含。
11、 数据仓库自顶向下开发的详细步骤是什么?
n 开发数据仓库的流程包括以下8个步骤:
(1) 启动工程。
(2) 建立技术环境。
(3) 确定主题。
(4) 设计数据仓库中的数据库。
(5) 数据转换程序实现。
(6) 管理元数据。
(7) 开发用户决策的数据分析工具。
(8) 管理数据仓库环境。
12、 移动计算环境下的复制技术需要考虑哪些问题?
n 移动计算环境下复制技术需要考虑的主要问题有三个
(1)考虑移动节点与服务器节点间如何合理分配数据的问题。即要考虑如何提高移动节点缓存数据的命中率问题。
(2)考虑移动节点与服务器节点数据的同步问题.在可以保持两者数据同步的情况下应尽量减少两者的通信时间与通信量,以节省通信费用。在移动节点断接后重新入网时,节点在断接期间对本地缓存所做的操作可能与服务器对数据的操作产生冲突,这时候采取什么冲突策略是移动复制缓存技术需要考虑的最重要的问题。
(3)考虑如何改良服务器节点间的复制策略以使其更高效、更好地支持移动性。
目前,在移动数据库的复制缓存技术的研究中,比较有代表性的有J.Gray的两级复制体系、美国卡耐基-梅隆大学研制的Coda系统、移动环境下缓存失效报告技术、我国学者提出的三级复制体系等。
13、 时间粒度的转换,转换为时间区间、时间点的操作运算要掌握。
粒度之间的转换
n 时间值的粒度影响了有关涉及时间值的表达式的语义。例如当比较一个时间粒度是天的时间值和一个时间粒度是分的时间值时,表达式代表什么的语义,如何操作。这时就需要存在转换函数,实现粒度之间的转换。可以采用下面的两个函数scale和cast实现这个目的:
Ø cast操作和scale操作是相似的,但是scale操作产生不确定的时间值,即时间区间,而cast操作返回一个确定的时间点。
n scale(1997years,days)=
1997-01-01days~1997-12-31days
n scale (scale(1997years,days),months)=
1997-01months~1997-12months
n cast(1997years,days)=
1997-01-01days
n cast(cast(1997years,days),years)=
1997years
n scale(cast(1997years,days),months)=
1997-01months
14、 数据仓库的三种模型,要求掌握星型模型、雪花模型以及它们的定义。
星型模式(star join schema):
星型模式图像,它由星型中央的事实表(fact table)和周围称为维表(dimension table)的其它实体组成。事实表是包含有大量数据的实体,用来存储事实的度量值和各个维的键值;表示事实表每一维的数据也是一张表,用来存放维的元数据(维的层次、成员类别等描述信息),它分布在事实表的周围称为维表(dimension table)。
创建和使用星型连接的好处是可以为决策支持系统的处理优化数据。通过数据预连接和建立有选择的数据冗余,极大地简化了访问和分析的数据,这正是数据仓库所需要的。
雪花模式(Snowflake schema):
有时,对于内部层次复杂的维,也可以用多张表来描述一个维。比如,产品维可以进一步划分为类型表、颜色表、商标表等,这样,在“星”的角上又出现了分支。这种变种的星型模型被称为“雪花模式”。
雪花模式是星型模式的变种,其中某些维表是规范化的,把数据进一步分解到附加的表中,形成类似于雪花的形状,如图。
雪花模式对层次复杂、成员类较多的维采用多张表来描述,而对于较为简单的维可以用一张表来描述。
雪花型的维表可能是规范化形式,这可减少冗余,利于维护,而且节省空间。但由于执行查询要更多的连接操作,雪花型可能降低浏览的性能。
事实星座(fact constellation):
多个事实表共享维表,这种模式可以看作星型模式的集合,因此也可以称为星系模式,或者事实星座。
定义; p77
我们考察一种基于 SQL 的数据挖掘查询语言 DMQL定义数据仓库和数据集市。
数据仓库和数据集市可以使用两种原语定义:一种是立方体定义,一种是维定义。
立方体定义语句具有 如下语法形式:
define cube <cube_name> [<dimension_list>] : <measure_list>
维定义语句具有如下语法形式:
define dimension <dimension_name> as (<attribute_or_subdimension_list>)
使用DMQL定义星形模式如下:
define cube sales_star [time, item, branch, location]:
dollars_sold = sum(sales_in_dollars),
units_sold = count(*)
define dimension time as (time_key, day, day_of_week, month, quarter, year)
define dimension item as (item_key, item_name, brand, type, supplier_type)
define dimension branch as (branch_key, branch_name, branch_type)
define dimension location as (location_key, street, city, province_or_state, country)
雪花模式用 DMQL 定义如下:
define cube sales_snowflake [time, item, branch, location]:
dollars_sold = sum(sales_in_dollars),
units_sold = count(*)
define dimension time as (time_key, day, day_of_week, month, quarter, year)
define dimension item as (item_key, item_name, brand, type, supplier(supplier_key, supplier_type))
define dimension branch as (branch_key, branch_name, branch_type)
define dimension location as (location_key, street, city(city_key, city, province_or_state, country))
15、 数据挖掘的步骤?
1. 理清目标与理解数据;
2. 获取相关技术与知识;
3. 整合与查核数据;
4. 去除错误或不一致及不完整的数据;
5. 由数据选取样本先行试验;
6. 研发模型(model)与模式(pattern);
7. 实际Data Mining的分析工作;
8. 测试与检核;
9. 找出假设并提出解释;
10. 持续应用于企业流程中。
数据准备、挖掘操作、结果表达和解释是其中的3个主要阶段。
数据准备阶段:主要指数据集成、数据选择和数据处理等数据预处理阶段。对于基于数据仓库的数据挖掘而言,数据仓库已经为其完成了数据准备的工作。数据挖掘不一定需要建立在数据仓库基础上,但以数据仓库为基础,对于数据挖掘来说源数据的预处理将简化许多;另外,为了保证结果的正确性,数据挖掘对基础数据量的需求是巨大的,数据仓库可以很好地满足这个要求。
挖掘操作阶段:主要包括决定如何产生假设、选择合适的工具、挖掘规则的操作和证实挖掘的规则。
结果表达和解释阶段:根据最终用户的决策目的对提取的信息进行分析,把最有价值的信息区分出来,并且通过决策支持工具提交给决策者。因此,这一阶段的任务不仅把结果表达出来,还要对信息进行过滤处理。
16、 嵌入式移动数据库系统的特点是什么?
(1)移动性及位置相关性:移动数据库可以在无线通讯单元内及单元间自由移动,而且在移动的同时仍然可能保持通讯连接;此外,应用程序及数据查询可能是位置相关的。这要求移动数据库系统支持这种移动性,解决过区切换问题,并实现位置相关的处理。
(2)频繁的断接性:移动数据库与固定网络之间经常处于主动或被动的断接状态,这要求移动数据库系统中的事务在断接情况下仍能继续运行,或者自动进入休眠状态,而不会因网络断接而撤消。
(3)网络条件的多样性:在整个移动计算空间中,不同的时间和地点连网条件相差十分悬殊。因此,移动数据库系统应该提供充分的灵活性和适应性,提供多种系统运行方式和资源优化方式,以适应网络条件的变化。
(4)系统规模庞大:在移动计算环境下,用户规模比常规网络环境庞大得多,采用普通的处理方法将导致移动数据库系统的效率极为低下。
(5)系统的安全性及可靠性较差:由于移动计算平台可以远程访问系统资源,从而带来新的不安全因素。此外,移动主机遗失、失窃等现象也容易发生,因此移动数据库系统应该提供比普通数据库系统更强的安全机制。
(6)资源的有限性:移动设备的电源通常只能维持几个小时;此外,移动设备还受通讯带宽、存储容量、处理能力的限制。移动数据库系统必须充分考虑这些限制,在查询优化、事务处理、存储管理等诸环节提高资源的利用效率。
(7)网络通讯的非对称性:上行链路的通讯代价与下行链路有很大的差异。这要求在移动数据库的实现中充分考虑这种差异,采用合适的方式(如数据广播) 传递数据。
此外,如果系统所嵌入的某种移动设备支持实时应用,则嵌入式数据库系统还要考虑实时处理的要求。这是因为设备的移动性,如果应用请求的处理时间过长,任务就可能在执行完成后得到无效的逻辑结果,或有效性大大降低。因此,处理的及时性和正确性同等重要。
17、(重点)时态数据库、数据仓库、面向对象,课堂上补充的数据查询、操作和定义要掌握。
有两道应用题题型来自实验。
简述题尽量要详细地答出。
展开阅读全文