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

上饶建设局网站购物网站建设款流程

上饶建设局网站,购物网站建设款流程,Wordpress实现首页特效,有哪些做短租的网站在MySQL-InnoDB行格式浅析中#xff0c;们简单提了一下 页 的概念#xff0c;它是 InnoDB 管理存储空间的基本单位#xff0c;一个页的大小一般是 16KB 。 InnoDB 为了不同的目的而设计了许多种不同类型的 页#xff1a; 存放表空间头部信息的页存放 Insert Buffer信息的…在MySQL-InnoDB行格式浅析中们简单提了一下 页 的概念它是 InnoDB 管理存储空间的基本单位一个页的大小一般是 16KB 。 InnoDB 为了不同的目的而设计了许多种不同类型的 页 存放表空间头部信息的页存放 Insert Buffer信息的页存放 INODE 信息的页存放 undo 日志信息的页存放 索引 INDEX 页即存放表中记录的页称作数据页 数据页 数据页代表的这块 16KB 大小的存储空间可以被划分为多个部分不同部分有不同的功能各个部分如图所示 InnoDB 数据页的存储空间大致被划分成了 7 个部分有的部分占用的字节数是确定的有的部分占用的字节数是不确定的。 File Header (38字节) File Header是文件头部保存页的一些通用信息。 不同类型的页都会以 File Header 作为第一个组成部分它描述了一些针对各种页都通用的一些信息比方说这个页的编号是多少它的上一个页、下一个页是谁等。 名称占用空间大小描述FIL_PAGE_SPACE_OR_CHKSUM4 字节页的校验和checksum值FIL_PAGE_OFFSET4 字节页号FIL_PAGE_PREV4 字节上一个页的页号FIL_PAGE_NEXT4 字节下一个页的页号FIL_PAGE_LSN8 字节页面被最后修改时对应的日志序列位置英文名是Log Sequence NumberFIL_PAGE_TYPE2 字节该页的类型FIL_PAGE_FILE_FLUSH_LSN8 字节仅在系统表空间的一个页中定义代表文件至少被刷新到了对应的LSN值FIL_PAGE_ARCH_LOG_NO_OR_SPACE_ID4 字节页属于哪个表空间 Page Header(56字节) Page Header是页面头部数据页专有的一些信息。 为了能得到一个数据页中存储的记录的状态信息比如本页中已经存储了多少条记录第一条记录的地址是什么页目录中存储了多少个槽等特意在页中定义了一个叫 Page Header 的部分它是页 结构的第二部分这个部分占用固定的 56 个字节专门存储各种状态信息。 名称占用空间大小描述PAGE_N_DIR_SLOTS2 字节在页目录中的槽数量PAGE_HEAP_TOP2 字节还未使用的空间最小地址也就是说从该地址之后就是 Free SpacePAGE_N_HEAP2 字节本页中的记录的数量包括最小和最大记录以及标记为删除的记录PAGE_FREE2 字节第一个已经标记为删除的记录地址各个已删除的记录通过 next_record 也会组成一个单链表这个单链表中的记录可以被重新利用PAGE_GARBAGE2 字节已删除记录占用的字节数PAGE_LAST_INSERT2 字节最后插入记录的位置PAGE_DIRECTION2 字节记录插入的方向PAGE_N_DIRECTION2 字节一个方向连续插入的记录数量PAGE_N_RECS2 字节该页中记录的数量不包括最小和最大记录以及被标记为删除的记录PAGE_MAX_TRX_ID8 字节修改当前页的最大事务ID该值仅在二级索引中定义PAGE_LEVEL2 字节当前页在B树中所处的层级PAGE_INDEX_ID8 字节索引ID表示当前页属于哪个索引PAGE_BTR_SEG_LEAF10 字节B树叶子段的头部信息仅在B树的Root页定义PAGE_BTR_SEG_TOP10 字节B树非叶子段的头部信息仅在B树的Root页定义 Infimum supremum(26字节) Infimum Supremum是最小记录和最大记录两个虚拟的行记录。 两个虚拟的行记录也是使用行格式row_format存储。 两个虚拟的行记录不是我们自己定义的记录所以它们并不存放在 页 的 User Records 部分他们被单独放在一个称为 Infimum Supremum 的部分。 在行格式.记录头信息.heap_no值为 0 和 1一个代表 最小记录 一个代表 最大记录。 行格式.记录头信息.record_type取值2或者32 表示最小记录 3 表示最大记录 User Records (大小不确定) User Records是用户记录实际存储的行记录内容。 行格式.记录头信息.record_type取值00 表示普通记录 存储的记录会按照我们指定的 行格式 存储到 User Records 部分。 开始生成页的时候其实并没有 User Records 这个部分每当我们插入一条记录都会从 Free Space 部分也就是尚未使用的存储空间中申请一个记录大小的空间划分到 User Records 部分当 Free Space 部分的空间全部被 User Records 部分替代掉之后也就意味着这个页使用完了如果还有新的记录插入的话就需要去申请新的页。 Free Space (大小不确定) Free Space是空闲空间页中尚未使用的空间。 Page Directory(大小不确定) Page Directory是页面目录页中的某些记录的相对位置。 Page Directory类似书的目录作用是快速查找某些记录。 Page Directory制作过程 将所有正常的记录包括最大和最小记录不包括标记为已删除的记录划分为几个组。每个组的最后一条记录也就是组内最大的那条记录的头信息中的 n_owned 属性表示该记录拥有多少条记录也就是该组内共有几条记录。将每个组的最后一条记录的地址偏移量单独提取出来按顺序存储到 Page Directory 也就是 页目录 。页面目录中的这些地址偏移量被称为 槽 英文名 Slot 所以这个页面目录就是由 槽 组成的。 InnoDB 会把数据分成多个组第一组中只有一个最小记录其他组由4~5条记录组成看下边的示意图 最小记录的 n_owned 值为 1 这就代表着以最小记录结尾的这个分组中只有 1 条记录也就是最小记录本身。 最大记录的 n_owned 值为 5 这就代表着以最大记录结尾的这个分组中只有 5 条记录包括最大记录本身还有我们自己插入的 4 条记录。 如何使用页目录 中查找记录 因为各个槽代表的记录的主键值都是从小到大排序的所以我们可以使用 二分法 来进行快速查找。 4个槽的编号分别是 0 、 1 、 2 、 3 、 4 所以初始情况下最低的槽就是 low0 最高的槽就是 high4 。例如找主键值为 6 的记录过程是这样的 计算中间槽的位置 (04)/22 所以查看 槽2 对应记录的主键值为 8 又因为 8 6 所以设置high2 low 保持不变。重新计算中间槽的位置 (02)/21 所以查看 槽1 对应的主键值为 4 又因为 4 6 所以设置low1 high 保持不变。因为 high - low 的值为1所以确定主键值为 5 的记录在 槽2 对应的组中。此刻我们需要找到 槽2 中主键值最小的那条记录然后沿着单向链表遍历 槽2 中的记录。但是我们前边又说过每个槽对应的记录都是该组中主键值最大的记录这里 槽2 对应的记录是主键值为 8 的记录怎么定位一个组中最小的记录呢别忘了各个槽都是挨着的我们可以很轻易的拿到 槽1 对应的记录主键值为 4 该条记录的下一条记录就是 槽2 中主键值最小的记录该记录的主键值为 5 。所以我们可以从这条主键值为 5 的记录出发遍历 槽2 中的各条记录直到找到主键值为 6 的那条记录即可。由于一个组中包含的记录条数只能是1~8条所以遍历一个组中的记录的代价是很小的。 File Tailer (8字节) File Trailer是文件尾部校验页是否完整。 File Trailer由 8 个字节组成可以分成2个小部分 前4个字节代表页的校验和 这个部分是和 File Header 中的校验和相对应的。每当一个页面在内存中修改了在同步之前就要把它的校验和算出来因为 File Header 在页面的前边所以校验和会被首先同步到磁盘当完全写完时校验和也会被写到页的尾部如果完全同步成功则页的首部和尾部的校验和应该是一致的。如果写了一半儿断电了那么在 File Header 中的校验和就代表着已经修改过的页而在 File Trialer 中的校验和代表着原先的页二者不同则意味着同步中间出了错。后4个字节代表页面被最后修改时对应的日志序列位置LSN 这个部分也是为了校验页的完整性的。 数据页增删改 数据页里面 User Records并不是一直在同一个数据页。 在对页中的记录进行增删改操作的过程中我们必须通过一些诸如记录移动的操作来始终保证下一个数据页中用户记录的主键值必须大于上一个页中用户记录的主键值。这个过程我们也可以称为 页分裂 。
http://www.eeditor.cn/news/122525/

