标签:http 生成 采集 clu mysq 索引 字符串 移动 数据表
知乎采集:
MyISAM/InnoDB默认用B-Tree索引(可理解为"排好序的快速查找结构")。
InnoDB中,主索引文件上直接存放该行数据,称为聚簇索引。次索引指向对主键的引用;
MyISAM中,主索引和次索引,都指向物理行(磁盘位置);
注意: 对InnoDB来说
1: 主键索引既存储索引值,又在叶子中存储行的数据;
2: 如果没有定义主键,则会使用非空的UNIQUE键做主键 ; 如果没有非空的UNIQUE键,则系统生成一个6字节的rowid做主键;
聚簇索引中,N行形成一个页。如果碰到不规则数据插入时,会造成频繁的页分裂(因为索引要排好序),插入速度比较慢。所以聚簇索引的主键值应尽量是连续增长的值,而不是随机值(不要用随机字符串或UUID),否则会造成大量的页分裂与页移动。
故对于InnoDB的主键,尽量用整型,而且是递增的整型。这样在存储/查询上都是非常高效的。设计 MySQL 数据表的时候一般都有一列为自增 ID,这样设计原因是什么,有什么好处?
标签:http 生成 采集 clu mysq 索引 字符串 移动 数据表
原文地址:http://www.cnblogs.com/zhhtao/p/7687361.html