数据库技术:数据存储和查询知识笔记

 

1、存储管理器

存储管理器作用:负责数据库中数据的存查询和更新。存储管理器负责和文件系统交互,将不同的DML语句翻译成底层文件系统命令,通过这种方式原始数据就通过文件系统存储在磁盘上。

存储管理器是存储底层数据和应用程序、以及向数据库提交的查询之间提供接口的程序模块。

1.1 存储管理器组件

权限和完整性管理器:检查试图访问数据库用户的权限,检查数据是否满足完整性约束。

事务管理器:针对发生了故障、可以保证数据库的一致性状态,以及并发事务执行时不发生冲突。

文件管理器:管理磁盘空间的分配,管理用于表示磁盘所有信息的数据结构。

缓冲管理器:负责将数据从磁盘写入内存,并决定哪些数据被缓冲放入内存。

2、查询处理器

查询处理器组件

DDL解释器:解释DDL语句并将其放入数据字典中。

DML编译器:将查询语言中的DML语句翻译成一个计算机方案,包括一系列查询计算引擎能理解的命令。

注意:一个查询可被解释为多种等价的具有相同结果的计算方案,DML编译器会进行查询优化,选中代价最小的方案。

 

IT技术分享社区

个人博客网站:https://programmerblog.xyz

文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271295.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

lambda中orElse(null)使用

如果取得第一个元素,则用findFirst() 最后提取元素的时候,可以用:get或者orElse(null) 这里要注意的是,规范用法是orElse(null) 用get方法,如果filter中获取的是null,那么用get方法会抛出异常&#xff1…

数据挖掘:数据仓库相关知识笔记

1、数据仓库介绍数据仓库(DW):可以满足管理人员的决策分析需要,在数据库基础上产生了满足决策分析需要的数据环境。传统数据库和数据仓库比较比较内容传统数据库数据仓库数据内容当前数据历史的、存档的、归纳的、计算的数据目标面…

python200行代码_如何用200行Python代码“换脸”

本文将介绍如何编写一个只有200行的Python脚本,为两张肖像照上人物的“换脸”。 这个过程可分为四步: 检测面部标记。 旋转、缩放和转换第二张图像,使之与第一张图像相适应。 调整第二张图像的色彩平衡,使之与第一个相匹配。 把第…

git的smart Checkout跟force checkout的区别

1:在切换分支的时候,常常会遇到下图的问题 是因为我在test分支上修改了代码,但是没有commit,切换到其他分支上就弹出了这个窗口 我们需要怎么处理呢 2:可以看到弹框底部有Force Checkout Dont checkout Smart Checkout,表示什么意思呢 Smart …

数据挖掘相关知识介绍

1、数据挖掘定义把数据库中大量数据背后隐藏的重要信息抽取出来,然后为公司创造很多潜在的利润,针对这种海量数据库中挖掘数据信息的技术称为数据挖掘(DM)。2、数据挖掘的分类按照数据库种类:关系型数据库的数据挖掘、…

c语言数字灵活多变的访问形式_学习C语言你必须知道的事儿!

是新朋友吗?记得先点蓝字关注我哦~今日课程菜单Java全栈开发 | Web前端H5大数据开发 | 大数据分析人工智能Python | 人工智能物联网有听过这样一段话:在编程界,C语言就是道家的“三”,A生B,B生C&#xff0c…

IDEA通过git怎么回滚到某个提交节点或某个版本

1:先右键点击项目,选择git,接着Show History 2:这里会显示有历史提交的版本记录,假设我要回滚到箭头处到提交,操作如下 3:右键点击,点击Copy Revision Number 在编辑器里粘贴,可以看到如下 4:右击选择项目,选择git -&…

关系数据库基础知识介绍

1、关系的相关名词介绍属性(Attribute):描述事物的若干特征称为属性。比如学号、姓名、职位、年龄等。域(Domain):针对属性的取值范围集合。比如性别取值为男、女、学号的长度为8位等。一般在关系数据模型中&#xff0…

android中xmlns:tools属性详解

第一部分 安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果。 但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了text。因此为了在ide中预览效果&…

python excel库 linux_用python写一个简单的excel表格获取当时的linux系统信息

最近在学习excel表格的制作,顺便结合之前学习的内容,利用python的两个模板,分别是获取系统信息的psutil,和生成excel表格的xlsxwriter。利用这两个模板将生成一个简单的excel表格,获取当时的linux系统信息,…

mac下安装brew下载非常慢解决方法

一键解决:自动脚本(全部国内地址)(在Mac os终端中复制粘贴回车下面这句话) /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"输入y 在终端环境下,brew --version 查看brew的版本&#xf…

关系数据库模式和完整性约束相关概念

一、关系数据库模式介绍关系的描述形式:R(U,D.dom,F),简化形式:R(U)、R(A1,A2,A3...An)R:表示关系名;U组成该关系的属性名集合;D是属性的域;dom是属性向域的映像集合;F为属性间数据的依赖关系集…

分布式锁的实现方式

在进行大型网站技术架构设计以及业务实现的过程中,多少都会遇到需要使用分布式锁的情况。那么问题也就接踵而至。分布式锁zk和memcached以及redis三者都能实现,同样是分布式锁,三者的区别何在?各自适用什么场景? 一、Z…

关系数据库基础:关系代数运算知识笔记

1、关系代数运算符集合运算符:并(U)、差(-)、交(∩)、笛卡尔积()专门的关系运算符:选择(∂)、投影(π)、连接(∞)、除()算术比较符:大于(>)、大于等于(≥)、小…

POJ 1308 Is It A Tree? (并查集)

Is It A Tree?题目链接: http://acm.hust.edu.cn/vjudge/contest/123393#problem/M Description A tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one or more nodes connected by directed edges between node…

Mysql分页加pagebean_Spring+MyBatis+SpringMvc+Mysql+Druid+PageHelper分页实现

我是阿福,公众号「阿福聊编程」作者,一个在后端技术路上摸盘滚打的程序员,在进阶的路上,共勉!文章已收录在 JavaSharing 中,包含Java技术文章,面试指南,资源分享。思路分析MyBatis的…

python csv使用_python CSV模块的使用

简介 CSV(comma separated values),逗号分隔值(字符分割值,字符可以不是逗号),常用的文本格式,用以存储表格数据,包括数字或者字符。kaggle就是csv格式,pytho…

数据库技术基础:查询优化相关知识笔记

1、查询优化的基本概念1.1 查询处理查询处理是指从数据库中提取数据的一系列活动。主要包括:将高级数据库查询语句翻译成文件系统这一物理 层次的表达式,为优化查询进行各种转换以及查询的实际执行。1.2 查询处理的代价查询处理的代价通常由磁盘的访问,因…

设计模式----解释器模式

一、简介 解释器模式使用频率并不高,通常用来构建一个简单语言的语法解释器,它只在一些非常特定的领域被用到,比如编译器、规则引擎、正则表达式、sql解析等。 解释器模式是行为型设计模式之一,它的原始定义为:用于定义…

HTML学习笔记16——尺寸的表示_px、%、em三种

1.像素表示: 23px 2.子像素可以用百分比表示其大小,如50%,表示为父元素的一半 如果块状子元素的宽度不指定,默认是占满父元素的宽度; 3.用em表示字体大小时,表示相对大小,是与父元素的比值&…