MVCC是如何保证隔离性的

news2024/10/6 12:20:10

之前提到了MVCC可以一定程度上避免幻读,那具体MVCC是咋工作的呢?
需要介绍两个机制:read view和聚簇索引的两个隐藏列

read view

这个就是我们理解的快照,有四个字段,本事务id、活跃事务id列表(包含自己)、活跃事务里id最小的(还没提交的事务里最早开始的)、下一个事务id(不一定是活跃事务列表中最大值+1)

在这里插入图片描述

聚簇索引中的隐藏列

trx_id代表本行数据是由哪个事务更新的,undo_log是关键的版本控制指针。就是用read view里的m_ids看这条记录对当前事务可见与否,可见就读不可见就顺着链表向下找。
在这里插入图片描述
在这里插入图片描述

工作方式

可重复读是启动事务时生成一个 Read View,然后整个事务期间都在用这个 Read View。
读提交是在每次读取数据时,都会生成一个新的 Read View。
在这里插入图片描述

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

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

相关文章

Biglnteger 和 BigDecimal类 - Java

BigInteger 和 BigDecimal类 1、应用场景 BigInteger 适合保存比较大的整型BigDecimal 适合保存精度更高的浮点型(小数) 2、BigInteger 当编程中需要处理很大的整数,long 不够用,就需要使用 Biglnteger 类。 使用 //创建:和类一样&…

手机传输数据到电脑该怎么操作?安卓、苹果都可以这样操作

安卓手机 你知道安卓手机传输数据到电脑的方法有哪些吗?下面我们就一起来看一看可以使用的一些方法。 采用 USB 数据线 这个方法应该是我们生活中较为常见的方法了,我们只需要使用手机的充电线,将其连接到电脑上,然后手机可能会…

网工学习7-配置 GVRP 协议

7.1GARP概述 GARP(Generic Attribute Registration Protocol)是通用属性注册协议的应用,提供 802.1Q 兼容的 VLAN 裁剪 VLAN pruning 功能和在 802.1Q 干线端口 trunk port 上建立动态 VLAN 的功能。 GARP 作为一个属性注册协议的载体,可以用来传播属性…

医药行业:轻松学会超低温冰箱技能

超低温冰箱在医疗、科研和生物领域中扮演着至关重要的角色,用于存储和保护对温度极为敏感的样品和药品。 然而,由于这些冰箱内的温度波动可能导致样品的损坏,因此对超低温冰箱的监控变得至关重要。 客户案例 医疗研究机构 上海某医疗研究机…

行业分析:全球山药产量约为7603.1万吨

山药味甘,性平。常被认为有健脾、益肺、固肾、涩精等功效。作为食用,山药所含的膳食纤维丰富,相比精细主食,如大米苗条等,更有饱腹感,对于控制食欲和体重有很好的辅助作用。另外,其所含的淀粉酶…

如何在Linux上搭建本地Docker Registry镜像仓库并实现公网访问

Linux 本地 Docker Registry本地镜像仓库远程连接 文章目录 Linux 本地 Docker Registry本地镜像仓库远程连接1. 部署Docker Registry2. 本地测试推送镜像3. Linux 安装cpolar4. 配置Docker Registry公网访问地址5. 公网远程推送Docker Registry6. 固定Docker Registry公网地址…

万兆多模光模块SFP-10G-SR:高速短距传输的最优选

随着信息技术的发展,企业和个人对数据传输速度和带宽需求不断增加。传统的千兆以太网已经不能满足高速数据传输的要求,因此万兆以太网技术崭露头角。作为万兆以太网中的重要组件之一,万兆多模SFP-10G-SR光模块引起了广泛的关注。本文将介绍万…

Latex去掉参考文献后面的参考文献所在页(去掉参考文献的反向超链接)

如下: 在使用latex插入参考文献的时候,最后面总是会出现这种代号。这是表明的是这条参考文献所在的页码,并且点击之后可以跳转到该页。正式来讲,这个叫超链接的BACKREF。若要去掉,只需要在引用hyperref的时候去掉page…

