2013秋大学计算机第5章课件-张丽杰.ppt
《2013秋大学计算机第5章课件-张丽杰.ppt》由会员分享,可在线阅读,更多相关《2013秋大学计算机第5章课件-张丽杰.ppt(91页珍藏版)》请在三一办公上搜索。
1、第5章 数据抽象、设计与挖掘,本章要点:1.数据与大数据以数据说话2.数据库数据聚集的手段-数据聚集的核心数据管理与数据库 3.数据仓库与数据挖掘数据分析与利用的手段4.数据抽象,即“理解区分命名表达”理论研究与系统设计的前提和必要步骤。,数据抽象是计算思维重要内容,也是实用性最大的计算技术和方法之一,有着非常广泛的应用!,第5章 数据抽象、设计与挖掘,本章主要内容提要:5.1 数据与大数据 5.2 数据聚集的核心数据管理与数据库 5.3 数据分析的核心联机数据分析与数据挖掘 5.4 抽象、理论和设计,5.1 数据与大数据,数据数据(Data):载荷或记录信息的按一定规则排列组合的物理符号。可
2、以是数字、文字、图像,也可以是计算机代码。数据之所以成为重要的生产因素,是因为其可以精确地描述事实,以量化的方式反映逻辑和理性,决策将日益基于数据和分析而作出,而并非基于经验和直觉。,In God we trust;everyone else must bring data.,5.1 数据与大数据,大数据21世纪随着互联网技术的发展,促进了互联网数据的膨胀式发展,网络世界中面向人-人互动、人-机互动等声音、图像/视频、文档大规模数据的聚集与交换,形成了所谓的“大数据(Big Data)”。物联网技术进一步使实物商品、实物资源等被感知、被联网,形成大规模的物联网数据。,5.1 数据与大数据,大数
3、据的价值发现 大数据时代最大的转变就是,放弃对因果关系的渴求,而取而代之关注相关关系。也就是说只要知道“是什么”,而不需要知道“为什么”。体现“数据价值”的示例:华尔街金融家利用电脑程序分析全球3.4亿微博账户的留言,根据民众情绪抛售股票:银行根据求职网站的岗位数量,推断就业率;投资机构搜集并分析上市企业声明,从中寻找破产的蛛丝马迹;美国总统奥巴马的竞选团队依据选民的微博,实时分析选民对总统竞选人的喜好,基于数据对竞选议题的把握,成功赢得总统大选。中国网民发动的“人肉搜索”,已成功地使若干“表哥”“表叔”“房叔”“房妹”等腐败官员落入法网。,5.1 数据与大数据,数据管理与数据分析 数据被视为
4、知识的来源、被认为是一种财富,数据收集、数据管理、数据分析的能力常常被视为核心的竞争力,和企业利益息息相关。数据聚集的核心手段是数据管理与数据库,数据分析与利用的核心手段是数据仓库与数据挖掘,而其关键是数据抽象与数据设计。以下几节将简要介绍数据聚集成“库”、大规模数据分析与利用的基本思维。,5.2 数据聚集的核心数据管理与数据库,5.2.1 数据聚集成“库”数据库及数据库管理数据是怎样被管理的呢?通常将各类数据组织成一张张表格(如下图)来进行管理。随着计算机技术的发展,这种数据管理工作被发展成一种技术,即“数据库”技术。所谓数据库(DataBase,DB),即可看作是以“表”形式组织起来的相互
5、有关联关系的数据的集合。而管理数据库的一种计算系统被称为数据库管理系统(DataBase Management System,DBMS)。,5.2 数据聚集的核心数据管理与数据库,5.2.1 数据聚集成“库”数据库及数据库管理数据库管理系统(DBMS)管理数据库的基本思路/步骤,5.2 数据聚集的核心数据管理与数据库,5.2.1 数据聚集成“库”数据库及数据库管理数据库管理系统(DBMS)管理数据库的基本思路/步骤(1)定义表的格式:DBMS提供数据定义语言(Data Definition Language,DDL)来让用户表达他要定义什么样的表,然后DBMS会按照用户的需求在系统里面建立相应
6、的表。(2)按格式操纵表中数据:DBMS提供数据操纵语言(Data Manipulation Language,DML)来供用户表达他想对数据库所进行的操作,并获取相应结果。(3)对表的使用进行控制:DBMS也是通过提供一种数据控制语言(Data Control Language,DCL)给数据库管理者,以方便其表达对数据库的安全性控制需求。然后DBMS按照管理者定义的安全性,对访问数据库的用户和程序进行控制。,5.2 数据聚集的核心数据管理与数据库,5.2.2 数据库的基本结构形式“数据表”或者称“关系”定义数据表,5.2 数据聚集的核心数据管理与数据库,5.2.2 数据库的基本结构形式“数
7、据表”或者称“关系”定义数据表(1)列(Column):也称字段(Field)、属性(Attribute)。表的每列都包含同一类型的信息,列由列名和列值两部分构成。(2)行(Row):也称元组(Tuple)或记录(Record)。表中每一行由若干个字段值组成,描述一个对象的信息。(3)表(Table):也称关系(Relation),由表名、列名及若干行数据组成。在数据库领域,这种简单结构的二维表又被称为“关系”,以表这种形式反映数据组织结构的模型被称为“关系模型”。(4)关系模式:在表中,表的结构(或格式)被称为关系模式,主要由表名和列名构成。,5.2 数据聚集的核心数据管理与数据库,5.2.
8、2 数据库的基本结构形式“数据表”或者称“关系”定义数据表(5)码:在表的各种属性中,有一个属性或属性组很重要,那就是码。(Key)也称为键,或者关键字,它是表中的某个属性或某些属性的组合,它们的值能唯一地将该表中的每一行区分开来。(6)数据库:一个表用于描述客观世界中的一件事情,对不同事情的描述则用不同结构的表,如此若干数据表的集合便形成了一个“数据库”。(7)数据表的性质:1)列是同质的;2)列的顺序可以任意交换;行的顺序可以任意交换;3)任意两个元组不能完全相同;4)表中每一数据项必须是不可再分割的数据项,即都应是按行按列管理的简单的二维表,满足此性质的表称为规范化的表或规范化的关系。,
9、5.2 数据聚集的核心数据管理与数据库,5.2.2 数据库的基本结构形式“数据表”或者称“关系”数据表的性质:规范化的表或规范化的关系。,5.2 数据聚集的核心数据管理与数据库,5.2.3 数据表的操作关系操作我们说:(1)关系/表之间是可以相互操作的,而对关系/表的操作结果仍然是关系/表。(2)有5种基本的关系操作是必须的,即数据库管理系统至少应支持:“并”、“差”、“笛卡儿积”、“选择”和“投影”等操作。(3)数据库管理系统还应支持用户通过这5种基本操作的组合来表达更为复杂的表操作。例如“交”操作和“连接”操作便可由这5种基本操作组合来实现。,5.2 数据聚集的核心数据管理与数据库,5.2
10、.3 数据表的操作关系操作,5.2 数据聚集的核心数据管理与数据库,5.2.3 数据表的操作关系操作(1)“并”操作:关系A和关系B的“并”操作的结果是由或者属于A或者属于B的元组组成的新关系。(2)“差”操作:关系A和关系B的“差”操作的结果是由属于A而不属于B的元组组成的新关系。(3)“交”操作:关系A和关系B的“交”操作的结果是由既属于A又属于B的元组组成的新关系。交操作可通过差操作的组合来实现,我们在后面介绍。,5.2 数据聚集的核心数据管理与数据库,5.2.3 数据表的操作关系操作,5.2 数据聚集的核心数据管理与数据库,5.2.3 数据表的操作关系操作(4)“选择”操作:从某个给定
11、的关系中筛选出满足一定限制条件的元组。(5)“投影”操作:从给定的关系中保留指定的属性子集而删去其余属性。“选择”操作是从某个关系中选取出满足某些条件的一个“行”的子集,而“投影”操作实际上是生成一个关系的“列”的子集。,5.2 数据聚集的核心数据管理与数据库,5.2.3 数据表的操作关系操作,5.2 数据聚集的核心数据管理与数据库,5.2.3 数据表的操作关系操作(6)“笛卡儿积”操作是对两个关系的操作。两个关系的“笛卡儿积”操作是将两个关系拼接起来的一种操作,它由一个关系的元组和另一个关系的每一个元组拼接成一个新元组,由所有这样的新元组构成的关系便是“笛卡儿积”操作的结果。,5.2 数据聚
12、集的核心数据管理与数据库,5.2.3 数据表的操作关系操作,5.2 数据聚集的核心数据管理与数据库,5.2.3 数据表的操作关系操作(7)“连接”操作是对两个关系的拼接操作,但不同于“笛卡儿积”操作,“连接”操作是将两个关系中满足一定条件的元组拼接成一个新元组,这个条件便是所谓的连接条件。日常使用中,“连接”操作通常指“自然连接”操作,即要求两个关系的同名属性其值相同的情况下,才能将两个关系的元组拼接成一个新元组。连接操作可以由两个关系先做笛卡尔积操作,再做选择操作,然后做投影操作来实现。,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型定义5-1 域(Do
13、main):域(Domain)是一组具有相同的数据类型的值的集合。定义5-2 笛卡儿积:给定一组域D1,D2,Dn,这些域中可能有相同的。D1,D2,Dn的笛卡儿积为:D1 D2 Dn=di Di,i=1,2,n其中每一个元素被称作一个 n 元组(n-tuple)或简称元组(tuple)。元素中的每一个值di 被称作一个分量(Component)。若Di(i=1,2,n)为有限集合,其基数(Cardinal number),即集合中元素的个数,为mi(i=1,2,n),则D1 D2 Dn 的基数M为:M=m1m2 mn。,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其
14、操作关系模型定义5-3 关系:D1 D2 Dn 的子集叫作在域D1,D2,Dn 上的关系。表示为:R(D1,D2,Dn)这里R表示关系的名字,n是关系的目或度(Degree)。关系中的每个元素是关系中的元组,通常用t表示。当n=1时为单元关系,当n=2时为二元关系。关系是笛卡儿积的有限子集,所以关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性(Attribute)。n目关系必有n个属性。若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为关键字或码(Key)。若一个关系有多个码,则选定其中一个为主码(Primar
15、y Key)。,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型例:D1 男人集合(MAN)李基,张鹏,王华 D2女人集合(WOMAN)王芳,刘玉,张颖 则D1,D2的笛卡儿积D1D2为所有男人与所有女人的所有可能的组合:,关系“家庭”=,是由一个男人和一个女人组成家庭的那些组合构成的,上述二维数据表被称为“关系”,关系是所有可能组合中那些有某种“关系”含义的组合。,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型定义了关系/表,我们可进一步将各种操作以严格的集合运算的形式定义出来。(1)并(Union):设R,S为并相容
16、的关系。所谓并相容是指两个关系具有相同数量的属性,且相应属性的取值来自于相同的域,t为元组,下同。则有:R S=t|tR tS 上式说明:R S或者由R中的元组,或者由S中的元组组成。(2)差(Difference):设R,S为并相容的关系,则有:R S=t|tR tS 上式说明:R S是由R中的元组但不是S中的元组所组成。,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型(3)笛卡儿积(Cartesian Product):设R是 n 度关系,S是 m 度关系,则 R S 为 n+m 度关系,则有:RS=|R S 简记为:RS=t|t=t(n)R t(m)
17、S 上式说明:R S是:将R中的每一个元组和S中的每一个元组拼接成一个新元组,所有可能组合的新元组的集合。,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型(4)投影(Projection):关系R上的投影是从R中选出若干属性列组成新的关系。记作:上式说明:投影操作是将R的元组的分量,按照tj1,tj2,tjm的排列顺序重新排列后所形成的新元组的集合。(5)选择(Selection)F(R)=t|tR F(t)=真 其中,F是命题公式,由运算符连接的常量、分量标号或其他命题公式组成。即由:(1)常量、分量标号;(2)算术运算符:、=、;(3)逻辑运算符:(A
18、nd)、(Or)、(Not),5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型(6)交(Intersection)R S=t|tR tS 前面说过,交操作可以由其他操作组合来完成,即有性质“RS=R(RS)”,读者可自己证明该性质的正确性。(7)-连接(-Join)R(-Join for i j)S=t|t=t(n)R t(m)S ti(n)tj(m)=True,其中t(n)表示R的元组,t(m)表示S的元组,ti(n)表示元组t(n)的第i个属性 如前所述,连接操作也可以由其他操作组合来实现,即有性质R(-Join for i j)S=i n+j(R S)
19、,读者可自己证明该性质的正确性,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型(8)自然连接(Join)R(Join)S=t|t=t(n)R t(m)S ti1(n)tj1(m)=True tik(n)tjk(m)=True,其中t(n)表示R的元组,t(m)表示S的元组,ti1(n)表示元组t(n)的第i1个属性,t(n)的第ig个属性与t(m)的第jg个属性相同(g=1,k),t(m)为t(m)去掉与t(n)相重复的属性tj1(m),tjk(m)后形成的新元组,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型,【例5
20、.1】检索学过“王一唯”老师讲授课程的所有学生的姓名。【例5.2】检索“程序设计”课程成绩大于80分的所有学生的姓名及其成绩。,5.2 数据聚集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型【例5.1】检索学过“王一唯”老师讲授课程的所有学生的姓名。分析:学生的姓名在“学生”表中,而教师姓名在“课程”表中,学生选课情况记录在“选课”表中,因此该查询首先需要将这三个表连接起来,我们可选择笛卡儿积操作后的选择操作然后再做投影以实现上述查询,如下所示。姓名(开课教师=王一唯)(学生.学号=选课.学号 and 课程.课号=选课.课号)(学生 选课 课程);例5.1,5.2 数据聚
21、集的核心数据管理与数据库,5.2.4 用数学定义数据表及其操作关系模型【例5.2】检索“程序设计”课程成绩大于80分的所有学生的姓名及其成绩。分析:学生的姓名在“学生”表中,而课程名在“课程”表中,学生成绩情况记录在“选课”表中,因此该查询首先需要将这三个表连接起来,我们可选择笛卡儿积操作后的选择操作然后再做投影以实现上述查询,如下所示。姓名,成绩(选课.成绩80 and 课程.课名=程序设计)(学生.学号=选课.学号 and 课程.课号=选课.课号(学生 选课 课程);例5.2,5.2 数据聚集的核心数据管理与数据库,5.2.5 用计算机语言表达数据表及其操作数据库语言数据库研究者依据关系模
22、型设计了一种类似英语的结构化的数据库语言SQL(Structural Query Language)语言数据库语言应包括:(1)数据定义语言DDL(定义表的格式)(2)数据操纵语言DML(操纵表中的数据)(3)数据控制语言DCL(控制表中数据可以被哪些用户使用),5.2 数据聚集的核心数据管理与数据库,5.2.5 用计算机语言表达数据表及其操作数据库语言1.数据表“查询”:SELECT 列名1,列名2,FROM 表名1,表名2,WHERE 条件;【例5.3(前例5.1)】检索学过“王一唯”老师讲授课程的所有学生的姓名。【例5.4(前例5.2)】检索“程序设计”课程成绩大于80分的所有学生的姓名
23、及其成绩。【例5.5】列出“软件”专业所有学生的学号和姓名。,SELECT 姓名 FROM 学生,选课,课程 WHERE 学生.学号=选课.学号 and 课程.课号=选课.课号 and 课程.开课教师=“王一唯”;,SELECT 学号,姓名 FROM 学生 WHERE 专业软件;,SELECT 姓名,成绩 FROM 学生,选课,课程 WHERE 学生.学号=选课.学号 and 课程.课号=选课.课号 and 课程.课名=“程序设计”and 选课.成绩80;,5.2 数据聚集的核心数据管理与数据库,5.2.5 用计算机语言表达数据表及其操作数据库语言1.数据表“查询”:【例5.6】列出或者学过“
24、1002”号课程或者学过“2002”号课程的所有学生的学号。【例5.7】求选修了“1001”号课程,而且成绩或者大于80分或者小于60分的学生学号及其成绩。【例5.8】列出“程序设计”课程是哪些专业的必修课。,SELECT 学号 FROM 选课 WHERE 课号=1002 OR 课号=2002;,SELECT 学号,成绩 FROM 选课 WHERE 课号1001 and(成绩80 or 成绩60);,SELECT 必修专业 FROM 课程,必修课 WHERE 课程.课号=必修课.课号 and 课名=程序设计;,5.2 数据聚集的核心数据管理与数据库,5.2.5 用计算机语言表达数据表及其操作数
25、据库语言1.数据表“查询”:【例5.9】列出选修“汇编语言”的所有学生的学号及成绩。,SELECT 学号,成绩 FROM 选课 WHERE 课号 IN(SELECT 课号 FROM 课程 WHERE 课名=汇编语言);,5.2 数据聚集的核心数据管理与数据库,5.2.5 用计算机语言表达数据表及其操作数据库语言1.数据表“查询”:【例5.10】求既学过“1001”号课,又学过“2002”号课的所有学生的学号。采用嵌套查询可以书写为:,SELECT 学号 FROM 选课 WHERE 课号1001 and 学号 IN(SELECT 学号 FROM 选课 WHERE 课号2002);,SELECT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2013 大学计算机 课件 张丽杰
链接地址:https://www.31ppt.com/p-5400816.html