当前位置: 首页 > 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点 ,求求点个赞吧

相关文章:

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

⚽前言 🏐四个基本概念 一、数据 定义 种类 特点 二、数据库 三、数据库管理系统(DBMS) 四、 数据库系统(DBS) 🏀数据库系统和文件系统对比 文件系统的弊端 🥎数据视图 数据抽象 …...

如何确定限流阈值:面试官问我,我怎么答?

在面试过程中,系统高并发是经常需要考察的,而熔断限流又是必考的,当面试官问及如何确定限流的阈值时,他们实际上是在考察你是否理解限流的本质及其在实际工作中是否有过经验。限流是一种常用的系统保护措施,用于防止过…...

HW干货集合 | HW面试题记录(1)

整理最近护网面试问的问题 前言 一开始会问问你在工作中负责的是什么工作(如果在职),参与过哪些项目。还有些会问问你之前有没有护网的经历,如果没有的话一般都会被定到初级(技术特牛的另说)。下面就是一…...

数据集踩的坑及解决方案汇总

数据集踩的坑及解决方案汇总 数据集各种格式构建并训练自己的数据集汇总Yolo系列SSDMask R-CNN报错 NotADirectoryError: [Errno 20] Not a directory: /Users/mia/Desktop/P-Clean/mask-RCNN/PennFudanPed2/labelme_json/.DS_StoreFaster R-CNN数据的格式转换划分数据集设定内…...

机器学习流程—数据预处理 Encoding

机器学习流程—数据预处理 Encoding 在机器学习中,我们经常会遇到分类变量,这些分量变量往往机器学习模型没有办法从中学习,往往有两种,一种是字符型,一种是数值型。通常需要对分类型变量做一些处理,常用的方法有两种:label encoding和one hot encoding。 例如,假设数…...

04-微服务 面试题

目录 1.Spring Cloud 常见的组件有哪些? 2.服务注册和发现是什么意思?(Spring Cloud 如何实现服务注册发现) 3.你们项目负载均衡如何实现的 ? 4.什么是服务雪崩,怎么解决这个问题? 5.你们服务是怎么监控的? 6.微服务限流(漏桶算法、令牌桶算法) 7.解释一下CAP…...

Qt连接所有同类部件到同一个槽函数

