数据库

作者: 时间:2016年04月22日 10:38 点击数:

 

教学大纲

一、课程编号:1100170

二、课程名称:数据库系统原理 64学时

Principles of Database Systems

三、先修课程:数据结构、离散数学、操作系统

四、适用专业:软件工程、计算机等专业

五、课程教学目的

本课程是的一门专业基础课,通过本课程的学习,应该理解和掌握数据库的基本理论和基本分析方法,培养学生使用数据库管理系统和设计数据库的能力,了解数据库管理系统的实现原理。

为设计和开发数据库相关应用系统打下必要的基础。

六、课程教学基本要求

1.理解数据模型概念,重点理解关系模型的三要素,在学习了离散数学的基础上,掌握关系代数的基本思想,对于给定的关系数据结构,具有灵活运用关系代数进行演算的能力;理解数据库

系统结构,明确数据库三级模式、两级映像结构的意义,从而理解数据库的特点。

2.掌握SQL语言,重点掌握Select语法,学会子查询、嵌套查询、集合函数在实际中的用法,在了解关系数据库数据存储的基础上,理解查询优化的意义。

3.掌握数据库设计方法,通过实例学习,对于实际问题能够建立ER模型,并将ER模型转换成关系模型,掌握关系规范化中函数依赖的概念,理解第一范式、第二范式、第三范式的含义,在

给定基本函数依赖基础上,能够给出第三范式的关系模式。

4.理解关系模型中完整性和安全性的含义,掌握实现实体完整性、参照完整性、用户自定义完整的方法,掌握建立用户、建立角色、授予权限的语法,能够通过存取控制和视图实现数据库安

全性;理解事务概念,明确事务管理含义,理解数据库恢复和并发控制的原理,并熟练掌握数据库恢复方法。

七、教学内容及学时分配

1.绪论 6学时

数据库系统概述、数据管理的三个阶段,

数据模型:数据结构、数据操纵、数据约束,

数据库系统结构:三级结构、两级映像性。

数据库系统的组成:数据库管理系统、数据库、应用程序、用户

2.关系数据库 6学时

关系模型:关系结构、关系操纵、关系完整性,

关系结构:结合数据结构,理解关系数据结构含义,

关系完整性:实体、参照、用户自定义完整性,

关系代数:并、交、差、笛卡尔积、选择、投影、连接、广义投影。

实验1 数据库认知实验 4学时

3.SQL语言 8学时

SQL特点、SQL标准,

数据定义:Create,

数据查询:Select,

数据更新:Insert、Delete、Update,

数据控制:Grant、Revoke,

视图的概念、视图的定义、视图操纵、视图的更新,

存储过程、触发器,

嵌入式SQL。

实验2 SQL基础 2学时

实验3 高级SQL 2学时

4.关系存储和查询优化 4学时

表的存储、索引结构、聚簇结构,

关系系统分类,

查询优化概念、查询优化方法。

5.数据库设计 6学时

数据库设计过程:需求分析、概念设计、逻辑设计、物理设计、数据库实施,

实体联系分析,ER模型,ER模型向关系模型转换规则,

ER与UML。

实验4 数据库设计1 2学时

6.关系规范化 4学时

数据库设计问题:插入异常、删除异常、更新异常,

函数依赖定义,阿姆斯特朗公理,

基本依赖闭包,候选码,

第二范式、第三范式。

实验5 数据库设计2 2学时

7.安全性和完整性 6学时

安全性控制:用户、角色、权限、授权,

完整性分类和完整性控制方法。

实验6 安全性实验 2学时

8.事务管理 6学时

事务的概念、性质,事务的实现,

数据库故障、日志,数据库恢复原理和方法,

并发问题:数据不一致性,

数据锁、封锁粒度、封锁协议,

死锁预防和死锁处理

如何提高并发度。

实验7 备份与恢复 2学时

期中考试 2学时

八、教学重点、难点

重点:理解关系模型的要素和关系模型的特点,培养关系代数的演算能力;掌握SQL语言,把握SQL语句的语法、

用法,特别是高级SQL语句的使用;理解数据库设计的过程,掌握实体联系模型和关系模型的对应关系,掌握关系规

范化的主要思想;培养学生关系数据库的分析、设计能力。

难点:关系模型的数学依据,对应数据结构、离散数学与关系模型的联系;数据库查询优化、并发控制和数据库

恢复的各种概念、方法、理论。

九、使用教材及参考书目

教材:《数据库系统概论》 萨师煊 王珊 2000年2月 高等教育出版社

参考书目:

(1) 《Database System Concepts》 机械工业出版社

Abraham Silberschatz,Henry F.Korth,S.Sudarshan著

(2)《Database Systems—A Practical Approach to Design,Implementation,and Management》

电子工业出版社 Thomas Connolly,Carolyn Begg著

执笔人: 郭文明

返回顶部

课程学习

作者简介

郭文明,副教授,硕士生导师。

1989年毕业于北京理工大学,应用数学与应用软件专业,获理学学士学位;1992年毕业于华北工学院,系统工程专业,获工学硕士学位;2002年参加ORACLE公司的ORACLE9i培训,2004年参加IBM公司的UML培训;2006年9月到2007年9月赴爱尔兰都柏林城市大学(Dublin City University)作访问学者。1992-1995年任教于华北工学院自动控制系,1995-2002年任教于山西大学计算机科学系,2002年调入北京邮电大学软件学院。先后承担过“企业管理”、“技术经济学”、“运筹学”、“高等数学”、“复变函数”、“数值分析”、“数据库原理与技术”、“ORACLE数据库”、“数据库系统设计与开发”等课程的讲授。2005年开始为中央广播电视大学“信息系统开发案例分析与课程设计”课程录像教材的主讲教师。独立或参与完成省部级纵向和企业横向科研与开发项目30余项,其中:“城市环境综合整治定量考核评价指标体系及考核方法研究”(1998年),获山西省科技进步三等奖;“人事考试信息管理系统” (1999年),获国家人事部人事科研二等奖。目前承担国家级项目一项,主要侧重检测软件的开发和图象识别技术研究。曾在国内、外专业期刊或会议上发表论文20余篇。出版书籍两本:《现代企业管理学》,中国金融出版社;《信息系统开发案例分析与课程设计》,中央广播电视大学出版社。目前主要研究方向:数据库,信息系统和决策支持系统

E-mail:guowenming@bupt.edu.cn

MSN:guolyuz@hotmail.com

教材简介

书籍介绍:

萨师煊 王珊 2000年2月 高等教育出版社

目录:

  • 第一篇 基础篇

    • 第一章 绪论

    • 第二章 关系数据库

    • 第三章 关系数据库标准语言SQL

    • 第四章 数据库安全性

    • 第五章 数据库完整性

  • 第二篇 设计与应用开发篇

    • 第六章 关系数据理论

    • 第七章 数据库设计

    • 第八章 数据库编程

  • 第三篇 系统篇

    • 第九章 关系查询处理和查询优化

    • 第十章 数据库恢复技术

    • 第十一章 并发控制

    • 第十二章 数据库管理系统

  • 第四篇 新技术篇

    • 第十三章 数据库技术新发展

    • 第十四章 分布式数据库系统

    • 第十五章 对象关系数据库系统

    • 第十六章 XML数据库

    • 第十七章 数据仓库与联机分析处理技术

课程简介

课程编号:1100170

课程名称:数据库系统原理 64学时 Principles of Database Systems

适用专业:软件工程、计算机等专业

先修课程:数据结构、离散数学、操作系统

内容提要:

本课程研究数据存储和数据管理的分析和实现方法。主要内容:数据模型、关系数据模型的要素;关系代数的演算规则;数据库系统的结构;关系数据库数据操纵的标准语言-SQL,数据模式的创建,数据的查询、数据的更新、数据的控制语言;数据存储技术:文件结构和索引结构,查询优化;数据库设计过程,实体联系模型构建,实体联系模型与关系模型转换规则,关系规范化,第二范式、第三范式概念,基于范式的数据库设计方法;关系数据库中的数据完整性和安全性概念、分类、控制方法;事务管理:数据库恢复原理和并发控制。

