数据库系统 --- 数据库技术介绍

一.数据与信息

1.数据+有用性=信息
2.数据的三个属性:
①类别性:每类数据都有很多杂项,构成一个数据集。
②有用性。
③语义性:数据有其特定的含义。

二.数据库及其特性

1.数据库(Database)的由来

(1)数据具有分散性。
(2)数据的发布者(源头),数据的使用者(用户)是一种一对多的关系。

问题:
a.发布者:更新费时费力,数据不一致;
b.使用者:可靠性问题。

2.数据库概念

(1)特点:
数据库中一个数据只存一份,而不是每个用户都存储一份。
(2)好处:
提高数据的共享性、真实性,降低数据存储、管理成本,提高数据利用率。
(3)数据库的基本特征:
a.数据按一定的数据模型组织、描述和储存;
b.可为各种用户共享;
c.冗余度较小;
d.数据独立性较高;
e.易扩展。

三.数据库系统的组成及其结构特性

1.两类数据模型

(1)概念模型(信息模型)

a.按用户的观点来对数据和信息建模,主要用于数据库设计。
b.概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言,因此概念模型一方面应该具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识,另一方面它还应该简单、清晰、易于用户理解。

A.基本概念:
实体(Entity):客观存在并可相互区别的事物,可看做是一个类;
例如:一个学生,一门课,一次订货等。
属性(Attribute):实体所具有的某一特性。
一个实体可以由若干个属性来刻画,但是属性是单一的,即属性不能再有自己的属性;
例如:学生实体可由学号、姓名、性别、出生年月等属性组成。
(Key):唯一标识实体的属性集。
例如:学号是学生实体的码。
实体型(Entity Type):用实体名及其属性名集合来抽象和刻画同类实体。
例如:学生(学号,姓名,性别,出生年月)就是一个实体型。
实体集(Entity Set):同一类型实体的集合。
例如:全体学生。
联系(relationship):在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系。

a.实体内部的联系:指组成实体的各属性之间的联系;
b.实体之间的联系:指不同实体集之前的联系;
c.实体之间的联系有一对一、一对多、多对多等多种类型。

B.一种表示方法:实体-联系方法
该方法用E-R图来描述现实世界的概念模型,E-R方法也称为E-R模型。

在E-R图中有四个成分:
a.矩形框:表示实体,在框中记入实体名。
b.菱形框:表示联系,在框中记入联系名。
c.椭圆形框:表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下画一下划线。
d.连线:实体与属性之间、实体与联系之间、联系与属性之间用直线相连,并在直线上标注联系的类型。

  • 一对一的联系:在两实体连线方向各写1;
  • 一对多的联系:要在一的一方写1,多的一方写N;
  • 多对多的联系:在两个实体连线方向各写N、M。
    在这里插入图片描述

(2)实例
层次结构:数据库 -> 表 -> 行和列。
在这里插入图片描述
(3)逻辑模型和物理模型
①逻辑模型主要包括网状模型、层次模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型等。按计算机系统的观点对数据建模,用于DBMS实现。
②物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。
在这里插入图片描述

2.数据库的特点

(1)数据库由(Table)组成,表包括模式(Schema)和数据(Data)。
(2)数据库是一个企业的数据的集合,所有用户的数据都存放在数据库中,数据库中的数据时海量的,具有共享性。
(3)数据在数据库中的组织,并不是用户数据的原样照本存储,而是要严格按类概念,分类存储
数据有类的概念,一个类对应一张表,一张表对应一个类,同类数据都存储在同一张表中。
数据对应于客观事物,类属于抽象概念的范畴,而数据时实例。
一个实例对应表中的一行数据,表中的一行数据对应于一个实例。
(4)一个数据只存一份。
(5)类与类之间具有关系 -> 实例与实例之间具有关系。
(6)用户所需数据:对多个表中的数据进行组合。

四.数据库技术

1.对数据库的访问—数据操作