void MainWindow::AutoConnectSignals() {// 查找所有 QSpinBoxconst auto spinBoxes findChildren<QSpinBox*>();for (auto *spinBox : spinBoxes){connect(spinBox, static_cast<void(QSpinBox::*)(int)>(&QSpinBox::valueChanged), this, &ParameterW…...

spring boot 使用 webservice

spring boot 使用 webservice 使用 java 自带的 jax-ws 依赖 如果是jdk1.8,不需要引入任何依赖&#xff0c;如果大于1.8 <dependency><groupId>javax.jws</groupId><artifactId>javax.jws-api</artifactId><version>1.1</version&g…...

【嵌入式】嵌入式系统稳定性建设:最后的防线

&#x1f9d1; 作者简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟。提供嵌入式方向的学习指导、简历面…...

【算法】一类支持向量机OC-SVM

【算法】一类支持向量机OC-SVM 前言一类支持向量机OC-SVM 概念介绍示例编写数据集创建实现一类支持向量机OC-SVM完整的示例输出 前言 由于之前毕设期间主要的工具就是支持向量机&#xff0c;从基础的回归和分类到后来的优化&#xff0c;在接触到支持向量机还有一类支持向量机的…...

深入学习默认成员函数——c++指南

前言&#xff1a;类和对象是面向对象语言的重要概念。 c身为一门既面向过程&#xff0c;又面向对象的语言。 想要学习c&#xff0c; 首先同样要先了解类和对象。 本节就类和对象的几种构造函数相关内容进行深入的解析。 目录 类和对象的基本概念 封装 类域和类体 访问限定符…...

psutil, 一个超级有用的Python库

Python的psutil是一个跨平台的库&#xff0c;可以用于获取系统运行时的各种信息&#xff0c;包括CPU使用率、内存使用情况、磁盘和网络信息等。它主要用来做系统监控&#xff0c;性能分析&#xff0c;进程管理。它实现了同等命令行工具提供的功能&#xff0c;如ps、top、lsof、…...

[Python]`threading.local`创建线程本地数据

在Python中&#xff0c;threading.local是一个用于创建线程本地数据的工具。它允许每个线程拥有自己独立的变量副本&#xff0c;这样可以在多线程程序中避免共享变量带来的问题。 通过使用threading.local&#xff0c;你可以为每个线程创建一个独立的变量空间&#xff0c;这样…...

删除数据表

oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 删除数据表属于数据库对象的操作 drop table 表名称; 删除 emp30 表 SQL> drop table emp30;表已删除。 上面这个语句运行后&#xff0c;就会把数据表 emp30 删除 在…...

前端自带的base64转化方法

前端html的base64使用方法window.btoa()和window.atob()_html用window.btoa();-CSDN博客...

图论(二)之最短路问题

最短路 Dijkstra求最短路 文章目录 最短路Dijkstra求最短路栗题思想题目代码代码如下bellman-ford算法分析只能用bellman-ford来解决的题型题目完整代码 spfa求最短路spfa 算法思路明确一下松弛的概念。spfa算法文字说明&#xff1a;spfa 图解&#xff1a; 题目完整代码总结ti…...

.NET Core 日志记录功能详解

在软件开发和运维过程中&#xff0c;日志记录是一个非常重要的功能。它可以帮助开发者跟踪应用程序的运行状况、诊断和监控问题。.NET Core 提供了一个灵活且易于使用的日志系统&#xff0c;本文将详细介绍.NET Core日志的相关概念、配置和使用方法。 1. 什么是日志记录以及它…...

docker——启动各种服务

1.Mysql 2.Redis 3.nginx 4.ES 注意&#xff1a;ES7之后环境为 -e ELASTICSEARCH_HOSTS http://ip地址:9200...

git远程仓库使用

赋值这个地址clone 克隆之后 cd slam_oncloud/ git remote add chenxnew ssh://git192.168.3.40:1022/chenxiao/slam_oncloud.git 查看一下 linuxchenxiao:/media/linux/mydisk/cloud_slam/slam_oncloud$ git remote add chenxnew ssh://git192.168.3.40:1022/chenxiao/sla…...

js导出的excel文件无法打开/打开乱码,excel无法打开xxx.xlsx因为文件格式或文件扩展无效

excel无法打开xxx.xlsx因为文件格式或文件扩展无效 使用 a 标签导出这里就不细说了&#xff0c;直接说上述问题解决方案 在调用导出接口的时候加上两个参数 responseType: “blob” responseEncoding: “utf8” export function test(data) {return util({url: /test,method: …...

EF Core 10向量搜索扩展已进入GA倒计时:2026 Q2前必须完成的3项架构升级(含迁移路径图、兼容性矩阵与SQL Server 2022 CU23关键补丁号)

第一章&#xff1a;EF Core 10向量搜索扩展GA倒计时全景洞察随着 .NET 9 和 EF Core 10 的正式发布临近&#xff0c;官方宣布的 EF Core Vector Search Extensions&#xff08;向量搜索扩展&#xff09;已进入 GA&#xff08;General Availability&#xff09;前最后验证阶段。…...

HsMod:革新性炉石传说增强工具,全方位提升游戏体验

HsMod&#xff1a;革新性炉石传说增强工具&#xff0c;全方位提升游戏体验 【免费下载链接】HsMod Hearthstone Modification Based on BepInEx 项目地址: https://gitcode.com/GitHub_Trending/hs/HsMod 一、你是否也面临这些游戏痛点&#xff1f; 当你兴致勃勃地开启…...

LVGL实战:手把手教你用FatFS给STM32上的LVGL挂载SD卡文件系统(附多设备管理技巧)

LVGL实战&#xff1a;STM32多存储设备文件系统集成与优化指南 在嵌入式UI开发中&#xff0c;资源管理往往成为制约项目灵活性的瓶颈。当LVGL界面需要加载大量图片、字体等外部资源时&#xff0c;如何高效管理SD卡、SPI Flash等多种存储介质&#xff0c;成为提升开发效率的关键。…...

谷歌开发入门完整指南,从零开始入门,一分钟就能学会的开发者教程

谷歌开发入门指南涵盖领域极广&#xff0c;因其产品生态庞大&#xff0c;包括安卓&#xff08;Android&#xff09;、云平台&#xff08;Google Cloud&#xff09;、API服务、机器学习&#xff08;TensorFlow&#xff09;、Web技术等。本文将遵循与《鸿蒙开发者入门指南》类似的…...

第二章:从零构建你的首个量化交易策略

1. 初识量化交易与MindGo平台 第一次接触量化交易时&#xff0c;我完全被那些专业术语吓到了。什么"阿尔法因子"、"多因子模型"、"高频策略"&#xff0c;听起来就像天书一样。直到后来发现MindGo这个平台&#xff0c;才真正体会到量化交易也可以…...

ESP-Meshed:面向ESP32/ESP8266的轻量级分布式应用框架

1. ESP-Meshed 框架深度解析&#xff1a;面向 ESP32/ESP8266 的轻量级分布式应用构建框架1.1 框架定位与工程价值ESP-Meshed 并非 Espressif 官方 ESP-MESH 协议栈的替代品&#xff0c;而是一个面向嵌入式应用层的轻量级分布式框架。其核心设计哲学是&#xff1a;在不侵入底层网…...

【权威实测|2026.03.15 CPython核心团队签发】:Python原生AOT插件下载失败率骤降92%,但90%开发者仍卡在第2步安装验证

第一章&#xff1a;Python原生AOT编译方案2026插件下载与安装概览Python原生AOT&#xff08;Ahead-of-Time&#xff09;编译方案2026是CPython官方实验性路线图中的关键演进&#xff0c;旨在为Python代码提供零运行时依赖的二进制输出能力。该方案不依赖PyInstaller或Nuitka等第…...

实时行情系统设计:从协议选择到高可用架构,再到数据源选型蘸

一、核心问题及解决方案&#xff08;按踩坑频率排序&#xff09; 问题 1&#xff1a;误删他人持有锁——最基础也最易犯的漏洞 成因&#xff1a;释放锁时未做身份校验&#xff0c;直接执行 DEL 命令删除键。典型场景&#xff1a;服务 A 持有锁后&#xff0c;业务逻辑耗时超过锁…...

别再乱删了!手把手教你用官方工具彻底卸载Autodesk全家桶(3ds Max/CAD)

彻底告别安装失败&#xff01;Autodesk软件专业卸载与重装全指南 你是否曾经遇到过这样的困扰&#xff1a;明明已经卸载了3ds Max或AutoCAD&#xff0c;重新安装时却频频报错&#xff1f;那些隐藏在系统深处的残留文件就像顽固的污渍&#xff0c;无论你怎么擦洗都挥之不去。本…...

别再手动配环境了!用vcpkg在Windows上无痛安装osgEarth 3.7(附VS2019+避坑指南)

现代C开发者的效率革命&#xff1a;vcpkg一键部署osgEarth全攻略 在三维地理信息系统(GIS)和可视化领域&#xff0c;osgEarth作为开源地理空间工具包一直备受开发者青睐。然而&#xff0c;其复杂的依赖链和繁琐的编译过程常常让开发者望而却步——从OpenSceneGraph(OSG)基础库到…...