zoukankan      html  css  js  c++  java
  • 14.8.1 Overview of InnoDB Row Storage

    14.8 InnoDB Row Storage and Row Formats InnoDB 行存储和行格式

    14.8.1 Overview of InnoDB Row Storage
    14.8.2 Specifying the Row Format for a Table
    14.8.3 DYNAMIC and COMPRESSED Row Formats
    14.8.4 COMPACT and REDUNDANT Row Formats

    本章节讨论 InnoDB 特性 比如表压缩, 长的可变长度列的值的页面,

    大的index key 前缀(innodb_large_prefix) 是有CREATE TABLE 语句的ROW_FORMAT 控制。

    它也讨论考虑选择正确的格式,在MySQL 发布版本之间row formats 的兼容。

    14.8.1 Overview of InnoDB Row Storage

    rows行的存储相关的列影响了查询和DML操作的性能。随着越来越多的行放进一个单独的磁盘页面,

    查询和index 查找会变的更快,更少的cache memory 被需要在InnoDB Buffer pool,

    更少的I/O是需要写出更新的值

    数据在每个InnoDB 表被分成pages,pages 组成 每个表是被安排在一个tree data 结构叫做 一个B-tree index.

    表数据和secondary indexes 都使用这种类型的结构。

    B-tree index 代表整个表称为 clustered index, 它是被组织根据primary key 列。

    index 数据结构的节点包含所有列的值 (对于clustered index) 或者 index columes和主键列(对于secondary indexes).

    可变长度列是这个规则的例外, 比如BLOB 和VARCHAR 是太长了来填满一个B-tree页 是存储在单独的分配的磁盘页

    被称为溢出列。 这些列的值是存储在溢出页的单链表中,

    并且每个列有它自己的一个或多个溢出页的列表。在某些情况下,所有或长列值的前缀是存储在B-tree里,

    为了避免浪费存储空间和消除需要读取一个单独的页。

    下面的章节描述如何配置InnoDB 表的row format 来控制可变长度列值是如何存储的。

    Row format 配置也决定了表压缩特性和大index key 功能的可用性。

  • 相关阅读:
    洛谷P1421 小玉买文具
    洛谷P1035 级数求和
    洛谷 P2337 【[SCOI2012]喵星人的入侵】
    洛谷P1002 过河卒
    洛谷 P4073 [WC2013]平面图
    洛谷 P4705 玩游戏
    python3.7-初学篇-06
    python3.7-初学篇-04
    python3.7-初学篇-03
    python3.7-初学篇-02
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351163.html
Copyright © 2011-2022 走看看