详解数仓中sequence的应用场景及优化

💡 原文中文,约6600字,阅读约需16分钟。
📝

内容提要

本文介绍了GaussDB(DWS)中sequence的使用场景及如何通过调大sequence的cache值来提高性能,当sequence的cache值较小时,会导致性能瓶颈。

🎯

关键要点

  • 本文介绍了GaussDB(DWS)中sequence的使用场景及性能优化方法。
  • sequence是产生唯一整数的数据库对象,常用作主键。
  • 创建sequence时会生成同名的元数据表,记录相关信息。
  • GTM负责生成和维护全局事务ID和sequence等信息。
  • 增大sequence的cache值可以减少CN/DN与GTM的通信次数,提高性能。
  • GaussDB(DWS)中有两种创建sequence的方法:直接创建和使用serial类型。
  • sequence常用于数据迁移时生成主键,处理方式有insert和copy。
  • 在insert场景下,nextval可以下推到DN执行,提高效率。
  • 在copy场景下,CN频繁与GTM建联可能导致性能瓶颈。
  • 通过调大sequence的cache值可以优化copy场景的性能。
  • 当前GaussDB(DWS)不支持通过alter sequence修改cache值,需要通过删除和重建sequence来实现。
➡️

继续阅读