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

innodb存储引擎之:表空间

概览

https://www.mubucm.com/doc/5X-MdVzKDKB

 

为什么innodb设计了“区”的概念

如果以页为单位来分配存储空间,B+树索引中同一层级的双向链表相邻的两个页之间的物理位置可能离得非常远,会导致遍历索引的时候,无法使用顺序I/O,所以引入了“区”的概念

为什么innodb设计了“碎片区”的概念

如果有些表的本身的记录数很少,例如业务配置类型的表,直接以“区”为单位分配存储空间,就会导致磁盘空间的浪费。所以mysql规定,当一个表占用的页数量超过 32 个页后,再申请磁盘空间就是以 区 为单位

XDES Entry (Extent Descriptor Entry)

为了方便管理这些区 innodb 设计了 一个称为 XDES Entry (Extent Descriptor Entry) 的结构。每一个区都对应着一个 XDES Entry 结构,这个结构记录了对应的区的一些属性

Segment ID

(8字节) 每一个段都有一个唯一的编号,用 ID 表示。 Segment ID 字段表示的就是该区所在的段,前提是该区已经被分配给某个段了,不然该字段的值没有意义。

List Node

(12 字节〉 这个部分可以将若干个 XDES Entry 结构串连成一个链表

State

(4字节),表示 区 的状态

需要强调的是,处于 FREE、FREE_FRAG 以及 FULL_FRAG 这 3 种状态的区都是独立的,算是直属于表空间;而处于 FSEG 状态的区是附属于某个段的

Page State Bitmap

(16 字节) ,这个部分共占用16字节,也就是 128 位。一个区默认有 64 个页,这 128 位被划分为 64 个部分,每个部分有 位,对应区中的一个页。比如

Page State Bitmap 部分的第1位和第2位对应着区中的第1个页面,第3位和第4位对应着区中的第2个页面….. 127 位和 128 位对应着区中的第 64 个页面.这 2 个位中的第 1 位表示对应的页是否是空闲的,第2位还没有用到.

List Base Node 链表基节点

链表基节点,用户保存表空间 XDES Entry 链表 和 索引段中的 XDES Entry 链表 的,头节点指针和尾结点指针

段的结构

参考资料

《mysql是怎样运行的》第9章 存放页面的大池子--InnoDB的表空间

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

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

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

最开始面的头条游戏中台,当时是第一次面试,没有经验,导致算法题虽然有思路,但是没有写出最优解,直接挂了。后来又被捞起来,因为此时已有阿里的offer,所以胆子也大起来了,收拾心情开始…...

[前端学习]ES6进阶学习

async/await EventLoop(同步和异步) API接口案例 总结...

Educational Codeforces Round 111 (Rated for Div. 2)A,B

A. Find The Array 题意: 一个序列满足以下条件就算合法的 1.ai 为1 2.ai不为1,那么ai - 1,和ai - 2至少存在一个 现给定一个序列的和,问符合条件的序列最短长度是多少? 思路: 序列中一定包含1 那么就可以由1进行构造 想要长度…...

模拟电路笔记

Chapter 4 diodes Ideal Diode two modes on and offmode 1 reverse bias open cktmode 2 forward bias short cktshould be desing to limitcurrent flow & voltage across Rctifier ckt concert AC waves inot DC Assumed States Method Assume the diodes to...

springBoot 一键启动多个服务

我们启动springboot服务时经常一个一个去启动,这样操作显然是非常麻烦的,那么怎样让他一键启动多个服务呢? 第一步:打开设置 第二步:选择Compound 第三步:选择你要启动的服务 第四步:点击就可以一键启动了...

Linux基本命令

文章目录第一章Linux基础一、基本命令1.ls命令2.cd命令3.文件操作二、用户解读1.用户权限三、linux的基本操作1.软件介绍2.用户操作3.组3.1权限控制4.文件权限控制4.1权限设置5.vim的使用——一开始是命令模式6.寄存器7.find命令格式8.管道符—— |xargs9.grep命令第一章Linux基…...

java企业固定资产管理系统ssm框架

本企业固定资产管理系统SSM(SpringSpringMVCMyBatis)框架开发,主要包括系统用户管理模块、人员管理模块、资产管理、资产领用管理、维修管理、登录模块、和退出模块等多个模块。 本人通过开发此系统,在提高自己编程水平的同时,也对软件开发的过程和开发流…...

python数据类型的性能分析

python数据类型的性能分析 本文主要对Python两种内置数据类型list 和 dict上各种操作的大O数量级进行分析 list与dict的比较 list类型各种操作(interface)的实现方 法有很多,如何选择具体哪种实现方法? 总的方案就是&#xff0…...

docker+k8s 报错

dockerk8s报错 问题点:docker容器中或者k8s的pod中执行systemctl相关后台服务 报错信息:Failed to get D-Bus connection: Operation not permitted解决办法 docker:运行容器添加参数–privilegedtrue /sbin/init docker run -tid --name…...

Redis集群的搭建和Redis的使用

Redis集群的搭建和Redis的使用 一.Redis的简介和用途 简介 Redis是一个高性能的key-value数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行…...

51单片机入门之按键

对于单片机,单片机上电后默认为高电平,所以对于按键,按下去之后变为低电平(因为按键接地了),未按下去则为高电平,而因为单片机不仅可以改变引脚电平,也可以读取引脚电平,…...

刚换了Mac本这些快捷键你知道吗?

Mac中主要有四个修饰键,分别是Command,Control,Option和Shift。 这四个键分别有自己的图案,他们经常出现在Mac应用程序中的菜单栏里,方便你随时学习新的快捷键。 MAC 键盘快捷键符号图例 keyboard-shortcuts-symbol-l…...

秃头程序员必备Java面试手册!带你跳槽涨薪走上人生巅峰,迎娶白富美

都说程序员工资高、待遇好,改变无数程序员职业生涯的金九银十快来了,你的小目标是什么 30K、40K,还是 16 新的 20K?作为一名 Java 开发工程师,当能力可以满足公司业务需求时,拿到超预期的奖励 Offer 并不算…...

Coin Change(C++零钱兑换)

&#xff08;1&#xff09;dp&#xff0c;完全平方数类似 class Solution { public:int coinChange(vector<int>& coins, int amount) {int maxsamount1;int ncoins.size();vector<int> v(amount1,maxs);v[0]0;for(int i1;i<amount1;i) {for(int j0;j<n…...

国基北盛—云计算私有云iaas(2.4)平台搭建

1.基本环境配置详情&#xff1a; 2.虚拟机配置&#xff1a; Controller&#xff1a; 内存 6G 处理器4个 硬盘&#xff08;sda&#xff09;100G 网卡1&#xff08;仅主机192.168.100.10&#xff09; 网卡2&#xff08;NAT 192.168.200.10&#xff09; Compute&#xff1a; 内…...

pydub 安装 win10

在 anaconda 环境下&#xff0c;pip install pydub&#xff0c;检测是否安装成功出现错误&#xff1a; RuntimeWarning: Couldnt find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn("Couldnt find ffmpeg or avconv - defaulting to ffmpeg, but m…...

rsync+sersync实现两台web服务器的实时同步

rsyncsersync实现两台web服务器的实时同步一.环境准备主服务器:从服务器:二.分别安装配置rsync,并测试手动免密备份这里大概讲一下rsync的工作方式和原理从服务器(备份端):主服务器(数据端)三.sersync的安装和配置主web端(数据端)从web服务器(备份端)附件--编辑监控脚本主服务器…...

C++中指针前还加是什么意思

C中指针前还加&是什么意思 区分使用位置&#xff0c;有两种可能&#xff1a; 1 在定义时使用&#xff0c;如 int *a; int * &p a; 这种是C中的引用&#xff0c;p本身不占用内存空间&#xff0c;只是a的一个别名&#xff0c;对p的访问完全等同于对a的访问。 2 在非定义…...

Android FileProvider 应用间共享媒体资源

先参考以下两个文档&#xff1a; 官网介绍&#xff1a;https://developer.android.google.cn/training/data-storage/use-cases TX 介绍&#xff1a;https://developers.weixin.qq.com/community/develop/doc/0004886026c1a8402d2a040ee5b401 然后基于以上的文档做一个例子介…...

CSS 基础教程:CSS 语法

CSS 语法 CSS 规则集&#xff08;rule-set&#xff09;由选择器和声明块组成&#xff1a; 选择器指向您需要设置样式的 HTML 元素。声明块包含一条或多条用分号分隔的声明。每条声明都包含一个 CSS 属性名称和一个值&#xff0c;以冒号分隔。多条 CSS 声明用分号分隔&#xff0…...

Python面向对象封装案例——士兵突击

面向对象封装案例 II 目标 士兵突击案例身份运算符 封装 封装 是面向对象编程的一大特点面向对象编程的 第一步 —— 将 属性 和 方法 封装 到一个抽象的 类 中外界 使用 类 创建 对象&#xff0c;然后 让对象调用方法对象方法的细节 都被 封装 在 类的内部 一个对象的 属性…...

PAT (乙级)1014 福尔摩斯的约会 (20 分)C语言

大侦探福尔摩斯接到一张奇怪的字条&#xff1a;我们约会吧&#xff01; 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm。大侦探很快就明白了&#xff0c;字条上奇怪的乱码实际上就是约会的时间星期四 14:04&#xff0c;因为前面两字符串中第 1 对相同的大写英…...

【深度学习与图神经网络核心技术实践应用高级研修班-Day4】图像标题生成-image_caption_generation(encoder-decoder)

图像标题生成1. 概述1.1 图像标题生成1.2 CNN1.3 Decoder1.4 与文本翻译模型对比2. 模型原理2.1 图像标题生成模型2.2 学习目标、损失函数3. 代码实现3.1 数据集3.2 数据预处理3.3 构建模型4. 实验结果4.1 损失曲线4.2 测试模型5. 参考文献1. 概述 1.1 图像标题生成 图像标题…...

pydub 安装 win10

在 anaconda 环境下&#xff0c;pip install pydub&#xff0c;检测是否安装成功出现错误&#xff1a; RuntimeWarning: Couldnt find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn("Couldnt find ffmpeg or avconv - defaulting to ffmpeg, but m…...

算法刷题计划一----数据结构2-6(leetCode)

415. 字符串相加 给定两个字符串形式的非负整数 num1 和num2 &#xff0c;计算它们的和。 提示&#xff1a; num1 和num2 的长度都小于 5100 num1 和num2 都只包含数字 0-9 num1 和num2 都不包含任何前导零 你不能使用任何內建 BigInteger 库&#xff0c; 也不能直接将输入的…...

HTML(菜鸡视角)

heading <h> 标题 </h> 多级标题时&#xff1a;<h1> <h2>......级联 Paragraph <p> 段落内容 </p> Note&#xff01; <!-- 注释内容 --> Element <main> 主要内容 </main> image <img src&quo…...

剑指Offer14-剪绳子12

题目描述–剪绳子1 思路分析 首先要分析出怎么切分是最优方案&#xff0c;显然和一定时&#xff0c;分成相等的数的乘积最大。用简单的数学归纳的思想可以发现&#xff0c;4对应2*2&#xff0c;5对应2x3&#xff0c;6对应3x3&#xff0c;7对应3x2x2&#xff0c;8对应3x3x2&…...

能被5和6同时整除 并且每10个数一行 用python编程 记录

2021-8-23 题列出为100到1000之间能同时被5和6整除的数&#xff0c;并且10个数为一列 接触该题 编写了下面的代码 下面展示一些 内联代码片。 for i in range(100, 1001):if i % 5 0 and i % 6 0:print(i, end" ")结果是&#xff1a; ** 120 150 180 210 240 270…...

解决国内下载vscode慢的方法

VSCO的的下载地址&#xff1a; https://code.visualstudio.com/Download 下载也太慢了 解决办法&#xff1a; 复制链接到新的窗口&#xff0c;将圈起来的地方改为国内镜像地址&#xff1a;vscode.cdn.azure.cn 然后几秒就下载好啦...

RobotFramework-RIDE简单使用

RobotFramework-RIDE简单使用 准备工作 环境准备&#xff08;Python 3.7.5&#xff0c;robotframework 4.1&#xff0c;robotframework-ride1.7.4.2&#xff09; 1&#xff09;pip install robotframework-ride&#xff08;根据本机Python和RobotFramework安装适配版本&#…...

dbc2000 注册机|dbc2000 注册码注册机下载

点击下载来源&#xff1a;dbc2000 注册机 dbc2000 注册机是同名源程序软件的注册机软件&#xff0c;该源程序软件是一款应用于数据库搭建以及数据写入的数据库架设工具&#xff0c;它拥有强大的数据写入功能&#xff0c;在作为应用程序使用时&#xff0c;它不仅可以充当数据属性…...

秋招面经第八弹:网易二面-数据开发工程师

秋招第八弹&#xff1a;网易二面-数据开发工程师 写在最前&#xff1a;秋招以来一直在冲&#xff0c;因为事情比较多&#xff0c;对于笔试面试一直没有复盘&#xff0c;现在靠仅存的记忆把面试的一些问题记录下来&#xff0c;尽可能记录出能回忆到的问题&#xff0c;但可能记的…...

安卓课程格子APP

https://download.csdn.net/download/weixin_57836618/73810452 功能演示&#xff1a; 查看所有课程 点击主页面空白处即可添加课程 添加课程之后查看课程 查看双周课程 查看单周课程 6.查看课程详情...

强化学习——格子世界

强化学习——格子世界 项目源码地址&#xff1a;https://gitee.com/infiniteStars/machine-learning-experiment 1. 实验内容 2. 实验代码 import numpy as np import matplotlib.pyplot as plt from matplotlib.table import Table from xml.dom.minidom import Document #手…...

华为机试 - 跳格子游戏

目录 题目描述 输入描述 输出描述 用例 题目解析 算法源码 题目描述 地上共有N个格子&#xff0c;你需要跳完地上所有的格子&#xff0c;但是格子间是有强依赖关系的&#xff0c;跳完前一个格子后&#xff0c;后续的格子才会被开启&#xff0c;格子间的依赖关系由多组st…...

php 爬课程表信息,Ruby爬取教务系统生成课程表

我为什么要虐自己最近觉得课程格子广告越来越多&#xff0c;乱七八糟的东西越来越多&#xff0c;完全失去了一开始的存在价值&#xff0c;并且没有电脑端app&#xff0c;想查看课程必须拿出手机&#xff0c;而我使用电脑频率要比手机高&#xff0c;所以才有了折腾的动力。于是我…...

android 课程表 ui,UICollectionViewLayout实现课程表布局

因为项目中有课程表的相关模块&#xff0c;第一时间想到用UICollectionView。然而后期的需求越来越复杂&#xff0c;每个格子需要展示的内容越来越多&#xff0c;所以不得不寻找合适的解决方案。最后发现自定义UICollectionViewLayout可以实现我的需求。先放效果图&#xff1a;…...

Android自定义View课程表,Android 自定义View课程表表格

自己闲下来时间写的一个课表控件使用的自定义LinearLayout 里面View都是用代码实现的 最终效果如下图 写的可能有问题希望多多指点创建一个自定义LinearLayout 控件用来装载课程的信息和课程的周数 和节数大概的布局三这样的根据上面的看来觉得总体布局我分了两个 上面的星期是…...

java课程设计设计_java课程设计

1. 团队课程设计博客链接https://www.cnblogs.com/choco1ate/p/12172223.html2.本组课题及本人任务本组课题&#xff1a;泡泡堂(炸弹人)游戏本人任务&#xff1a;Box类(游戏地图中的每个方格)Bomb类(游戏过程中的)游戏玩家输赢信息的文件储存3.需求分析Box类&#xff1a;该类为…...

《课程格子》的一个笔试题目

题目如下&#xff0c;感觉很适合喜欢琢磨的程序员&#xff0c;也是考验你编码风格的时候。 Lets make a tower defense game&#xff08;塔防游戏):1. You have 1 tower, with H health and D dps(damage per second).2. There are n attackers, each with h_i health and d_i …...

Android仿照超级课程表 or 课程格子 一键提取课表功能(方正系统)

参考文章http://blog.csdn.net/sbsujjbcy ,本文仿照‘ 安卓弟 提供的android 项目实战——打造超级课程表一键提取课表功能文章&#xff0c;对他的代码进行了修改和补充&#xff0c;为什么要修改呢&#xff1f;原因是安卓弟的那个源码版本过于老旧&#xff0c;很多方法已经过…...

自定义view - 收藏集 - 掘金

Android 从 0 开始自定义控件之 View 的 draw 过程 &#xff08;九&#xff09; - Android - 掘金转载请标明出处&#xff1a; http://blog.csdn.net/airsaid/... 本文出自&#xff1a;周游的博客 ... Andriod 从 0 开始自定义控件之 View 的 layout 过程 &#xff08;八&#…...

aardio - 【库】内存画板 paint

“内存画板” 与 “简单画板” 功能类似。 之所以做这个版本&#xff0c;是因为其与简单画板功能倾向不同&#xff1a; 画 板依赖plus控件可在plus绘图可用鼠标绘图小海龟备 注内存画板 paint√√主打内存绘图简单画板 paintEx√√√√主打plus绘图 1、重新优化了各项功能函…...

项目质量管理:敏捷团队入门指南

什么是项目质量管理&#xff1f; 质量是衡量一个项目好坏的标准。质量越好&#xff0c;项目就越好。质量管理是指维持标准质量。质量管理是项目管理的领域&#xff0c;是指在项目生命周期中对质量的维护。 “从概念到工作的交付方面&#xff0c;对项目所有阶段的质量进行规划…...

物联网(java版本)臻识摄像头+本地实时显示视频

部分代码显示 package com.xdnnaovideo.videoservice.listenermessage;import com.google.gson.Gson; import com.xdnnaovideo.videoservice.entity.AddAndUpdateRtspVo; import com.xdnnaovideo.videoservice.entity.AjaxResult; import com.xdnnaovideo.videoservice.rtsp.M…...

华夏相机/臻识相机车牌识别器同LED屏幕语音对接以及javaDemo

上篇文章说过在本地买的华夏相机T83因为当地的销售人员只懂安装&#xff0c;一点技术支持也给不了&#xff0c;导致语音/屏幕 均不能实现自己想要的功能&#xff08;自定义修改文字&#xff0c;语音播放余额等&#xff09;&#xff0c;经过自己进一步的研究发现&#xff0c;这个…...

java调用 火眼臻睛,火眼臻睛车牌识别SDK评测

【CPS中安网 cps.com.cn】CPS LAB总评:用专业角度解读产品--CPS评测中心对火眼臻睛车牌识别SDK进行了全面评测,火眼臻睛车牌识别SDK在综合识别率、车牌定位成功率、大角度下的识别率、夜间环境下的识别率、极端环境下的识别率、支持的最小车牌像素宽度等测试表现,都位于行业前列…...

php对接臻识摄像机

php对接臻识摄像机前言一、下载地址前言 臻识摄像机配置&#xff0c;我就不多说了&#xff0c;我只说重点部分&#xff0c;回复接口返回的485数据&#xff08;估计其他人叫加密数据&#xff09; 一、下载地址 直接下载文件...

心跳与轮询的区别

心跳与轮询的区别轮询心跳主机在检查与从机之间的连接&#xff08;判断与从机之间的连接是否断开&#xff09;时&#xff0c;一般有心跳与轮询这两种方式。这两个方式都需要主机定时逐个查询从机的状态&#xff0c;但它们查询的策略有所不同。 轮询 在轮询方式中&#xff0c;主…...

臻识TCP摄像头 SDK交叉编译

修改arm_make.cmake文件 修改后的文件内容&#xff1a; # CMake toolchain file for building ARM software on OI environmentinclude(CMakeForceCompiler) # this one is important SET(CMAKE_SYSTEM_NAME Linux) set( CMAKE_SYSTEM_PROCESSOR arm ) #this one not so much…...