教材中的实例

作业参考答案

课件PPT

返回顶部

练习平台

  1. 全国2005年4月高等教育自学考试数据库原理试题

  2. 全国2005年10月高等教育自学考试数据库原理试题

  3. 全国2006年1月高等教育自学考试数据库原理试题

  4. 全国2006年10月高等教育自学考试数据库原理试题

返回顶部

设计实践

返回顶部

技术前沿

网格计算:

网格计算即分布式计算

什么是分布式计算?所谓分布式计算是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。 最近的分布式计算项目已经被用于使用世界各地成千上万位志愿者的计算机的闲置计算能力,通过因特网,您可以分析来自外太空的电讯号,寻找隐蔽的黑洞,并探索可能存在的外星智慧生命;您可以寻找超过1000万位数字的梅森质数;您也可以寻找并发现对抗艾滋病病毒的更为有效的药物。这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的。

分布式计算是利用互联网上的计算机的 CPU 的闲置处理能力来解决大型计算问题的一种计算科学。下面,我们看看它是怎么工作的:

首先, 要发现一个需要非常巨大的计算能力才能解决的问题。这类问题一般是跨学科的、极富挑战性的、人类急待解决的科研课题。其中较为著名的是:

1.解决较为复杂的数学问题,例如:GIMPS(寻找最大的梅森素数)。

2.研究寻找最为安全的密码系统,例如:RC-72(密码破解)。

3.生物病理研究,例如:Folding@home(研究蛋白质折叠,误解,聚合及由此引起的相关疾病)。

4.各种各样疾病的药物研究,例如:United Devices(寻找对抗癌症的有效的药物)。

5.信号处理,例如:SETI@Home(在家寻找地外文明)。

从这些实际的例子可以看出,这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的。在以前,这些问题都应该由超级计算机来解决。但是, 超级计算机的造价和维护非常的昂贵,这不是一个普通的科研组织所能承受的。随着科学的发展,一种廉价的、高效的、维护方便的计算方法应运而生——分布式计算!

随着计算机的普及,个人电脑开始进入千家万户。与之伴随产生的是电脑的利用问题。越来越多的电脑处于闲置状态,即使在开机状态下CPU的潜力也远远不能被完全利用。我们可以想象,一台家用的计算机将大多数的时间花费在“等待”上面。即便是使用者实际使用他们的计算机时,处理器依然是寂静的消费,依然是不计其数的等待(等待输入,但实际上并没有做什么)。互联网的出现, 使得连接调用所有这些拥有限制计算资源的计算机系统成为了现实。

那么,一些本身非常复杂的但是却很适合于划分为大量的更小的计算片断的问题被提出来,然后由某个研究机构通过大量艰辛的工作开发出计算用服务端和客户端。服务端负责将计算问题分成许多小的计算部分,然后把这些部分分配给许多联网参与计算的计算机进行并行处理,最后将这些计算结果综合起来得到最终的结果。

当然,这看起来也似乎很原始、很困难,但是随着参与者和参与计算的计算机的数量的不断增加, 计算计划变得非常迅速,而且被实践证明是的确可行的。目前一些较大的分布式计算项目的处理能力已经可以达到甚而超过目前世界上速度最快的巨型计算机。

您也可以选择参加某些项目以捐赠的 Cpu 内核处理时间,您将发现您所提供的 CPU 内核处理时间将出现在项目的贡献统计中。您可以和其他的参与者竞争贡献时间的排名,您也可以加入一个已经存在的计算团体或者自己组建一个计算小组。这种方法很利于调动参与者的热情。

随着民间的组队逐渐增多, 许多大型组织(例如公司、学校和各种各样的网站)也开始了组建自己的战队。同时,也形成了大量的以分布式计算技术和项目讨论为主题的社区,这些社区多数是翻译制作分布式计算项目的使用教程及发布相关技术性文章,并提供必要的技术支持。

那么谁可能加入到这些项目中来呢? 当然是任何人都可以! 如果您已经加入了某个项目,而且曾经考虑加入计算小组, 您将在中国分布式计算总站及论坛里找到您的家。任何人都能加入任何由我站的组建的分布式计算小组。希望您在中国分布式总站及论坛里发现乐趣。

参与分布式计算——一种能充分发挥您的个人电脑的利用价值的最有意义的选择——只需要下载有关程序,然后这个程序会以最低的优先度在计算机上运行,这对平时正常使用计算机几乎没有影响。如果你想利用计算机的空余时间做点有益的事情,还犹豫什么?马上行动起来吧,你的微不足道的付出或许就能使你在人类科学的发展史上留下不小的一笔呢!

专业定义 (中国科学技术信息研究所对分布式计算的定义)

分布式计算是近年提出的一种新的计算方式。所谓分布式计算就是在两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。分布式计算比起其它算法具有以下几个优点:

1、稀有资源可以共享,

2、通过分布式计算可以在多台计算机上平衡计算负载,

3、可以把程序放在最适合运行它的计算机上,

其中,共享稀有资源和平衡负载是计算机分布式计算的核心思想之一。

实际上,网格计算就是分布式计算的一种。如果我们说某项工作是分布式的,那么,参与这项工作的一定不只是一台计算机,而是一个计算机网络,显然这种“蚂蚁搬山”的方式将具有很强的数据处理能力。网格计算的实质就是组合与共享资源并确保系统安全。

参考资料:http://www.equn.com/

数据挖掘

数据挖掘(Data Mining),又称为数据库中的知识发现(Knowledge Discovery in Database, KDD),就是从大量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程,简单的说,数据挖掘就是从大量数据中提取或“挖掘”知识。并非所有的信息发现任务都被视为数据挖掘。例如,使用数据库管理系统查找个别的记录,或通过因特网的搜索引擎查找特定的Web页面,则是信息检索(information retrieval)领域的任务。虽然这些任务是重要的,可能涉及使用复杂的算法和数据结构,但是它们主要依赖传统的计算机科学技术和数据的明显特征来创建索引结构,从而有效地组织和检索信息。尽管如此,数据挖掘技术也已用来增强信息检索系统的能力。

1)数据挖掘能做以下六种不同事情(分析方法):

· 分类 (Classification)

· 估值(Estimation)

· 预言(Prediction)

· 相关性分组或关联规则(Affinity grouping or association rules)

· 聚集(Clustering)

· 描述和可视化(Des cription and Visualization)

· 复杂数据类型挖掘(Text, Web ,图形图像,视频,音频等)

2)数据挖掘分类

以上六种数据挖掘的分析方法可以分为两类:直接数据挖掘;间接数据挖掘

· 直接数据挖掘

目标是利用可用的数据建立一个模型,这个模型对剩余的数据,对一个特定的变量(可以理解成数据库中表的属性,即列)进行描述。

· 间接数据挖掘

目标中没有选出某一具体的变量,用模型进行描述;而是在所有的变量中建立起某种关系 。

· 分类、估值、预言属于直接数据挖掘;后三种属于间接数据挖掘

3)各种分析方法的简介

· 分类 (Classification)

首先从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分类模型,对于没有分类的数据进行分类。

例子:

a. 信用卡申请者,分类为低、中、高风险

b. 分配客户到预先定义的客户分片

注意: 类的个数是确定的,预先定义好的

· 估值(Estimation)

估值与分类类似,不同之处在于,分类描述的是离散型变量的输出,而估值处理连续值的输出;分类的类别是确定数目的,估值的量是不确定的。

例子:

a. 根据购买模式,估计一个家庭的孩子个数

b. 根据购买模式,估计一个家庭的收入

c. 估计real estate的价值

