代码之家  ›  专栏  ›  技术社区  ›  Ryanqy

如何理解主键的上端?

  •  1
  • Ryanqy  · 技术社区  · 7 年前

    High Performance MySQL &燃气轮机;第177页,有一个关于“主键顺序更差时”的提示

    对于高并发性工作负载,按主键顺序插入实际上可以在InnoDB中创建争用点。主键的上端是一个热点。因为所有插入都发生在那里,所以并发插入可能会争夺下一个密钥锁。另一个热点是自动增量锁定机构;如果您在这方面遇到问题,您可以重新设计表或应用程序,或者配置innodb_autoinc_lock_模式。如果您的服务器版本不支持innodb_auto inc_lock_模式,您可以升级到较新版本的innodb,以更好地执行此特定工作负载。

    如何理解概念 主键的上端

    1 回复  |  直到 7 年前
        1
  •  1
  •   Lightness Races in Orbit    7 年前

    这本书的意思是“表中使用的主键的当前最大值”。

    这意味着,如果继续以主键升序插入,那么可能会影响性能,因为(在自动递增的情况下)“此主键的下一个值”必须以原子方式生成和使用,并且(在其他情况下)存在一些实现因素使其速度稍慢。

    1, 2, 3, 4 ,则在“上端”插入意味着插入主键值大于 4