相关文章:

  • 七台河网站网站建设wordpress的模板目录在哪里
  • 个人网站欣赏的网站简要说明网站制作的基本步骤
  • 做网站 建站saas建站平台
  • 小型网站建设价格低里水网站开发
  • 舟山网站开发免费设计企业logo
  • 手机网站做安卓客户端网站建设推广公司哪家权威
  • 东莞网站建设 烤活鱼桂林做手机网站设计
  • wordpress迁站到阿里云人才网网站开发手册
  • 雅安公司做网站wordpress 优势
  • dede 网站改宽屏代码seo 优化一般包括哪些内容
  • 网站建设一定要买数据盘吗设计做的网站哪些好
  • ps做网站首页规范尺寸腾讯云一键wordpress
  • 鞍山做网站比较好的公司酒泉网站建设公司
  • 广州网站建设智能 乐云践新织梦手机网站
  • 网站建设实训总结及体会微信网站建设教程
  • 网站开发微信支付详细教程昆山建设工程安监站网站
  • 西宁网站制作费用是多少动感网站模板
  • 描述网站开发的广告词西安哪里有做网站的
  • 六盘水网站设计做摄影的网站知乎
  • 网站开发一个多少钱啊如何做seo
  • 交通网站建设方案青海省住房和城乡建设厅的官方网站
  • 网站建设需求报价明细常熟市住房和城乡建设部网站
  • 门户网站要求wordpress 段落 两格
  • 浙江网站建设上市公司网站建设服务公司宣传语言
  • 铜陵商城网站建设广州门户网站建设方案
  • 开发和发布网站的主要流程网站怎么做限时抢购
  • 做网站预付款 怎么做账服务外包的三种形式
  • 如何对现有的网站改版上海网站建站建设
  • 怎么自己制作网站天津自贸区建设局网站
  • 深圳网站建设合同范本google play官网