MYSQL练题笔记-聚合函数-各赛事的用户注册率

一、题目相关内容 1)相关的表 2)题目 3)帮助理解题目的示例,提供返回结果的格式 二、自己初步的理解 有两张不同左右的表,用户表和赛事注册表。然后解题。 1.各种赛事的用户注册百分率 各种赛事的意味着通过contes…

Spring 声明式事务

Spring 声明式事务 1.Spring 事务管理概述1.1 事务管理的重要性1.2 Spring事务管理的两种方式1.2.1 编程式事务管理1.2.2 声明式事务管理 1.3 为什么选择声明式事务管理 2. 声明式事务管理2.1 基本用法2.2 常用属性2.2.1 propagation(传播行为)2.2.2 iso…

希宝猫罐头怎么样?专业人士告诉你营养好的猫罐头推荐

作为一个6年铲屎官来说,买过的猫罐头可以说是不计其数啦。对于猫罐头品牌选购和喂养相关知识,我还是有点心得的。希宝猫罐头怎么样呢? 希宝猫罐头采用了先进的加工工艺,注重产品的包装和密封性,包装设计比较符合年轻人…

年底了,项目预算怎么创建?9个步骤直接搞定

如果将项目比作一辆汽车,那么预算就是它的燃料。就像汽车需要汽油一样,项目也需要资金和资源来维持运转。而作为项目经理,应该尽量用最有效的方式规划和使用这些资源,使项目按时交付。 项目预算是一项计划,其中详细说…

使用Plex结合cpolar搭建本地私人媒体站并实现远程访问

文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1.前言 用手机或者平板电脑看视频,已经算是生活中稀松平常的场景了,特别是各…

使用Java语言判断一个数据类型是奇数还是偶数

判断一个数字类型是奇数,还是偶数,只需要引入Scanner类,然后按照数据类型的定义方式进行定义,比较是按照与2进行整除后的结果;如果余数为零,则代表为偶数,否则为奇数。 import java.util.Scann…

学习php中使用composer下载安装firebase/php-jwt 以及调用方法

学习php中使用composer下载安装firebase/php-jwt 以及调用方法 1、安装firebase/php-jwt2、封装jwt类 1、安装firebase/php-jwt composer require firebase/php-jwt安装好以后出现以下文件: 2、封装jwt类 根据所使用的php框架&#xff0c;在指定目录创建 Token.php <?ph…

对小工蚁关于LLM的技术总结+个人思考

LLM能力从何而来&#xff1a; 推理能力&#xff1f;目前还未知晓为何得到结果 斯坦福大学的AI指数 通过种子任务自动生成数据训练LLM 基于self-instruct及175条种子任务生成数据。 LLM大模型如何进行微调&#xff1f; 1.blog/trl-peft.md at main huggingface/blog GitH…

2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-A

2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-A 目录 2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-A 需要环境或者解析可以私信 &#xff08;二&#xff09;A 模块基础设施设置/安全加固&#xff08;200 分&…

【跨境营商】创新科技助力数码转型 增强大湾区企业核心竞争力

粤港澳大湾区作为国家的重点发展区域&#xff0c;坐拥丰富的资源及商机&#xff0c;企业积极推行数码化&#xff0c;务求在大湾区抢占先机。香港电讯商业客户业务董事总经理吴家隆表示&#xff0c;近年企业锐意加快数码化步伐&#xff0c;香港电讯以创新科技融入的数码方案&…

【Axure高保真原型】3D大屏可视化模板

今天和大家分享3D大屏可视化的原型模板&#xff0c;里面包括3D条形图、3D柱状图、3D饼图、3D环形图、3D金字塔图&#xff0c;鼠标移入图表&#xff0c;对应区域会高亮变色&#xff0c;并且显示对应的数据标签&#xff0c;具体效果可以点击下方视频观看或打开下方预览地址查看哦…