《大数据基础》讲义项目3.docx
- 文档编号:8457890
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:20
- 大小:1.14MB
《大数据基础》讲义项目3.docx
《《大数据基础》讲义项目3.docx》由会员分享,可在线阅读,更多相关《《大数据基础》讲义项目3.docx(20页珍藏版)》请在冰豆网上搜索。
《大数据基础》讲义项目3
项目三数据库基础知识
知识目标
Ø了解数据及数据库的基本含义
Ø了解数据库的类型
Ø了解数据库管理系统
Ø了解数据库语言SQL
能力目标
Ø掌握数据库的基本内涵
Ø掌握数据库的类型
Ø掌握关系型数据库的特征
Ø掌握数据库管理系统及数据库语言
素质目标
能掌握数据库分类与关系型数据库的特征,并准确表述关系型数据库的逻辑特征;准确把握数据库管理系统及其数据库语言的区别。
知识精讲
任务一数据库
一、数据库的定义
在了解数据库之前,我们要先了解一下数据是怎么储存的。
我们都知道,当我们的祖先还在荒野中茹毛饮血的时候,就学会了利用结绳记事来进行数据储存,这些被打上结的绳子就是“数据”,如图3-1所示,虽然这种数据很难保存、很难提取。
图3-1结绳记事
后来祖先利用甲骨、竹简、纸张来储存文字数据,近代发明了录音机、摄像机来储存音频数据,虽然数据载体一直在变化,但是数据存储的方式并没有发生很大的变化,都属于传统存储方式。
直到信息时代的到来,数据存储的方式才发生了重大变革并朝着两分方向发展:
文件与数据库。
(1)文件相当于把数据存放在Excel当中,形成读写文件后进行存储,然后通过python等工具对文件数据进行筛选、处理、提取;
(2)数据库则是把数据按照其结构将其储存在计算机中,形成一个具有大数据量的数据集合,相当于存放文件的文件柜,如图3-2所示。
图3-2数据库示意图
利用数据库存储数据是目前最为流行的方式,因为数据库拥有持久化存储,读写速度也很高,更关键的是数据库可以在极大程度上保证数据的有效性,而不像Excel等文件极易产生修改错误。
数据库顾名思义就是数据的集合,是由一张张数据表组成的。
总之,数据库是有组织的数据集合。
它是模式(schema)、表(table)、查询(query)、报告(report)、视图(view)和其他对象的集合。
数据库是系统地组织或结构化地索引信息存储库(通常是一组连接的数据文件),可以轻松地检索、更新、分析和输出数据。
这些数据通常存储在计算机中,其形式可以是图形、报告、脚本、文本等,几乎代表每种信息。
大多数计算机应用程序(包括防病毒软件、电子表格、文字处理器)的核心都是数据库。
二、数据库的分类
按照早期的数据库理论,比较流行的数据库模型有三种,分别为层次式数据库、网状数据库和关系型数据库。
而在当今的互联网企业中,最常用的数据库模型主要有两种,即关系型数据库和非关系型数据库。
关系型数据库模型是把复杂的数据结构归结为简单的二元关系(即二维表格形式),如图3-3所示。
在关系型数据库中,对数据的操作几乎全部建立在一个或多个关系表格上,通过这些关联的表格分类、合并、连接或选取等运算来实现数据的管理。
关系型数据库,简单说,是由多张能互相联接的二维行列表格组成的数据库。
在数据准备时,我们通常要建立表关联来分析。
图3-3数据表1
关系型数据库是基于关系代数模型发展而来的,常用的关系型数据库有SQLServer、MySQL、Oracle、DB2等。
关系型数据库最常见的是SQL,它是怎么存储数据的?
1.表
在用户将文件夹放入文件柜的时候,不能将文件夹随便扔进某个抽屉就,而是在文件柜中创建文件,然后将相关的资料放入相关的文件中,这就是数据库的表。
表是一种结构化的文件,用来存储某种特定类型的数据,如SQL文件,其里面包含了20多个数据库表,每个表的名字都不应该是相同的,但是我们可以在不同的数据库里存放相同表名的数据表,如图3-4所示。
图3-4数据表2
同时,我们不能把学生数据与老师数据放在同一个表里,否则不容易提取数据,检索和访问也比较麻烦,所以我们应该创建两个表,每个清单一个表。
2.列
列是组成表的字段信息,一张表可以由一个或多个列组成。
我们可以这么理解,每一列都是数据库表中的每一个字段,如图3-5所示,学生ID列、学生姓名列、考试成绩列就是三个字段。
图3-5数据表3
正确地将数据分解为多个列是十分重要的。
例如,班级和学生姓名应该是独立的列,通过将它们分解开,才有可能利用特定的列队数据进行排列和过滤;如果学生姓名和班级组合在了一个列里,按照班级过滤就会十分困难,如图3-6所示。
图3-6数据表4
数据库中每个列都有对应的数据类型,数据类型定义列可以存储的数据种类。
例如,如果列中存储的是数字,那么对应的数据类型应该是数值类型;如果列中存储的是日期、文本、注释、金额等,应该用恰当的数据类型规定出来。
数据类型:
每个列都应该有相对应的数据类型,限制存储的数据形式。
3.行
数据库表中的数据是按照行进行存储的,每一行就是存储的一个数据,比如第一行是张三的数据,第二行是李四的数据。
放在物理实体上,是一堆写在磁盘上的文件,文件中有数据。
这些最基础的数据组成了表(table),我们把它想象成一张Excel的sheet,如图3-7所示。
图3-7数据表5
4.主键
每一张表都有一个唯一标识,即主键,也就是ID。
ID是数据库中重要的概念,叫做唯一标识符/主键,用来表示数据的唯一性。
就相当于我们的身份证,是唯一的,有了身份证,就知道数据在哪了。
ID通常没有业务含义,就是一种唯一标识,每张表只能有一个主键,且主键通常是整数,主键一旦设立,值通常不允许修改。
数据库是表的集合。
一个数据库中可以放多张表,我们给每张表命名,表与表之间能互相联系。
联系就是数据能够对应匹配,正式名称叫做联接,对应的操作叫做Join,如图3-8所示。
图3-8数据表6
比如上面两幅图,左图是学生信息表,右图是老师信息表。
左图的主键是学生ID,右图的主键是老师ID。
细心的读者可能发现右图还有一个学生ID,这里的学生ID是专门用来联接用户表的,它并不是主键,只不过两张表通过学生ID这个唯一信息来关联。
但两张表关联也并不是信息能一一对应,也会存在空缺,如图3-9所示。
图3-9数据表7
两张表建立联接就会变成如图3-10所示。
图3-10数据表8
通俗地理解,关系型是数据作为二维数组存在,可以理解为图书馆的图书排列。
书架、楼层可以理解为关系型的数据结构,书作为数据存在,而所有图书馆管理员就是数据库的进程,负责不同的工作。
有人负责数据修复、备份,有人整理书架、书籍(数据整理、归档),而用户进程是来到图书馆的顾客,他们看书、移动书籍,而管理员就会对其进行维护,如图3-11所示。
图3-11图书馆查阅图书
关系型数据库诞生距今已有40多年了,从理论产生到发展到实现产品,如常见的MySQL和Oracle。
Oracle在数据库领域上升到了霸主地位,形成每年高达数百亿美元的庞大产业市场,而MySQL也是不容忽视的数据库,以至于被Oracle重金收购了。
图3-12为关系型数据库。
图3-12关系型数据库
非关系型数据库也被称为NoSQL数据库,本意是“NotOnlySQL”,作为传统数据库的一个有效补充。
NoSQL数据库在特定的场景下可以发挥出难以想象的高效率和高性能。
随着Web2.0网站的兴起,海量数据对关系型数据库存储的容量要求高,单机无法满足需求,很多时候需要用集群来解决问题,关系型数据库就显得力不从心了,非关系型数据库因而诞生。
图3-13为关系型数据库到非关系型数据库。
图3-13关系型数据库到非关系型数据库
实际上,非关系型数据库就是针对特定场景,以高性能和使用便利为目的功能而特异化的数据库产品,如Google的BigTable与Amazon的Dynamo。
任务二数据库管理系统与数据库系统
一、实体与数据库
实体是客观存在并可互相区别的事物。
就数据库而言,实体往往指某类事物的集合。
可以是具体的人事物,也可以是抽象的概念、联系。
在现实世界,实体并不是孤立存在的,实体与实体之间也存在联系。
例如,课程与学生之间存在学生学习课程的联系,课程与老师之间存在老师创建课程的联系。
实体数据的存储要求是:
必须按照一定的分类和规律存储。
而数据库是专门用来存储这些实体信息的数据集合。
其具有的特点包括:
海量存储数据,数据检索方便;保持数据信息的一致、完整,并实现数据的共享和安全;通过组合分析,产生新的有用的信息。
1.实体存储的基本单元:
数据表
数据表为实体信息存储的基本单元,同类实体存放在同一个表中,表又称为实体的集合。
表中的行(记录)即实体,表中的列(字段)为实体的属性,如图3-14所示。
图3-14数据表9
不同实体存储在不同的数据表中,如图3-15所示。
图3-15表与数据库的关系
二、数据库管理系统
数据库管理系统(DataBaseManagementSystem,简称DBMS)是一种操纵和管理数据库的软件,用于建立、使用和维护数据库。
它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。
它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立、修改和询问数据库。
数据库管理系统主要提供如下功能。
1.数据定义
DBMS提供数据定义语言DDL(DataDefinitionLanguage),供用户定义数据库的三级模式结构、两级映像以及完整性约束和保密限制等约束。
DDL主要用于建立、修改数据库的库结构。
DDL所描述的库结构仅仅给出了数据库的框架,数据库的框架信息被存放在数据字典(DataDictionary)中。
2.数据操作
DBMS提供数据操作语言DML(DataManipulationLanguage),供用户实现对数据的追加、删除、更新、查询等操作。
3.数据库的运行管理
数据库的运行管理功能是DBMS的运行控制、管理功能,包括多用户环境下的并发控制、安全性检查和存取限制控制、完整性检查和执行、运行日志的组织管理、事务的管理和自动恢复,即保证事务的原子性。
这些功能保证了数据库系统的正常运行。
4.数据组织、存储与管理
DBMS要分类组织、存储和管理各种数据,包括数据字典、用户数据、存取路径等,需要确定以何种文件结构和存取方式在存储级别上组织这些数据,如何实现数据之间的联系。
数据组织和存储的基本目标是提高存储空间利用率,选择合适的存取方法以提高存取效率。
5.数据库的保护
数据库中的数据是信息社会的战略资源,随数据的保护至关重要。
DBMS对数据库的保护通过4个方面来实现:
数据库的恢复、数据库的并发控制、数据库的完整性控制、数据库安全性控制。
DBMS的其他保护功能还有系统缓冲区的管理以及数据存储的某些自适应调节机制等。
6.数据库的维护
当一个数据库被创建以后的工作都叫做数据库维护。
数据库维护比数据库的创建和使用更难,这一部分包括备份系统数据、恢复数据库系统、产生用户信息表,并为信息表授权、监视系统运行状况,及时处理系统错误、保护系统数据安全,周期更改用户口令,这些功能分别由各个使用程序来完成。
7.通信
DBMS具有与操作系统的联机处理、分时系统及远程作业输入的相关接口,负责处理数据的传送。
对网络环境下的数据库系统,还应该包括DBMS与网络中其他软件系统的通信功能以及数据库之间的互操作功能。
总之,数据库管理系统(DBMS)是一个供用户使用的数据库管理软件,目的就是通过数据库管理软件完成对数据库数据的处理。
其功能如图3-16所示。
图3-16数据库管理软件管理数据库数据
对非专业人士来说,借助应用程序实现对数据库的操作更为便捷。
应用程序是根据用户需求开发的具有业务逻辑的管理软件。
专业人士直接通过数据库管理软件(DBMS)管理数据库。
普通用户即非专业人士可以通过应用程序指挥DBMS完成数据处理,如图3-17所示。
图3-17数据库管理软件与应用程序交互
三、数据库系统
数据库系统(DataBaseSystem,简称DBS)一般由4个部分组成:
1.数据库(DataBase,DB)
数据库是指长期存储在计算机内的、有组织、可共享的数据的集合。
数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余、较高的数据独立性和易扩展性,并可为各种用户共享。
2.硬件
硬件构成计算机系统的各种物理设备,包括存储所需的外部设备。
硬件的配置应满足整个数据库系统的需要。
3.软件
软件包括操作系统、数据库管理系统及应用程序。
数据库管理系统是数据库系统的核心软件,是在操作系统(如Windows、Linux等操作系统)的支持下工作,解决如何科学地组织和存储数据、如何高效地获取和维护数据的系统软件。
其主要功能包括:
数据定义功能、数据操纵功能、数据库的运行管理和数据库的建立与维护。
4.人员
人员主要有4类。
第一类为系统分析员和数据库设计人员。
系统分析员负责应用系统的需求分析和规范说明,他们和用户及数据库管理员一起确定系统的硬件配置,并参与数据库系统的概要设计。
数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。
第二类为应用程序员,负责编写使用数据库的应用程序。
这些应用程序可对数据进行检索、建立、删除或修改。
第三类为最终用户,他们利用系统的接口或查询语言访问数据库。
第四类为数据库管理员(DatabaseAdministrator,DBA),负责数据库的总体信息控制。
数据库管理员的具体职责包括:
具体数据库中的信息内容和结构,决定数据库的存储结构和存取策略,定义数据库的安全性要求和完整性约束条件,监控数据库的使用和运行,负责数据库的性能改进、数据库的重组和重构,以提高系统的性能。
任务三数据库系统与数据库、数据库管理系统、数据库应用系统的关系
通常来说,数据库系统(DBS)包括:
数据库应用系统DBAS、数据库管理系统DBMS和数据库DB。
下面主要分析数据库系统、数据库管理系统、数据库应用系统三者的区别与联系。
一、数据库系统、数据库管理系统、数据库应用系统三者的区别
1.本质不同
数据库系统是一种软件系统,数据库管理系统本质上就是一个软件,而数据库应用系统则是一个计算机应用系统。
数据库系统是为适应数据处理的需要而发展起来的一种较为理想的数据处理系统,也是一个为实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。
数据库管理系统就是实现把用户意义下抽象的逻辑数据处理,转换成为计算机中具体的物理数据处理的软件。
数据库应用系统是在数据库管理系统(DBMS)支持下建立的一种计算机应用系统。
2.组成成分不同
数据库系统(DataBaseSystem,简称DBS)通常由软件、数据库和数据管理员组成。
其软件主要包括操作系统、各种宿主语言、实用程序以及数据库管理系统。
数据库管理系统由数据库语言和数据库管理例行程序组成。
数据库应用系统是由数据库系统、应用程序系统、用户组成的,具体包括数据库、数据库管理系统、数据库管理员、硬件平台、软件平台、应用软件、应用界面,如图3-18所示。
图3-18数据库系统架构
二、数据库系统、数据库管理系统、数据库应用系统三者的联系
(1)三者都用于管理数据库,功能都是对数据库进行管理。
(2)数据库系统和数据库应用系统的组成成分中都包含有数据库管理系统,这两者都是通过数据库管理系统来实现对数据库的管理和操控。
任务四SQL与数据库的关系
一、数据结构化及相关概念
在信息社会,信息可以划分为两大类。
一类信息能够用数据或统一的结构加以表示,我们称之为结构化数据,如数字、符号;而另一类信息无法用数字或统一的结构表示,如文本、图像、声音、网页等,我们称之为非结构化数据。
结构化数据属于非结构化数据,是非结构化数据的特例。
(1)结构化数据:
即行数据,是由二维码结构来逻辑表达和实现的数据,严格的遵循数据格式和长度规范,主要通过关系型数据库进行存储和管理。
数据集中每条数据属性的数量和顺序相同,且数据的结构信息和数据内容是分离的,最典型的是关系型数据库的表。
(2)非结构化数据:
顾名思义,就是没有固定结构的数据,常见的各种文档、图片、视频/音频等都属于非结构化数据。
对于这类数据,一般以二进制的形式进行整体存储,包括所有格式的办公文档、文本、图片、XML、HTML、各类报表、图像和音频/视频信息等。
(3)半结构化数据:
就是介于完全结构化数据(如关系型数据库、面向对象数据库中的数据)和完全无结构的数据(如声音、图像文件等)之间的数据,指带有自描述信息的数据,即数据的结构信息和数据内容混在一起,没有明显的区分。
常见的有XML、JSON、HTML和CSV等文件就属于半结构化数据。
二、SQL与数据库
SQL就是结构化查询语言(StructureQueryLanguage)。
被美国国家标准局(ANSI)确定为关系型数据库语言的美国标准,后来被国际化标准组织(ISO)采纳为关系数据库语言的国际标准。
各数据库厂商都支持ISO的SQL标准。
关于SQL与数据库的概念的关系,很多新接触数据库的人就以为SQL就是用来存储数据的数据库,还有的以为SQL是数据库的一种。
这两种说法都是不准确的。
为了便于理解,举例如下:
如果数据就是一张张的表格,我们就可以按照不同的表格关系放在不同的文件夹里,这个文件夹就相当于数据库的基础构成要素——数据表,如图3-19所示。
图3-19数据、表、数据库的关系
而当我们的文件夹也非常繁多复杂的时候,我们就可以将文件夹按照不同的构成分类储存在文件柜中,每个文件柜中可能有非常多的分类用来存放不同的文件夹,这个文件柜就相当于数据库。
而当我们想要从文件柜中找到某份文件的时候,我们需要按照一定的规则去寻找,比如说“合同文件放在第三层第四排的架子上”,这种查找规则的实施就需要数据库管理系统(DBMS)来实现,相当于一名文件管理员,帮助我们管理数据库中的数据。
最常见的数据库管理系统包括SqlServer、MySql、Oracle等。
而我们如果想要对文件管理员下达指令,就需要一种沟通语言,这种沟通语言就是SQL,所以SQL就是一种结构化的查询语言,用来操作数据库管理系统。
【知识拓展】
1974年,IBM的RayBoyce和DonChamberlin将Codd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQL(StructuredQueryLanguage)语言。
SQL语言的功能包括查询、操纵、定义和控制,是一个综合的、通用的关系数据库语言,同时又是一种高度非过程化的语言,只要求用户指出做什么而不需要指出怎么做。
SQL集成实现了数据库生命周期中的全部操作。
SQL提供了与关系数据库进行交互的方法,它可以与标准的编程语言一起工作。
自产生之日起,SQL语言便成了检验关系数据库的试金石,而SQL语言标准的每一次变更都指导着关系数据库产品的发展方向。
然而,直到20世纪70年代中期,关系理论才通过SQL在商业数据库Oracle和DB2中使用。
项目小结
本项目主要阐述了数据库、数据库系统、数据库应用系统与数据库管理系统(DBMS)以及它们之间的关系,并对结构化、非结构化以及半结构化数据进行了对比。
本项目还涉及实体的概念以及数据库标准化语言SQL的基础知识。
通过本项目的学习,学生能够明晰数据库、数据库系统与数据库应用、数据库管理系统的区别与联系,SQL数据库标准语言及结构化数据的特点,为后面学习大数据相关知识做准备。
实训练习
应知考核
一、填空题
1.信息时代的到来,数据存储的方式才发生了重大变革并朝着两分方向发展:
与。
2.是有组织的数据集合。
它是模式(schema)、表(table)、查询(query)、报告(report)、视图(view)和其他对象的集合。
3.最常用的数据库模式主要有两种,即和。
4.关系型数据库是基于关系代数模型发展而来的,常用的关系型数据库有等。
5.是一种操纵和管理数据库的软件,用于建立、使用和维护数据库,它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。
6.数据库管理系统主要提供如下功能:
。
7.结构化数据是指。
8.非结构化数据是指。
二、判断题
1.数据库就是数据表。
()
2.数据表的列为实体属性。
()
3.数据库管理系统就是数据库的建立者。
()
4.数据库系统包含数据库管理系统。
()
5.SQL是数据库管理系统。
()
6.数据库应用系统包含数据库系统。
()
7.数据表中的每一行即一个实体。
()
8.数据库系统即很多个数据库的集合。
()
9.NoSQL数据库就是非结构化数据库。
()
10.非结构化数据库是NoSQL数据库。
()
应会考核
1.简述数据库、数据库管理系统、数据库系统之间的关系。
2.举例说明结构化数据、非结构化数据和半结构化数据。
3.阐述SQL的含义。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大数据基础 数据 基础 讲义 项目