IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 数据库基础知识,超全 -> 正文阅读

[大数据]数据库基础知识,超全

今天总结了数据库的知识,有用的话点个赞再走吧,持续更新中……

5.1 数据库系统的基本概念

5.1.1 数据、数据库、数据库管理系统

1. 数据

数据定义:描述事物的符号记录
分类:

  • 临时性(随程序的结束而消亡)、持久性(对于数据长时间长时间持久作用)
  • 型(key)、值(value)
    型: 整型、实型、字符型

数据结构:包括了将多种相关数据一一定的结构方式组合构成特定的数据框架
数据库中在特定条件下称数据结构为数据模式

2. 数据库

定义:数据的集合,它具有统一的结构形式并存防御统一的存储介质内,是多种应用数据的集成,并可为各个应用所共享
特点: 集成、共享

3. 数据库管理系统

定义 : 数据库管理系统(database management system. DBMS)是数据库的机构,是一种系统软件,负责数据库的数据组织、操纵、维护、控制、保护、服务等。

数据库管理系统是数据库系统的核心

功能
(1)数据模式定义
(2)数据存取的物理构建
(3)数据操控
(4)数据的完整性、安全性定义与检查
(5)数据库的并发控制与恢复
(6)数据的服务

数据语言
(1)数据定义语言
(2)数据控制语言
(3)数据操控语言

上述数据语言按其使用方式具有两种结构方式:
交互式语言:语言简单,能在终端上即时操作,又称自含型或自主型语言
宿主型语言:一般可嵌入某些宿主语言(host languange),如C/c++\Java等高级过程性语言。

1.关系数据库中普遍使用了 结构化查询语言SQL(structured query language)是一种介于关系代数和关系演算的非过程性操作语言

sql不要求用户指定对数据的存放方式,也不需要用户了解具体的数据存放方式。

2.数据库管理系统还有为用户提供服务的服务性程序
包括:初始装入程序、数据转存程序、性能监测程序、数据库再组织程序、通信程序等

4.数据库管理员

主要工作
(1)数据库设计(数据模式的设计)
(2)数据库维护
(3)改善系统性能、提高系统效率

5.数据库系统

组成部分
数据库(数据)
数据库管理系统(软件)
数据库管理员(人员)
系统平台之一(硬件平台)
系统平台之二(软件平台)

硬件平台:计算机(硬件的基础平台)、网络(结构方式以客户/服务器(C/s)方式与浏览器/服务器(B/s)方式为主)

软件平台:操作系统(软件的基础平台 e.g.UNIX WINDOWS)、数据库系统开发工具(java\c\html等) 、接口软件

6.数据库应用系统(database application system,DBAS)

数据库应用系统组成:
数据库系统+应用软件+应用界面

层次结构:
应用系统>应用开发工具软件>数据库管理系统>操作系统>硬件

5.1.2 数据库系统的发展

三个阶段:
人工管理阶段、文件管理系统、数据库系统阶段

5.1.3 数据库系统的基本特点

1.数据的集成性

表现在以下方面:
(1)统一数据结构方式
(2)全局与局部的结构模式

2.数据的高共享性与低冗余性

减少了不必要的存储空间,避免数据的不一致性(一致性指:系统中的同意数据的不同出现应保持相同的值)

3.数据独立性

  • 物理独立性 : 数据的物理结构改变不影响数据库的逻辑结构从而不影响应用程序
  • 逻辑独立性 : 同上

4.数据统一管理与控制

  • 数据的完整性检查
  • 数据的安全性保护
  • 并发控制

5.1.4 数据库系统的内部结构体系

  • 三级模式
    概念级模式
    (是数据库系统的全局数据逻辑的描述,是全体用户公共数据视图、是一种抽象的描述,不涉及具体的硬件环境与平台、与具体软件环境无关)
    (主要描述数据的概念记录类型以及它们间的关系,还包括一些数据间雨衣约束,对它的描述可用DBMS中的DDL语言定义)
    内部模式(又称物理模式、给出了数据库的物理存储结婚后与物理存取方法。内模式的物理模式主要体现在操作系统及文件级上。对一般用户是透明的,其设计直接影响数据库的性能)
    外部模式(用户数据视图)

    以概念模式为框架所组成的数据库叫概念数据库,外模式–用户数据库、内模式–物理数据库
    这是三种数据库真实存在于计算机外存中,其他两种数据库并不真正存在于计算机中,而是通过两种映射有物理数据库映射而成。

  • 二级模式
    (1)概念级到内部级的映射:
    给出了概念模式数据的全局逻辑结构到物理存储结构的关系,此种映射一般由DBMS实现

(2)外部级到概念级的映射
概念模式是一个全局模式,外模式是用户的局部模式
一个概念模式可以定义多个外模式、每个外模式是概念模式的一个基本视图
外模式到概念模式的映射给出了外模式与概念模式的对应关系。一般有DBMS来实现。

5.2 数据模型

5.2.1 数据模型的基本概念