一般来说,估值可以作为分类的前一步工作。给定一些输入数据,通过估值,得到未知的连续变量的值,然后,根据预先设定的阈值,进行分类。例如:银行对家庭贷款业务,运用估值,给各个客户记分(Score 0~1)。然后,根据阈值,将贷款级别分类。

· 预言(Prediction)

通常,预言是通过分类或估值起作用的,也就是说,通过分类或估值得出模型,该模型用于对未知变量的预言。从这种意义上说,预言其实没有必要分为一个单独的类。预言其目的是对未来未知变量的预测,这种预测是需要时间来验证的,即必须经过一定时间后,才知道预言准确性是多少。

· 相关性分组或关联规则(Affinity grouping or association rules)

决定哪些事情将一起发生。

例子:

a. 超市中客户在购买A的同时,经常会购买B,即A => B(关联规则)

b. 客户在购买A后,隔一段时间,会购买B (序列分析)

· 聚集(Clustering)

聚集是对记录分组,把相似的记录在一个聚集里。聚集和分类的区别是聚集不依赖于预先定义好的类,不需要训练集。

例子:

a. 一些特定症状的聚集可能预示了一个特定的疾病

b. 租VCD类型不相似的客户聚集,可能暗示成员属于不同的亚文化群

聚集通常作为数据挖掘的第一步。例如,"哪一种类的促销对客户响应最好?",对于这一 类问题,首先对整个客户做聚集,将客户分组在各自的聚集里,然后对每个不同的聚集,回答问题,可能效果更好。

· 描述和可视化(Des cription and Visualization)

是对数据挖掘结果的表示方式。

数据挖掘和数据仓库的协同工作,一方面,可以迎合和简化数据挖掘过程中的重要步骤,提高数据挖掘的效率和能力,确保数据挖掘中数据来源的广泛性和完整性。另一方面,数据挖掘技术已经成为数据仓库应用中极为重要和相对独立的方面和工具。

数据挖掘和数据仓库是融合与互动发展的,其学术研究价值和应用研究前景将是令人振奋的。它是数据挖掘专家、数据仓库技术人员和行业专家共同努力的成果,更是广大渴望从数据库“奴隶”到数据库“主人”转变的企业最终用户的通途。

参考资料:

1.《数据挖掘概念与技术》

2.http://book.csdn.net/bookfiles/327/10032713183.shtml

P2P

互联网能够发展至今,根本原因在于其布建的任何一根血脉都是为人与人之间的交流而设置的。而现在能够引起互联网震动的,无非也只有交流方式的变革本身。 如今,在基于网络的各种技术充斥于我们周围之时,恐怕只有很少人不知道P2P的概念了,即便您没有深入探究,但您每日在互联网间进行的活动几乎没有不沾P2P技术的。一个简单的例子,在你使用QQ尽情聊天之时,实际上就享受着P2P技术给你带来的快感与兴奋。P2P技术究竟意味着什么呢?关于P2P技术的两种解释或许可以说明这个问题。

一种解释是,P2P即peer-to-peer。而peer在英语里是“(地位、能力等)同等者”、“同事”和“伙伴”的意思。这样一来,P2P也就可以理解为“伙伴对伙伴”的意思,或称为对等联网,我甚至觉得解释成为person-to-person更好一些。反正交流也都是人的交流。

而另一种解释是,P2P就是一种思想,有着改变整个互联网基础的潜能的思想。客观讲,单从技术角度而言,P2P并未激发出任何重大的创新,而更多的是改变了人们对因特网的理解与认识。正是由于这个原因,IBM早就宣称P2P不是一个技术概念,而是一个社会和经济现象。

不管是技术还是思想,P2P是直接将人们联系了起来,让人们通过互联网直接交流。它使得网络上的沟通变得更容易、更直接,真正地消除中间环节。这听起来仿佛全新的概念,但其实并不是什么新鲜事。我们每天见面,或者通过电话直接交流都是P2P最直接的例子。而这个时候你有没有从电话的发展的历史中隐约感觉到,P2P必将在互联网时代有着突飞猛进的发展,因为他可以改变现在的Internet以大网站为中心的状态、重返“非中心化”,并把权力交还给用户,让我们的语言影像以最直接的方式传递到对方身边。它最符合互联网络设计者的初衷,给了人们一个完全自主的超级网络资源库。现在在业界,比较认同的P2P计算应用系统的目标主要有以下几类:

1.信息、服务的共享与管理

2.协作

3.构建充当基层架构的互联系统

同样,在传统的方法不能奏效的情况下,出版商们便只有从源头上遏制了。不知道国外关于此的争闹还会继续多久,然而在中国却又是另一种风景。众所周知,现阶段中国的版权保护制度和国外还有实质上的差距,这实际上使P2P技术的运用在相当长的一段时间内可以规避版权问题的困扰。按照国内我们的理解,P2P软件提供的只是一个资源共享平台,并不需要对其中传播的内容负主要责任,只要适当地监督引导当然可以大胆运作。从这方面来说,国内的P2P软件厂商处境要比国外的同行幸福很多,路已经有前人开好,又不必像国外的先行者如Napster一样面临官司的压力。而我们面对现状,一个形象的比喻是:你愿意挥汗如雨在天桥淘碟,还是愿意轻松候意在家享受宽带视频下载? 网络传输这种传播方式迟早有一天会取代传统的以磁带、光盘为载体的影视音乐发行渠道,从而成为人们获取影音资源的主要渠道,这似乎已经成了一个不争的事实。看看国外已经进行了多少年的争端,能不能给我们一些启示。在中国这样一个走进任何一家音像店,你都可以用低廉的价格获取几乎与正版没有任何区别的音像制品的情况下,利用新技术的无穷魅力与优势建立一个全新的发行渠道,打破以往那种发行模式才有可能避免切肤之痛。或许,国内的P2P行业有可能比国外的同行更有优势率先实现成熟的商业模式。

XML

XML是eXtensible Markup Language的缩写。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。

XML与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:他极其简单。这是一个看上去有点琐细的优点,但正是这点使XML与众不同。

XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。

XML的前身是SGML(The Standard Generalized Markup Language),是自IBM从60年代就开始发展的GML(Generalized Markup Language)

同HTML一样, XML (可扩展标识语言)是通用标识语言标准(SGML)的一个子集,它是描述网络上的数据内容和结构的标准。尽管如此,XML不象HTML,HTML仅仅提供了在页面上显示信息的通用方法(没有上下文相关和动态功能) ,XML则对数据赋予上下文相关功能,它继承了SGML的大部分功能,却使用了不太复杂的技术。.

为了使得SGML显得用户友好,XML重新定义了SGML的一些内部值和参数,去掉了大量的很少用到的功能,这些繁杂的功能使得SGML在设计网站时显得复杂化。XML保留了SGML的结构化功能,这样就使得网站设计者可以定义自己的文档类型,XML同时也推出一种新型文档类型,使得开发者也可以不必定义文档类型。

因为XML是W3C制定的,XML的标准化工作由W3C的XML工作组负责,该小组成员由来自各个地方和行业的专家组成,他们通过email交流对XML标准的意见,并提出自己的看法 (www.w3.org/TR/WD-xml)。因为XML 是个公共格式, (它不专属于任何一家公司),你不必担心XML技术会成为少数公司的盈利工具,XML不是一个依附于特定浏览器的语言

XML(可扩展标记语言)是从称为SGML(标准通用标记语言)的更加古老的语言派生出来的。SGML的主要目的是定义使用标签来表示数据的标记语言的语法。

标签由包围在一个小于号()之间的文本组成,例如。起始标签(start tag)表示一个特定区域的开始,例如;结束标签(end tag)定义了一个区域的结束,除了在小于号之后紧跟着一个斜线(/)外,和起始标签基本一样,例如。SGML还定义了标签的特性(attribute),它们是定义在小于号和大于号之间的值,例如