(1)数据用户和数据库之间形成了多对一的关系。用户要和数据库进行交互,对数据库中的数据进行操作:
①添加数据(Insert)
②查找数据(query)
③修改数据(update)
④删除数据(delete)
⑤统计数据(statistics)
(2)数据库中的数据操作特征
数据库管理系统对外提供数据库访问语言,用户可以指定数据库的某个表,以行(Row)为单元执行添加操作、删除操作、修改操作、查询操作、统计操作。
(3)数据操作的表达:SQL
SQL语言:对于关系型数据库,国际标准数据操作语言。
①模式定义语句:

CREATE SCHEMA <模式名> AUTHORIZATION <用户名>;
例如:
为用户WANG定义一个学生-课程模式S-T:
CREATE SCHEMA “S-T” AUTHORIZATION WANG;

用户也可以在创建模式的同时在这个模式定义中进一步创建基本表、视图,定义授权:

CREATE SCHEMA <模式名> AUTHORIZATION <用户名> [<表定义子句> | <视图定义子句> | <授权定义子句>];
例如:
为用户ZHANG创建一个模式TEST,并且在其中定义一个表TAB1。
CREATE SCHEMA TEST AUTHORIZATION ZHANG
CREATE TABLE TAB1(COL1 SMALLINT,COL2 INT,COL3 CHAR(20),COL4 NUMERIC(10,3),COL5 DECIMAL(5,2));

①插入记录:

INSERT INTO student VALUES (‘200803024’,‘周艳’,‘女’,‘1989/01/22’);

②修改记录:

UPDATE student SET birthdate=DATE‘1991-03-15’ WHERE studentNo=‘2008043332’;

③删除记录:

DELETE FROM student WHERE studentNo like ‘2007%’;

④查找记录:

SELECT name,phone FROM student WHERE nation <> ‘汉’;

⑤统计:

SELECT sex,COUNT(*) FROM student GROUP BY sex;

2.数据库管理系统(DBMS)

在这里插入图片描述
(1)DBMS的三级模式(Schema)架构
在这里插入图片描述
三级模式结构及二级映像实现了数据库系统的数据独立性。

3.数据库应用程序

(1)数据库模式中,数据的用户并不直接与DBMS交互,而是要通过数据库应用程序(Database Application)来完成。
(2)数据库应用程序的三个功能:
①为用户提供表达数据操作的界面
②以SQL语言表达数据操作,向数据库服务器发出请求;
显示用户所做数据操作的执行结果
(3)不同的用户关注不同的数据,因此数据库应用程序和DBMS之间形成多对一的关系。

4.数据库系统的架构

(1)数据库、数据库管理系统、数据库应用程序三者结合起来构成数据库系统(Database System)或者Management Information System,MIS系统,或者信息系统、网站、门户。
(2)存储数据库并运行DBMS的计算机叫数据库服务器(Database Server)。
在这里插入图片描述
(3)系统架构特点:相互独立性,可组合性
在这里插入图片描述
(4)数据库系统的基本特征
①各种各类的数据将集中到数据库中,统一管理,实现共享。
②基本特征:数据库的拥有者相对明确,数据库的用户则在不断扩增,难以事先预测。
③用户建立的数据库应用程序也希望具有通用性,能够对不同的数据库进行访问。
④数据库管理系统、数据库应用程序即具有相互独立性,又具有可对接性,构成联邦式系统。这要求建立统一的数据库访问标准和规范。DBMS开发厂家和数据库应用程序开发商。
⑤数据库访问标准和规范:关系数据模型,数据操作表达语言,数据库访问编程接口。
(5)数据库系统架构特征
①分层
每层提供的服务接口国际标准化;
数据操作表达的标准化;
编程接口的标准化。
②模块化
模块化,可组装性。

5.数据库技术要解决的五个工程问题

①数据正确性问题;
②数据完整性问题;
③数据操作简单性问题;
④数据安全问题;
⑤数据处理性能问题。

五.数据库领域的从业人员

1.DBMS设计开发人员

2.数据库设计人员

(1)为企业设计数据库。从企业的业务、组织、人员、运作方式、外部环境、历史渊源和发展态势中提炼出企业的数据定义,清理出数据之间的关系,然后任用数据库设计方法定义出数据库中的表,标示出数据完整性控制的具体规则。
(2)数据库设计是数据库系统成功与否的关键。糟糕的数据库设计必是后患无穷,其隐含的问题随后表现为:
①业务需求不能得到满足;
②时常发生数据丢失,数据操作被无故抵否,数据不正确,数据不一致;
③出现新业务或业务变动时,系统适应性差。
(3)目前,数据库系统开发的成功率很低,不到20%。