现实世界:所见到的客观世界中的划定边界的一个部分环境
信息世界:通过抽象对现实世界的数据库级上的刻画所构成的逻辑模型
计算机世界: 在信息世界基础上致力于其在计算机物理结构上我的描述,从而形成的物理模型

数据模型: 是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为、约束条件。

数据模型描述内容
(1)数据结构
描述数据类型、内容、性质、数据兼联系
数据操作和数据约束建立在数据结构之上
(2)数据操作
主要描述在响应数据结构上的操作类型与操作方式
(3)数据约束
主要描述在相应数据结构上的语法、语义联系

数据模型按不同应用层次分为三种模型:
(1)概念性数据
面向客观世界、面向用户的模型
(2)逻辑数据模型(又称数据模型)
面向数据库的模型
e.g.层次模型、网状模型、关系模型、面向对象模型
(3)物理数据模型(又称物理模型)
一种面向计算机物理表示的模型,给出数据模型在计算机上的物理结构的表示

5.2.2 E-R 模型(entity-relationship model)

1.E-R 模型的基本概念

(1)实体
是概念世界的基本单位,是客观存在的且又能相互去别的事物。
凡是有共性的实体可以组成一个集合成为实体集。
(2)属性
属性刻画实体的特征
一个属性的取值范围称为该属性的值域(value domain) 或(value set)
(3)联系

实体间的联系:
【1】两个实体集间的联系
e.g. 1:1,M:1,1:M
【2】多个实体集间的联系
【3】一个实体集内部的联系

2. E-R模型的三个基本概念之间的连接关系

(1)实体是概念世界中的基本单位,属性附属于实体,本身并不构成独立单位
属性有属性域,每个实体可取属性域内的值,一个实体的所有属性取值组成了一个值集叫元祖(tuple)
实体有型与值之别,一个实体的所有属性构成了这个实体的型,而实体中属性值的集合构成这个实体的值
(2)实体(集)与联系
实体集间可通过联系建立连接关系

5.2.3 层次模型

基本结构是树形结构

5.2.4 网状模型

网状模型是一个不加任何条件限制的无向图,一般采用分解方法是分成若干个二级树
在网状模型DBTG(data base task group)标准中,
基本结构简单二级树叫(set),基本数据单位是记录(record) 它相当于E-R模型中的实体(集)
记录又可由若干数据项(data item)组成,相当于简单E-R模型中的属性。
系中有一个首记录(owner record) 相当于简单二级树中的根,
若干成员你录(member record) 相当于简单二级树中的叶
首记录与成员记录间的联系用有向线段表示。

5.2.5 关系模型

1.关系的数据结构

关系模型用二维表表示:表框架(frame)+元组(tuple)
表框架由n个命名的属性(attribute)组成,n为属性元数(arity)
每个属性有一个取值范围称为 值域(domain)

每行数据称为元组 ,一个元组有n个元组分量组成,每个元组分量是表框架中每个属性的投影值,一个表框架可以存放m个元组,称m为表的基数。

关系
满足以下7个条件的二维表:
(1)元组个数有限性
(2)元组的唯一性
(3)元组的次序无关性
(4)元组分量的原子性:数据不可分割
(5)属性名唯一性
(6)属性的次序无关性
(7)分量值域的同一性:属性的分量具有与该属性相同的值域

键(或码):标识元素的最小属性集
候选码(候选键):二维表中可能有若干个键
主键(键):从候选键中选取一个作为用户使用的键
外键:表A中某属性集是表B的键,则称该属性集为A的外键

关系元组的分量允许出现空值(null value),但关系的逐渐不能空,需要定义有关空值的运算。

关系框架+关系元祖=关系
语义相关的关系集合=关系数据库
关系的框架成为关系模式
语义相关的关系模式集合构成关系数据库模式
关系模式支持子模式,对应用户数据库称视图。

2.关系操纵

(1)数据查询

  • 一个关系内的查询
    定位->操作
    定位:纵向定位、横向定位
    查询:将定位的数据从关系数据库中取出并放入指定内存

  • 对多个关系间的数据查询
    多个关系合并成一个关系-> 定位 ->操作

(2)数据删除
横向定位(元组选择)->元组删除

(3)数据插入
元祖插入

(4)数据修改
1关系的属性指定
2关系的元祖选择
3两个关系的合并
4一个或多个关系的查询
5关系中元组的插入
6关系中元组的删除

3. 关系中数据的约束

其中前两种完整性约束系统自动支持,最后一种由关系数据库提供完整性数据约束语言,用户利用该语言写出约束条件,运行时由系统自动检查。
(1)实体完整性约束
主键不能为空,因为主键唯一决定元组

(2)参照完整性约束
是关系之间相关联的基本约束,不允许关系引用不存在的元组,即:关系中的外键要么是关联关系中实际存在的元组,要么就为空值

(3)用户定义的完整性约束
针对具体环境与应用环境有用户具体设置的约束,反映应用数据的具体要求

5.3 关系代数

1. 关系模型的基本操作

待更……

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-09-19 08:02:49  更:2021-09-19 08:03:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 19:38:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码