中的src特性。如果你觉得它看起来很熟悉的话,应该知道,基于SGML的语言的最著名实现就是原始的HTML。

SGML常用来定义针对HTML的文档类型定义(DTD),同时它也常用于编写XML的DTD。SGML的问题就在于,它允许出现一些奇怪的语法,这让创建HTML的解析器成为一个大难题:

1 某些起始标签不允许出现结束标签,例如HTML中 标签。包含了结束标签就会出现错误。

2 某些起始标签可以选择性出现结束标签或者隐含了结束标签,例如HTML中

标签,当出现另一个

标签或者某些其他标签时,便假设在这之前有一个结束标签。

3 某些起始标签要求必须出现结束标签,例如HTML中script标签。

4 标签可以以任何顺序嵌套。即使结束标签不按照起始标签的逆序出现也是允许的,例如,This is asamplestring是正确的。

5 某些特性要求必须包含值,例如

中的src特性。

6 某些特性不要求一定有值,

例如

中的nowrap特性。

7 定义特性的两边有没有加上双引号都是可以的,所以

都是允许的。

这些问题使建立一个SGML语言的解析器变成了一项艰巨的任务。判断何时应用以上规则的困难导致了SGML语言的定义一直停滞不前。以这些问题作为出发点,XML逐渐步入我们的视野。

XML去掉了之前令许多开发人员头疼的SGML的随意语法。在XML中,采用了如下的语法:

8 任何的起始标签都必须有一个结束标签。

9 可以采用另一种简化语法,可以在一个标签中同时表示起始和结束标签。这种语法是在大于符号之前紧跟一个斜线(/),例如。XML解析器会将其翻译成。

10 标签必须按合适的顺序进行嵌套,所以结束标签必须按镜像顺序匹配起始标签,例如this is asamplestring。这好比是将起始和结束标签看作是数学中的左右括号:在没有关闭所有的内部括号之前,是不能关闭外面的括号的。

11 所有的特性都必须有值。

12 所有的特性都必须在值的周围加上双引号。

信息检索

信息检索(Information Retrieval)是指信息按一定的方式组织起来,并根据信息用户的需要找出有关的信息的过程和技术。

狭义的信息检索就是信息检索过程的后半部分,即从信息集合中找出所需要的信息的过程,也就是我们常说的信息查寻(Information Search 或Information Seek)。

信息检索的手段

(1)手工检索 (2)光盘检索

(3)联机检索 (4)网络检索

概括起来分为手工检索和机械检索:

手工检索:指利用印刷型检索书刊检索信息的过程,优点是回溯性好,没有时间限制,不收费,缺点是费时,效率低。

机械检索:指利用计算机检索数据库的过程,优点是速度快,缺点是回溯性不好,且有时间限制。

计算机检索、网络文献检索将成为信息检索的主流。

网络信息检索,也即网络信息搜索,是指互联网用户在网络终端,通过特定的网络搜索工具或是通过浏览的方式,查找并获取信息的行为。

信息检索的对象

1文献检索(Document Retrieval)

是以文献(包括题录、文摘和全文)为检索对象的检索。可分为全文检索和书目检索两种。

2 数据检索(Data Retrieval)

是以数值或数据(包括数据、图表、公式等)为对象的检索。

3 事实检索 (Fact Retrieval)

是以某一客观事实为检索对象,查找某一事物发生的时间、地点及过程的检索。

为什么要进行信息检索

1 信息检索是获取知识的捷径

美国普林斯顿大学物理系一个年轻大学生名叫约瀚·菲利普,在图书馆里借阅有关公开资料,仅用四个月时间,就画出一张制造原子弹的设计图。他设计的原子弹,体积小(棒球大小)、重量轻(7.5公斤)、威力大(相当广岛原子弹3/4的威力),造价低(当时仅需两千美元),致使一些国家(法国、巴基斯坦等)纷纷致函美国大使馆,争相购买他的设计拷贝。

二十世纪七十年代,美国核专家泰勒收到一份题为《制造核弹的方法》的报告,他被报告精湛的技术设计所吸引,惊叹地说:“至今我看到的报告中,它是最详细、最全面的一份。”但使他更为惊异的是,这份报告竟出于哈佛大学经济专业的青年学生之手,而这个四百多页的技术报告的全部信息来源又都是从图书馆那些极为平常的、完全公开的图书资料中所获得的。

2 信息检索是科学研究的向导

美国在实施“阿波罗登月计划”中,对阿波罗飞船的燃料箱进行压力实验时,发现甲醇会引起钛应力腐蚀,为此付出了数百万美元来研究解决这一问题,事后查明,早在十多年前,就有人研究出来了,方法非常简单,只需在甲醇中加入2%的水即可,检索这篇文献的时间是10多分钟。在科研开发领域里,重复劳动在世界各国都不同程度地存在。据统计,美国每年由于重复研究所造成的损失,约占全年研究经费的38%,达20亿美元之巨。日本有关化学化工方面的研究课题与国外重复的,大学占40%、民间占47%、国家研究机构占40%,平均重复率在40%以上;我国的重复率则更高。专业研究的程序

3 信息检索是终身教育的基础

学校培养学生的目标是学生的智能:包括自学能力、研究能力、思维能力、表达能力和组织管理能力。

UNESCO提出,教育已扩大到一个人的整个一生,认为唯有全面的终身教育才能够培养完善的人,可以防止知识老化,不断更新知识,适应当代信息社会发展的需求。

信息检索的四个要素

1 信息检索的前题----信息意识

所谓信息意识,简单地说,是人们利用信息系统获取所需信息的内在动因,具体表现为对信息的敏感性、选择能力和消化吸收能力。信息意识含有信息认知、信息情感和信息行为倾向三个层面。

信息素养(素质)(Information Literacy)一词最早是由美国信息产业协会主席Paul Zurkowski在1974年给美国政府的报告中提出来的。他认为:信息素质是人们在工作中运用信息、学习信息技术、利用信息解决问题的能力。

2 信息检索的基础----信息源(信息的来源)

信息源的构成

按文献载体分----印刷型、缩微型、机读型、声像型

按文献内容和加工程度分--一次信息、二次信息、三次信息

按出版形式分----图书、报刊、研究报告、会议信息、专利信 息、统计数据、政府出版物、档案、学位论文、标准信息(它们被认为是十大信息源,其中后8种被称为特种文献。教育信息资源主要分布在教育类图书、专业期刊、学位论文等不同类型的出版物中)

3 信息检索的核心----信息获取能力

(1) 了解各种信息来源

(2)掌握检索语言

(3)熟练使用检索工具

(4)能对检索效果进行判断和评价

判断检索效果的两个指标:

查全率=被检出相关信息量/相关信息总量(%)

查准率=被检出相关信息量/被检出信息总量(%)

4 信息检索的关键:信息利用

社会进步的过程就是一个知识不断的生产—流通—再生产的过程。

为了全面、有效地利用现有知识和信息,在学习、科学研究和生活过程中,信息检索的时间比例逐渐增高。

获取学术信息的最终目的是通过对所得信息的整理、分析、归纳和总结,根据自己学习、研究过程中的思考和思路,将各种信息进行重组,船造出新的知识和信息,从而达到信息激活和增值的目的。

参考资料:

1.赖茂生等.《科技文献检索》.北京:北京大学出版社

返回顶部

关于我们

课件组:

总负责人: 郭文明 韩祥斌

课件编导: 郭文明

授课老师: 郭文明

实验设计及指导:韩祥斌

网页制作:张立,姜宁,储旭光,潘国成,王大路,李宗宇

联系方式:

联系地址:北京市昌平区北七家镇北京邮电大学宏福校区软件学院

邮编:102209

Email: guolyuze@hotmail.com / guowenming@bupt.edu.cn

更多内容请详见>>http://www.buptsse.cn/MS_Database/index.html

教学大纲

