当前位置: 首页 > news >正文

数据库系统概念(第一周)

⚽前言

🏐四个基本概念 

一、数据

定义

种类

特点

二、数据库

三、数据库管理系统(DBMS)

四、 数据库系统(DBS)

🏀数据库系统和文件系统对比

文件系统的弊端

🥎数据视图

数据抽象

物理层

逻辑层

视图层

总结(见图)

实例和模式:

模式

模式分类:

模式映像 

实例

🎱数据模型


前言

本文的所有知识点、图片均来自《数据库系统概念》(黑宝书)、山东大学李晖老师PPT。不可用于商业用途转发。

四个基本概念 

一、数据

数据不是依赖于处理过程的附属品而是现实世界中独立存在的对象

定义

        1、描述事务的符号记录

        2、显示世界运转留下的痕迹

种类

        数值、字符、BLOB、CLOB、data、time

特点

        数据与语义是不可分的(解释数据仅有value无法理解数据,没有确定语义的数据没有意义)

二、数据库

数据库(DB)是长期存储再计算机内,有组织、可共享大量数据集合。底层是文件系统,靠操作系统实现管理。

长期:意味着要处理原子性问题,发生故障能够恢复数据

有组织:意味着物理层和逻辑层两个level的处理,使得数据存储利用率高、存取效率高

共享:意味着能够并发操作

大量:文件系统的处理上限为100w行记录,数据库远大于这个值

三、数据库管理系统(DBMS)

数据库是数据集合,生成并管理数据库的程序就是数据库管理系统,例如:MySQL、Oracel等。当然数据库管理系统也要提供访问这些数据、可视化操作的功能

DBMS和编译系统同等地位,他们都能直接接触操作系统对计算机硬件进行操作 

四、 数据库系统(DBS)

数据库系统是一个集成的概念,包括数据库管理系统、应用程序、数据库、数据库开发人员、用户

数据库系统和文件系统对比

文件系统的弊端

一、数据的冗余和不一致(redundancy and inconsistency)

二、数据访问困难(access)

三、数据孤立(data isolation):数据格式、类型在长期运营中可能发生变化,彼此孤立,需要重新写程序

四、完整性问题(integrity):数据库中所有数据应该满足某些特定的一致性约束条件

五、原子性问题(atomicity promblem):原子的——要么一起发生,要么一起不发生。系统故障时如何处理恢复

六、并发访问异常(concurrent):不同应用程序同时访问时,需要去合理管理使其有序

七、安全性问题

数据视图

数据库系统的一个主要功能就是给用户提供数据的抽象视图,也就是说系统隐藏关于数据存储和维护的细节,仅仅提供用户它所需要的数据视图,用于让用户能够使用数据

数据抽象

为了隐藏数据存储和维护的细节,数据库设计师将数据库分为了几个层次,不同层次对不同人开放。主要有物理层、逻辑层和视图层。

物理层

描述数据实际上的存储方式,描述底层的数据结构

逻辑层

描述数据库中存储了什么数据(数据类型、数据种类),以及这些数据间存在什么关系。学习数据库、做前后端开发主要研究的还是逻辑层的设计和开发

视图层

视图层就是针对不同用户群体,给他们提供逻辑层的部分信息。其他不需要的信息在视图层进行隐藏。同时,屏蔽数据类型等细节,也不予完整的数据库访问权

总结(见图)

实例和模式:

模式

数据库的总体设计叫做数据库模式

模式分类:

物理模式(内模式):在物理层描述数据库的设计

逻辑模式(模式):在逻辑层面描述数据库的设计(也是前后端开发人员主要的工作)

子模式(外模式):在视图层面描述数据库不同视图的分配

模式映像 

三级模式有两级映像。映像存在的意义就是在底层模式发生变化的时候,外模式下的应用程序不会受到影响。保证各个模式中的数据的独立性

实例

特定时刻存储在数据库中的信息的集合

数据模型

关系模型:目前主流的数据库模型。更加详细的解释在后续文章中给出。

实体-联系模型:底层思想:现实世界由一组称为实体的对象及这些对象间的联系构成

本文到这里就结束啦~~又肝到了12点 ,求求点个赞吧

相关文章:

  • 数据结构 - 栈和队列
  • lua与C++粘合层框架
  • Clickhouse表引擎介绍
  • ARM单片机中程序在ROM空间和RAM空间的分布(分散加载文件,Scatter-Loading Description File)
  • Humanoid-Gym 开源人形机器人端到端强化学习训练框架!星动纪元联合清华大学、上海期智研究院发布!
  • 产品推荐 - 基于6U VPX的双TMS320C6678+Xilinx FPGA K7 XC7K420T的图像信号处理板
  • ORACLE基于归档号增量恢复
  • windows关闭copilot预览版
  • 分布式定时任务调度xxl-job
  • ElevenLabs用AI为Sora文生视频模型配音 ,景联文科技提供高质量真人音频数据集助力生成逼真音效
  • HTML—常用标签
  • Rust 语言的 async 关键字
  • Linux系统——Haproxy高性能负载均衡软件
  • 初阶数据结构之---二叉树的顺序结构-堆
  • 网站被插入虚假恶意链接怎么办?
  • C学习-枚举(九)
  • emacs初体验
  • Flannel解读
  • Javascript设计模式学习之Observer(观察者)模式
  • Redux系列x:源码分析
  • SOFAMosn配置模型
  • Yii源码解读-服务定位器(Service Locator)
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 力扣(LeetCode)357
  • 我有几个粽子,和一个故事
  • ​Java并发新构件之Exchanger
  • ​直流电和交流电有什么区别为什么这个时候又要变成直流电呢?交流转换到直流(整流器)直流变交流(逆变器)​
  • ###C语言程序设计-----C语言学习(6)#
  • (16)UiBot:智能化软件机器人(以头歌抓取课程数据为例)
  • (附源码)ssm高校社团管理系统 毕业设计 234162
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (三)uboot源码分析
  • (三十五)大数据实战——Superset可视化平台搭建
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (一)基于IDEA的JAVA基础12
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .Net 中的反射(动态创建类型实例) - Part.4(转自http://www.tracefact.net/CLR-and-Framework/Reflection-Part4.aspx)...
  • .Net 转战 Android 4.4 日常笔记(4)--按钮事件和国际化
  • @DataRedisTest测试redis从未如此丝滑
  • [ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [ai笔记4] 将AI工具场景化,应用于生活和工作
  • [C++] 统计程序耗时
  • [CareerCup] 13.1 Print Last K Lines 打印最后K行
  • [ffmpeg] x264 配置参数解析
  • [IE9] 解决了傲游、搜狗浏览器在IE9下网页截图的问题
  • [leetcode] Longest Palindromic Substring
  • [LeetCode]Multiply Strings
  • [LeetCode]-Spiral Matrix III 螺旋矩阵
  • [Linux版本Debian系统]安装cuda 和对应的cudnn以cuda 12.0为例
  • [loj#115] 无源汇有上下界可行流 网络流
  • [luogu4162 SCOI2009] 最长距离(最短路)
  • [MFC] MFC消息机制的补充
  • [MicroPython]TPYBoard v102 CAN总线通信