3.数据库系统管理人员DBA

(1)负责数据库系统的日常维护,确保数据库的安全、可靠、可用。
(2)具体职责包括:
①数据库服务器的建立和配置;
②用户管理;
③安全管理;
④数据库访问审计;
⑤系统扩展与升级;
⑥数据备份,故障恢复;
⑦性能优化。

4.数据库应用程序开发人员

(1)数据库应用程序开发人员的主要工作是满足数据库用户的业务需求,为他们设计和开发出数据库应用程序。
(2)数据库应用程序设计与开发中,首要的宗旨有四条:
①界面规范友好,要求数据组织结构清晰,层次分明,表达简洁,符合习惯,操作简单方便。
②程序组织方面,要模块化,层次化。
③在可靠性和稳定性方面,凡是跨进程的调用都要检查是否成功,不成功要告知用户,并作恰当处理。
④在通用性方面,尽量采用标准技术,通用架构,符合标准规范,少用专有的东西。

六.数据库技术发展史

1.第一代的网状、层次型数据库系统

(1)通用电气公司采用数据模型研制了IDS系统。
(2)IBM采用层次数据模型研制IMS系统。
(3)层次模型采用树结构组织数据,网状模型对应的是有向图。这两种数据库都用存取路径来表示数据之间的关系。导航式的数据查询和定位为其基本特征。

2.第二代的关系型数据库系统

(1)IBM开发了System R,导致了SQL出现。
(2)1983年,SQL称为ANSI标准,1984年成为ISO标准。
(3)James Gray提出了事务处理概念,解决可靠性问题。
(4)微软1992推出ODBC,Sun公司1994推出了JDBC。
(5)1976年,Chen提出了基于实体-关系建模的数据库设计方法。
(6)关系模型,事务处理,数据库设计方法,SQL,ODBC/JDBC是数据库技术发展的标志性成果,也是数据库技术的核心内容。

3.第三代的以面向对象模型为主要特征的数据库系统

(1)产生于20世纪80年代。
(2)第三代数据库保持和继承了第二代数据库系统的技术,支持面向对象的数据模型,并和分布处理技术、并行计算技术、多媒体技术、人工智能技术等诸多新技术相结合,广泛应用于地理信息服务、电子商务、网络搜索、决策支持等诸多领域。
(3)分布式数据库、并行数据库、多媒体数据库。

4.第四代以分布式处理、互联网应用为特征的大数据技术

(1)云原生数据库
数据库云化之后,具有经济性,方便性,可靠性,稳定性,标准性,专业性,辐射性。

5.目前流行的DBMS产品

(1)Oracle:大型DBMS,应用于商业,政府部门。运行稳定,性能优越,吞吐量大,处理大批量的数据,数据安全性与数据完整性控制。价格昂贵。
(2)Microsoft的SQL Server:Windows平台上,大众化的DBMS,应用于中小型企业。事务处理功能,数据导出/导入功能。多种版本。
(3)IBM公司的DB2:开源的DBMS,价格昂贵,应用于银行、保险等可靠性要求很高的行业和领域。
(4)MySQL:开源的DBMS。体积小、性能高、可靠性好、成本低,被广泛应用于Internet上的中小型网站上。

6.国产DBMS产品

(1)天津南大通用数据技术股份有限公司,GBASE,金融、电信。
(2)武汉达梦数据库有限公司,DM数据库。
(3)北京人大金仓信息技术股份有限公司,KingbaseES,质监,审计等行业。
(4)神通数据库、SequoiaDB数据库,Hubble数据库等。
(5)腾讯,基于MySQL研发了TDSQL时序数据库。
(6)华为,基于PosgreSQL,研发了GaussDB数据库。
(7)阿里巴巴,研发了OceanBase数据库,支撑支付宝业务;以及PolarDB数据库。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

llurran

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值