一、课程编号:1100170

二、课程名称:数据库系统原理 64学时

Principles of Database Systems

三、先修课程:数据结构、离散数学、操作系统

四、适用专业:软件工程、计算机等专业

五、课程教学目的

本课程是的一门专业基础课,通过本课程的学习,应该理解和掌握数据库的基本理论和基本分析方法,培养学生使用数据库管理系统和设计数据库的能力,了解数据库管理系统的实现原理。

为设计和开发数据库相关应用系统打下必要的基础。

六、课程教学基本要求

1.理解数据模型概念,重点理解关系模型的三要素,在学习了离散数学的基础上,掌握关系代数的基本思想,对于给定的关系数据结构,具有灵活运用关系代数进行演算的能力;理解数据库

系统结构,明确数据库三级模式、两级映像结构的意义,从而理解数据库的特点。

2.掌握SQL语言,重点掌握Select语法,学会子查询、嵌套查询、集合函数在实际中的用法,在了解关系数据库数据存储的基础上,理解查询优化的意义。

3.掌握数据库设计方法,通过实例学习,对于实际问题能够建立ER模型,并将ER模型转换成关系模型,掌握关系规范化中函数依赖的概念,理解第一范式、第二范式、第三范式的含义,在

给定基本函数依赖基础上,能够给出第三范式的关系模式。

4.理解关系模型中完整性和安全性的含义,掌握实现实体完整性、参照完整性、用户自定义完整的方法,掌握建立用户、建立角色、授予权限的语法,能够通过存取控制和视图实现数据库安

全性;理解事务概念,明确事务管理含义,理解数据库恢复和并发控制的原理,并熟练掌握数据库恢复方法。

七、教学内容及学时分配

1.绪论 6学时

数据库系统概述、数据管理的三个阶段,

数据模型:数据结构、数据操纵、数据约束,

数据库系统结构:三级结构、两级映像性。

数据库系统的组成:数据库管理系统、数据库、应用程序、用户

2.关系数据库 6学时

关系模型:关系结构、关系操纵、关系完整性,

关系结构:结合数据结构,理解关系数据结构含义,

关系完整性:实体、参照、用户自定义完整性,

关系代数:并、交、差、笛卡尔积、选择、投影、连接、广义投影。

实验1 数据库认知实验 4学时

3.SQL语言 8学时

SQL特点、SQL标准,

数据定义:Create,

数据查询:Select,

数据更新:Insert、Delete、Update,

数据控制:Grant、Revoke,

视图的概念、视图的定义、视图操纵、视图的更新,

存储过程、触发器,

嵌入式SQL。

实验2 SQL基础 2学时

实验3 高级SQL 2学时

4.关系存储和查询优化 4学时

表的存储、索引结构、聚簇结构,

关系系统分类,

查询优化概念、查询优化方法。

5.数据库设计 6学时

数据库设计过程:需求分析、概念设计、逻辑设计、物理设计、数据库实施,

实体联系分析,ER模型,ER模型向关系模型转换规则,

ER与UML。

实验4 数据库设计1 2学时

6.关系规范化 4学时

数据库设计问题:插入异常、删除异常、更新异常,

函数依赖定义,阿姆斯特朗公理,

基本依赖闭包,候选码,

第二范式、第三范式。

实验5 数据库设计2 2学时

7.安全性和完整性 6学时

安全性控制:用户、角色、权限、授权,

完整性分类和完整性控制方法。

实验6 安全性实验 2学时

8.事务管理 6学时

事务的概念、性质,事务的实现,

数据库故障、日志,数据库恢复原理和方法,

并发问题:数据不一致性,

数据锁、封锁粒度、封锁协议,

死锁预防和死锁处理

如何提高并发度。

实验7 备份与恢复 2学时

期中考试 2学时

八、教学重点、难点

重点:理解关系模型的要素和关系模型的特点,培养关系代数的演算能力;掌握SQL语言,把握SQL语句的语法、

用法,特别是高级SQL语句的使用;理解数据库设计的过程,掌握实体联系模型和关系模型的对应关系,掌握关系规

范化的主要思想;培养学生关系数据库的分析、设计能力。

难点:关系模型的数学依据,对应数据结构、离散数学与关系模型的联系;数据库查询优化、并发控制和数据库

恢复的各种概念、方法、理论。

九、使用教材及参考书目

教材:《数据库系统概论》 萨师煊 王珊 2000年2月 高等教育出版社

参考书目:

(1) 《Database System Concepts》 机械工业出版社

Abraham Silberschatz,Henry F.Korth,S.Sudarshan著

(2)《Database Systems—A Practical Approach to Design,Implementation,and Management》

电子工业出版社 Thomas Connolly,Carolyn Begg著

执笔人: 郭文明

返回顶部

课程学习

作者简介

郭文明,副教授,硕士生导师。

1989年毕业于北京理工大学,应用数学与应用软件专业,获理学学士学位;1992年毕业于华北工学院,系统工程专业,获工学硕士学位;2002年参加ORACLE公司的ORACLE9i培训,2004年参加IBM公司的UML培训;2006年9月到2007年9月赴爱尔兰都柏林城市大学(Dublin City University)作访问学者。1992-1995年任教于华北工学院自动控制系,1995-2002年任教于山西大学计算机科学系,2002年调入北京邮电大学软件学院。先后承担过“企业管理”、“技术经济学”、“运筹学”、“高等数学”、“复变函数”、“数值分析”、“数据库原理与技术”、“ORACLE数据库”、“数据库系统设计与开发”等课程的讲授。2005年开始为中央广播电视大学“信息系统开发案例分析与课程设计”课程录像教材的主讲教师。独立或参与完成省部级纵向和企业横向科研与开发项目30余项,其中:“城市环境综合整治定量考核评价指标体系及考核方法研究”(1998年),获山西省科技进步三等奖;“人事考试信息管理系统” (1999年),获国家人事部人事科研二等奖。目前承担国家级项目一项,主要侧重检测软件的开发和图象识别技术研究。曾在国内、外专业期刊或会议上发表论文20余篇。出版书籍两本:《现代企业管理学》,中国金融出版社;《信息系统开发案例分析与课程设计》,中央广播电视大学出版社。目前主要研究方向:数据库,信息系统和决策支持系统

E-mail:guowenming@bupt.edu.cn

MSN:guolyuz@hotmail.com

教材简介

书籍介绍:

萨师煊 王珊 2000年2月 高等教育出版社

目录:

  • 第一篇 基础篇

    • 第一章 绪论

    • 第二章 关系数据库

    • 第三章 关系数据库标准语言SQL

    • 第四章 数据库安全性

    • 第五章 数据库完整性

  • 第二篇 设计与应用开发篇

    • 第六章 关系数据理论

    • 第七章 数据库设计

    • 第八章 数据库编程

  • 第三篇 系统篇

    • 第九章 关系查询处理和查询优化

    • 第十章 数据库恢复技术

    • 第十一章 并发控制

    • 第十二章 数据库管理系统

  • 第四篇 新技术篇

    • 第十三章 数据库技术新发展

    • 第十四章 分布式数据库系统

    • 第十五章 对象关系数据库系统

    • 第十六章 XML数据库

    • 第十七章 数据仓库与联机分析处理技术

课程简介

课程编号:1100170

课程名称:数据库系统原理 64学时 Principles of Database Systems

适用专业:软件工程、计算机等专业

先修课程:数据结构、离散数学、操作系统

内容提要:

本课程研究数据存储和数据管理的分析和实现方法。主要内容:数据模型、关系数据模型的要素;关系代数的演算规则;数据库系统的结构;关系数据库数据操纵的标准语言-SQL,数据模式的创建,数据的查询、数据的更新、数据的控制语言;数据存储技术:文件结构和索引结构,查询优化;数据库设计过程,实体联系模型构建,实体联系模型与关系模型转换规则,关系规范化,第二范式、第三范式概念,基于范式的数据库设计方法;关系数据库中的数据完整性和安全性概念、分类、控制方法;事务管理:数据库恢复原理和并发控制。

