当前位置: 首页 > 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: …...

2026知识库系统对比:18款主流软件功能与价格汇总

本文将深入对比18款好用的知识库系统&#xff1a;PingCode、亿方云、Baklib、GitBook、印象笔记、Confluence、HelpLook、为知笔记、Boardmix、沃丰科技知识库、Document360、ShowDoc、蓝凌知识库等。 在远程办公与 AI 协作深度融合的 2026 年&#xff0c;知识库系统已不再是单…...

基于YOLOv5和Python开发的中国交通标志识别系统,可识别45种交通标志,识别率高

基于YOLOv5和Python开发的中国交通标志识别系统&#xff0c;可识别45种交通标志&#xff0c;识别率高 最近在研究交通标志识别&#xff0c;发现了一个基于YOLOv5和Python开发的中国交通标志识别系统&#xff0c;效果相当不错。这个系统可以识别45种交通标志&#xff0c;而且识…...

DOL-CHS-MODS整合包:2024一站式解决方案,3大优势助你轻松体验Degrees of Lewdity

DOL-CHS-MODS整合包&#xff1a;2024一站式解决方案&#xff0c;3大优势助你轻松体验Degrees of Lewdity 【免费下载链接】DOL-CHS-MODS Degrees of Lewdity 整合 项目地址: https://gitcode.com/gh_mirrors/do/DOL-CHS-MODS DOL-CHS-MODS整合包作为Degrees of Lewdity游…...

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

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

Go Channel 缓冲区溢出问题

Go Channel 缓冲区溢出问题解析 在Go语言中&#xff0c;Channel是协程间通信的核心机制&#xff0c;但其缓冲区溢出问题常被开发者忽视。当写入数据的速度超过读取速度时&#xff0c;缓冲区可能溢出&#xff0c;导致程序阻塞或数据丢失。理解并解决这一问题&#xff0c;对构建…...

为什么92%的.NET团队在.NET 9发布30天内未启用低代码?揭秘微软未公开的Runtime沙箱限制与IL修剪兼容性断层

第一章&#xff1a;低代码在.NET 9生态中的战略定位与现实落差.NET 9 将“开发者生产力”列为首要设计目标&#xff0c;官方路线图明确将低代码能力纳入平台级支持范畴——包括对 Microsoft.Extensions.LowCode 命名空间的首次正式引入、Blazor Hybrid 中内建的可视化组件绑定引…...

构建仓库与包管理

一、构建仓库 1、nexus安装 brew安装方式&#xff08;比较慢&#xff09; brew install nexus官网下载安装方式 去sonatype官网下载&#xff0c;比如MacOS的&#xff0c;下载完成之后cd到bin目录即可看到启动命令 启动 # 2.0版本 brew services start nexus # 3.0版本 /usr…...

终极JSON字符串转义指南:深入解析jless中jsonstringunescaper模块的完整设计思路

终极JSON字符串转义指南&#xff1a;深入解析jless中jsonstringunescaper模块的完整设计思路 【免费下载链接】jless jless is a command-line JSON viewer designed for reading, exploring, and searching through JSON data. 项目地址: https://gitcode.com/gh_mirrors/jl…...

Pangolin编译失败:OpenEXR版本冲突与编译器兼容性排查

1. 当Pangolin遇上OpenEXR&#xff1a;编译失败的真相 最近在Ubuntu 18.04上折腾Pangolin时&#xff0c;遇到了一个典型的编译问题&#xff1a;OpenEXR版本冲突导致的编译失败。这个问题特别有意思&#xff0c;因为它完美展示了现代C开发中常见的"版本地狱"现象。我花…...

Node Modules Inspector:可视化你的Node.js依赖关系,5分钟快速上手指南

Node Modules Inspector&#xff1a;可视化你的Node.js依赖关系&#xff0c;5分钟快速上手指南 【免费下载链接】node-modules-inspector Interactive UI for local node modules inspection 项目地址: https://gitcode.com/gh_mirrors/no/node-modules-inspector Node …...