1. 为什么要设置主键 ?
毫无疑问的是,当对Mysql中的表设置了InnoDB存储引擎的时候,那么就需要对一列数据建立索引,方便快速查找,如果不设置主键的,Mysql会在表中逐列对比寻找无重复项的列作为逐渐,如果没有查找到,那么Mysql会在表中添加默认列作为主键。如果不设置主键列,那么Mysql会消耗大量的资源去寻找索引列或者是创建新的索引列,如果设置了索引列那么将极大的降低Mysql的资源消耗。
2. 为什么要采用整型的数据 ?
Mysql底层对数据查找的时候,会涉及到大量的对比操作,如果采用UUID的字符串模式,那么Mysql在对比过程中会消耗资源用于字符串中每个字符的对比,这样做将极大的消耗系统的性能。
2. 为什么要采用自增主键 ?
了解B + 树的节点存储机制的话,就一定会知道当某个节点的索引数量达到阈值的时候会分裂节点重新调整树的平衡。这样做对系统性能的消耗是相当不友好,在B + 树的叶子节点中,通过双向指针维护了一根将索引按照升序排列的双向链表,采用自增主键,新的索引将会被添加在链表的尾部,避免了B + 树的分裂所带来的系统消耗。