教材中的实例

作业参考答案

课件PPT

返回顶部

练习平台

  1. 全国2005年4月高等教育自学考试数据库原理试题

  2. 全国2005年10月高等教育自学考试数据库原理试题

  3. 全国2006年1月高等教育自学考试数据库原理试题

  4. 全国2006年10月高等教育自学考试数据库原理试题

返回顶部

设计实践

返回顶部

技术前沿

网格计算:

网格计算即分布式计算

什么是分布式计算?所谓分布式计算是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。 最近的分布式计算项目已经被用于使用世界各地成千上万位志愿者的计算机的闲置计算能力,通过因特网,您可以分析来自外太空的电讯号,寻找隐蔽的黑洞,并探索可能存在的外星智慧生命;您可以寻找超过1000万位数字的梅森质数;您也可以寻找并发现对抗艾滋病病毒的更为有效的药物。这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的。

分布式计算是利用互联网上的计算机的 CPU 的闲置处理能力来解决大型计算问题的一种计算科学。下面,我们看看它是怎么工作的:

首先, 要发现一个需要非常巨大的计算能力才能解决的问题。这类问题一般是跨学科的、极富挑战性的、人类急待解决的科研课题。其中较为著名的是:

1.解决较为复杂的数学问题,例如:GIMPS(寻找最大的梅森素数)。

2.研究寻找最为安全的密码系统,例如:RC-72(密码破解)。

3.生物病理研究,例如:Folding@home(研究蛋白质折叠,误解,聚合及由此引起的相关疾病)。

4.各种各样疾病的药物研究,例如:United Devices(寻找对抗癌症的有效的药物)。

5.信号处理,例如:SETI@Home(在家寻找地外文明)。

从这些实际的例子可以看出,这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的。在以前,这些问题都应该由超级计算机来解决。但是, 超级计算机的造价和维护非常的昂贵,这不是一个普通的科研组织所能承受的。随着科学的发展,一种廉价的、高效的、维护方便的计算方法应运而生——分布式计算!

随着计算机的普及,个人电脑开始进入千家万户。与之伴随产生的是电脑的利用问题。越来越多的电脑处于闲置状态,即使在开机状态下CPU的潜力也远远不能被完全利用。我们可以想象,一台家用的计算机将大多数的时间花费在“等待”上面。即便是使用者实际使用他们的计算机时,处理器依然是寂静的消费,依然是不计其数的等待(等待输入,但实际上并没有做什么)。互联网的出现, 使得连接调用所有这些拥有限制计算资源的计算机系统成为了现实。

那么,一些本身非常复杂的但是却很适合于划分为大量的更小的计算片断的问题被提出来,然后由某个研究机构通过大量艰辛的工作开发出计算用服务端和客户端。服务端负责将计算问题分成许多小的计算部分,然后把这些部分分配给许多联网参与计算的计算机进行并行处理,最后将这些计算结果综合起来得到最终的结果。

当然,这看起来也似乎很原始、很困难,但是随着参与者和参与计算的计算机的数量的不断增加, 计算计划变得非常迅速,而且被实践证明是的确可行的。目前一些较大的分布式计算项目的处理能力已经可以达到甚而超过目前世界上速度最快的巨型计算机。

您也可以选择参加某些项目以捐赠的 Cpu 内核处理时间,您将发现您所提供的 CPU 内核处理时间将出现在项目的贡献统计中。您可以和其他的参与者竞争贡献时间的排名,您也可以加入一个已经存在的计算团体或者自己组建一个计算小组。这种方法很利于调动参与者的热情。

随着民间的组队逐渐增多, 许多大型组织(例如公司、学校和各种各样的网站)也开始了组建自己的战队。同时,也形成了大量的以分布式计算技术和项目讨论为主题的社区,这些社区多数是翻译制作分布式计算项目的使用教程及发布相关技术性文章,并提供必要的技术支持。

那么谁可能加入到这些项目中来呢? 当然是任何人都可以! 如果您已经加入了某个项目,而且曾经考虑加入计算小组, 您将在中国分布式计算总站及论坛里找到您的家。任何人都能加入任何由我站的组建的分布式计算小组。希望您在中国分布式总站及论坛里发现乐趣。

参与分布式计算——一种能充分发挥您的个人电脑的利用价值的最有意义的选择——只需要下载有关程序,然后这个程序会以最低的优先度在计算机上运行,这对平时正常使用计算机几乎没有影响。如果你想利用计算机的空余时间做点有益的事情,还犹豫什么?马上行动起来吧,你的微不足道的付出或许就能使你在人类科学的发展史上留下不小的一笔呢!

专业定义 (中国科学技术信息研究所对分布式计算的定义)

分布式计算是近年提出的一种新的计算方式。所谓分布式计算就是在两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。分布式计算比起其它算法具有以下几个优点:

1、稀有资源可以共享,

2、通过分布式计算可以在多台计算机上平衡计算负载,

3、可以把程序放在最适合运行它的计算机上,

其中,共享稀有资源和平衡负载是计算机分布式计算的核心思想之一。

实际上,网格计算就是分布式计算的一种。如果我们说某项工作是分布式的,那么,参与这项工作的一定不只是一台计算机,而是一个计算机网络,显然这种“蚂蚁搬山”的方式将具有很强的数据处理能力。网格计算的实质就是组合与共享资源并确保系统安全。

参考资料:http://www.equn.com/

数据挖掘

数据挖掘(Data Mining),又称为数据库中的知识发现(Knowledge Discovery in Database, KDD),就是从大量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程,简单的说,数据挖掘就是从大量数据中提取或“挖掘”知识。并非所有的信息发现任务都被视为数据挖掘。例如,使用数据库管理系统查找个别的记录,或通过因特网的搜索引擎查找特定的Web页面,则是信息检索(information retrieval)领域的任务。虽然这些任务是重要的,可能涉及使用复杂的算法和数据结构,但是它们主要依赖传统的计算机科学技术和数据的明显特征来创建索引结构,从而有效地组织和检索信息。尽管如此,数据挖掘技术也已用来增强信息检索系统的能力。

1)数据挖掘能做以下六种不同事情(分析方法):

· 分类 (Classification)

· 估值(Estimation)

· 预言(Prediction)

· 相关性分组或关联规则(Affinity grouping or association rules)

· 聚集(Clustering)

· 描述和可视化(Des cription and Visualization)

· 复杂数据类型挖掘(Text, Web ,图形图像,视频,音频等)

2)数据挖掘分类

以上六种数据挖掘的分析方法可以分为两类:直接数据挖掘;间接数据挖掘

· 直接数据挖掘

目标是利用可用的数据建立一个模型,这个模型对剩余的数据,对一个特定的变量(可以理解成数据库中表的属性,即列)进行描述。

· 间接数据挖掘

目标中没有选出某一具体的变量,用模型进行描述;而是在所有的变量中建立起某种关系 。

· 分类、估值、预言属于直接数据挖掘;后三种属于间接数据挖掘

3)各种分析方法的简介

· 分类 (Classification)

首先从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分类模型,对于没有分类的数据进行分类。

例子:

a. 信用卡申请者,分类为低、中、高风险

b. 分配客户到预先定义的客户分片

注意: 类的个数是确定的,预先定义好的

· 估值(Estimation)

估值与分类类似,不同之处在于,分类描述的是离散型变量的输出,而估值处理连续值的输出;分类的类别是确定数目的,估值的量是不确定的。

例子:

a. 根据购买模式,估计一个家庭的孩子个数

b. 根据购买模式,估计一个家庭的收入

c. 估计real estate的价值

一般来说,估值可以作为分类的前一步工作。给定一些输入数据,通过估值,得到未知的连续变量的值,然后,根据预先设定的阈值,进行分类。例如:银行对家庭贷款业务,运用估值,给各个客户记分(Score 0~1)。然后,根据阈值,将贷款级别分类。

· 预言(Prediction)

通常,预言是通过分类或估值起作用的,也就是说,通过分类或估值得出模型,该模型用于对未知变量的预言。从这种意义上说,预言其实没有必要分为一个单独的类。预言其目的是对未来未知变量的预测,这种预测是需要时间来验证的,即必须经过一定时间后,才知道预言准确性是多少。

· 相关性分组或关联规则(Affinity grouping or association rules)

决定哪些事情将一起发生。

例子:

a. 超市中客户在购买A的同时,经常会购买B,即A => B(关联规则)

b. 客户在购买A后,隔一段时间,会购买B (序列分析)

· 聚集(Clustering)

聚集是对记录分组,把相似的记录在一个聚集里。聚集和分类的区别是聚集不依赖于预先定义好的类,不需要训练集。

例子:

a. 一些特定症状的聚集可能预示了一个特定的疾病

b. 租VCD类型不相似的客户聚集,可能暗示成员属于不同的亚文化群

聚集通常作为数据挖掘的第一步。例如,"哪一种类的促销对客户响应最好?",对于这一 类问题,首先对整个客户做聚集,将客户分组在各自的聚集里,然后对每个不同的聚集,回答问题,可能效果更好。

· 描述和可视化(Des cription and Visualization)

是对数据挖掘结果的表示方式。

数据挖掘和数据仓库的协同工作,一方面,可以迎合和简化数据挖掘过程中的重要步骤,提高数据挖掘的效率和能力,确保数据挖掘中数据来源的广泛性和完整性。另一方面,数据挖掘技术已经成为数据仓库应用中极为重要和相对独立的方面和工具。

数据挖掘和数据仓库是融合与互动发展的,其学术研究价值和应用研究前景将是令人振奋的。它是数据挖掘专家、数据仓库技术人员和行业专家共同努力的成果,更是广大渴望从数据库“奴隶”到数据库“主人”转变的企业最终用户的通途。

参考资料:

1.《数据挖掘概念与技术》

2.http://book.csdn.net/bookfiles/327/10032713183.shtml

P2P

互联网能够发展至今,根本原因在于其布建的任何一根血脉都是为人与人之间的交流而设置的。而现在能够引起互联网震动的,无非也只有交流方式的变革本身。 如今,在基于网络的各种技术充斥于我们周围之时,恐怕只有很少人不知道P2P的概念了,即便您没有深入探究,但您每日在互联网间进行的活动几乎没有不沾P2P技术的。一个简单的例子,在你使用QQ尽情聊天之时,实际上就享受着P2P技术给你带来的快感与兴奋。P2P技术究竟意味着什么呢?关于P2P技术的两种解释或许可以说明这个问题。

一种解释是,P2P即peer-to-peer。而peer在英语里是“(地位、能力等)同等者”、“同事”和“伙伴”的意思。这样一来,P2P也就可以理解为“伙伴对伙伴”的意思,或称为对等联网,我甚至觉得解释成为person-to-person更好一些。反正交流也都是人的交流。

而另一种解释是,P2P就是一种思想,有着改变整个互联网基础的潜能的思想。客观讲,单从技术角度而言,P2P并未激发出任何重大的创新,而更多的是改变了人们对因特网的理解与认识。正是由于这个原因,IBM早就宣称P2P不是一个技术概念,而是一个社会和经济现象。

不管是技术还是思想,P2P是直接将人们联系了起来,让人们通过互联网直接交流。它使得网络上的沟通变得更容易、更直接,真正地消除中间环节。这听起来仿佛全新的概念,但其实并不是什么新鲜事。我们每天见面,或者通过电话直接交流都是P2P最直接的例子。而这个时候你有没有从电话的发展的历史中隐约感觉到,P2P必将在互联网时代有着突飞猛进的发展,因为他可以改变现在的Internet以大网站为中心的状态、重返“非中心化”,并把权力交还给用户,让我们的语言影像以最直接的方式传递到对方身边。它最符合互联网络设计者的初衷,给了人们一个完全自主的超级网络资源库。现在在业界,比较认同的P2P计算应用系统的目标主要有以下几类:

1.信息、服务的共享与管理

2.协作

3.构建充当基层架构的互联系统

同样,在传统的方法不能奏效的情况下,出版商们便只有从源头上遏制了。不知道国外关于此的争闹还会继续多久,然而在中国却又是另一种风景。众所周知,现阶段中国的版权保护制度和国外还有实质上的差距,这实际上使P2P技术的运用在相当长的一段时间内可以规避版权问题的困扰。按照国内我们的理解,P2P软件提供的只是一个资源共享平台,并不需要对其中传播的内容负主要责任,只要适当地监督引导当然可以大胆运作。从这方面来说,国内的P2P软件厂商处境要比国外的同行幸福很多,路已经有前人开好,又不必像国外的先行者如Napster一样面临官司的压力。而我们面对现状,一个形象的比喻是:你愿意挥汗如雨在天桥淘碟,还是愿意轻松候意在家享受宽带视频下载? 网络传输这种传播方式迟早有一天会取代传统的以磁带、光盘为载体的影视音乐发行渠道,从而成为人们获取影音资源的主要渠道,这似乎已经成了一个不争的事实。看看国外已经进行了多少年的争端,能不能给我们一些启示。在中国这样一个走进任何一家音像店,你都可以用低廉的价格获取几乎与正版没有任何区别的音像制品的情况下,利用新技术的无穷魅力与优势建立一个全新的发行渠道,打破以往那种发行模式才有可能避免切肤之痛。或许,国内的P2P行业有可能比国外的同行更有优势率先实现成熟的商业模式。

XML

XML是eXtensible Markup Language的缩写。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。

XML与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:他极其简单。这是一个看上去有点琐细的优点,但正是这点使XML与众不同。

XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并分析他,并以XML格式输出结果。

XML的前身是SGML(The Standard Generalized Markup Language),是自IBM从60年代就开始发展的GML(Generalized Markup Language)

同HTML一样, XML (可扩展标识语言)是通用标识语言标准(SGML)的一个子集,它是描述网络上的数据内容和结构的标准。尽管如此,XML不象HTML,HTML仅仅提供了在页面上显示信息的通用方法(没有上下文相关和动态功能) ,XML则对数据赋予上下文相关功能,它继承了SGML的大部分功能,却使用了不太复杂的技术。.

为了使得SGML显得用户友好,XML重新定义了SGML的一些内部值和参数,去掉了大量的很少用到的功能,这些繁杂的功能使得SGML在设计网站时显得复杂化。XML保留了SGML的结构化功能,这样就使得网站设计者可以定义自己的文档类型,XML同时也推出一种新型文档类型,使得开发者也可以不必定义文档类型。

因为XML是W3C制定的,XML的标准化工作由W3C的XML工作组负责,该小组成员由来自各个地方和行业的专家组成,他们通过email交流对XML标准的意见,并提出自己的看法 (www.w3.org/TR/WD-xml)。因为XML 是个公共格式, (它不专属于任何一家公司),你不必担心XML技术会成为少数公司的盈利工具,XML不是一个依附于特定浏览器的语言

XML(可扩展标记语言)是从称为SGML(标准通用标记语言)的更加古老的语言派生出来的。SGML的主要目的是定义使用标签来表示数据的标记语言的语法。

标签由包围在一个小于号()之间的文本组成,例如。起始标签(start tag)表示一个特定区域的开始,例如;结束标签(end tag)定义了一个区域的结束,除了在小于号之后紧跟着一个斜线(/)外,和起始标签基本一样,例如。SGML还定义了标签的特性(attribute),它们是定义在小于号和大于号之间的值,例如

中的src特性。如果你觉得它看起来很熟悉的话,应该知道,基于SGML的语言的最著名实现就是原始的HTML。

SGML常用来定义针对HTML的文档类型定义(DTD),同时它也常用于编写XML的DTD。SGML的问题就在于,它允许出现一些奇怪的语法,这让创建HTML的解析器成为一个大难题:

1 某些起始标签不允许出现结束标签,例如HTML中 标签。包含了结束标签就会出现错误。

2 某些起始标签可以选择性出现结束标签或者隐含了结束标签,例如HTML中

标签,当出现另一个

标签或者某些其他标签时,便假设在这之前有一个结束标签。

3 某些起始标签要求必须出现结束标签,例如HTML中script标签。

4 标签可以以任何顺序嵌套。即使结束标签不按照起始标签的逆序出现也是允许的,例如,This is asamplestring是正确的。

5 某些特性要求必须包含值,例如

中的src特性。

6 某些特性不要求一定有值,

例如

中的nowrap特性。

7 定义特性的两边有没有加上双引号都是可以的,所以

都是允许的。

这些问题使建立一个SGML语言的解析器变成了一项艰巨的任务。判断何时应用以上规则的困难导致了SGML语言的定义一直停滞不前。以这些问题作为出发点,XML逐渐步入我们的视野。

XML去掉了之前令许多开发人员头疼的SGML的随意语法。在XML中,采用了如下的语法:

8 任何的起始标签都必须有一个结束标签。

9 可以采用另一种简化语法,可以在一个标签中同时表示起始和结束标签。这种语法是在大于符号之前紧跟一个斜线(/),例如。XML解析器会将其翻译成。

10 标签必须按合适的顺序进行嵌套,所以结束标签必须按镜像顺序匹配起始标签,例如this is asamplestring。这好比是将起始和结束标签看作是数学中的左右括号:在没有关闭所有的内部括号之前,是不能关闭外面的括号的。

11 所有的特性都必须有值。

12 所有的特性都必须在值的周围加上双引号。

信息检索

信息检索(Information Retrieval)是指信息按一定的方式组织起来,并根据信息用户的需要找出有关的信息的过程和技术。

狭义的信息检索就是信息检索过程的后半部分,即从信息集合中找出所需要的信息的过程,也就是我们常说的信息查寻(Information Search 或Information Seek)。

信息检索的手段

(1)手工检索 (2)光盘检索

(3)联机检索 (4)网络检索

概括起来分为手工检索和机械检索:

手工检索:指利用印刷型检索书刊检索信息的过程,优点是回溯性好,没有时间限制,不收费,缺点是费时,效率低。

机械检索:指利用计算机检索数据库的过程,优点是速度快,缺点是回溯性不好,且有时间限制。

计算机检索、网络文献检索将成为信息检索的主流。

网络信息检索,也即网络信息搜索,是指互联网用户在网络终端,通过特定的网络搜索工具或是通过浏览的方式,查找并获取信息的行为。

信息检索的对象

1文献检索(Document Retrieval)

是以文献(包括题录、文摘和全文)为检索对象的检索。可分为全文检索和书目检索两种。

2 数据检索(Data Retrieval)

是以数值或数据(包括数据、图表、公式等)为对象的检索。

3 事实检索 (Fact Retrieval)

是以某一客观事实为检索对象,查找某一事物发生的时间、地点及过程的检索。

为什么要进行信息检索

1 信息检索是获取知识的捷径

美国普林斯顿大学物理系一个年轻大学生名叫约瀚·菲利普,在图书馆里借阅有关公开资料,仅用四个月时间,就画出一张制造原子弹的设计图。他设计的原子弹,体积小(棒球大小)、重量轻(7.5公斤)、威力大(相当广岛原子弹3/4的威力),造价低(当时仅需两千美元),致使一些国家(法国、巴基斯坦等)纷纷致函美国大使馆,争相购买他的设计拷贝。

二十世纪七十年代,美国核专家泰勒收到一份题为《制造核弹的方法》的报告,他被报告精湛的技术设计所吸引,惊叹地说:“至今我看到的报告中,它是最详细、最全面的一份。”但使他更为惊异的是,这份报告竟出于哈佛大学经济专业的青年学生之手,而这个四百多页的技术报告的全部信息来源又都是从图书馆那些极为平常的、完全公开的图书资料中所获得的。

2 信息检索是科学研究的向导

美国在实施“阿波罗登月计划”中,对阿波罗飞船的燃料箱进行压力实验时,发现甲醇会引起钛应力腐蚀,为此付出了数百万美元来研究解决这一问题,事后查明,早在十多年前,就有人研究出来了,方法非常简单,只需在甲醇中加入2%的水即可,检索这篇文献的时间是10多分钟。在科研开发领域里,重复劳动在世界各国都不同程度地存在。据统计,美国每年由于重复研究所造成的损失,约占全年研究经费的38%,达20亿美元之巨。日本有关化学化工方面的研究课题与国外重复的,大学占40%、民间占47%、国家研究机构占40%,平均重复率在40%以上;我国的重复率则更高。专业研究的程序

3 信息检索是终身教育的基础

学校培养学生的目标是学生的智能:包括自学能力、研究能力、思维能力、表达能力和组织管理能力。

UNESCO提出,教育已扩大到一个人的整个一生,认为唯有全面的终身教育才能够培养完善的人,可以防止知识老化,不断更新知识,适应当代信息社会发展的需求。

信息检索的四个要素

1 信息检索的前题----信息意识

所谓信息意识,简单地说,是人们利用信息系统获取所需信息的内在动因,具体表现为对信息的敏感性、选择能力和消化吸收能力。信息意识含有信息认知、信息情感和信息行为倾向三个层面。

信息素养(素质)(Information Literacy)一词最早是由美国信息产业协会主席Paul Zurkowski在1974年给美国政府的报告中提出来的。他认为:信息素质是人们在工作中运用信息、学习信息技术、利用信息解决问题的能力。

2 信息检索的基础----信息源(信息的来源)

信息源的构成

按文献载体分----印刷型、缩微型、机读型、声像型

按文献内容和加工程度分--一次信息、二次信息、三次信息

按出版形式分----图书、报刊、研究报告、会议信息、专利信 息、统计数据、政府出版物、档案、学位论文、标准信息(它们被认为是十大信息源,其中后8种被称为特种文献。教育信息资源主要分布在教育类图书、专业期刊、学位论文等不同类型的出版物中)

3 信息检索的核心----信息获取能力

(1) 了解各种信息来源

(2)掌握检索语言

(3)熟练使用检索工具

(4)能对检索效果进行判断和评价

判断检索效果的两个指标:

查全率=被检出相关信息量/相关信息总量(%)

查准率=被检出相关信息量/被检出信息总量(%)

4 信息检索的关键:信息利用

社会进步的过程就是一个知识不断的生产—流通—再生产的过程。

为了全面、有效地利用现有知识和信息,在学习、科学研究和生活过程中,信息检索的时间比例逐渐增高。

获取学术信息的最终目的是通过对所得信息的整理、分析、归纳和总结,根据自己学习、研究过程中的思考和思路,将各种信息进行重组,船造出新的知识和信息,从而达到信息激活和增值的目的。

参考资料:

1.赖茂生等.《科技文献检索》.北京:北京大学出版社

返回顶部

关于我们

课件组:

总负责人: 郭文明 韩祥斌

课件编导: 郭文明

授课老师: 郭文明

实验设计及指导:韩祥斌

网页制作:张立,姜宁,储旭光,潘国成,王大路,李宗宇

联系方式:

联系地址:北京市昌平区北七家镇北京邮电大学宏福校区软件学院

邮编:102209

Email: guolyuze@hotmail.com / guowenming@bupt.edu.cn

更多内容请详见>>http://www.buptsse.cn/MS_Database/index.html

北京市昌平区北七家镇北京邮电大学宏福校区(102209) 010-58828027