0 码力 |
          4369 页 |
          98.92 MB
          | 1 年前 3
 AUTO_INCREMENT 列属性 (GA) #38442 @tiancaiamao  TiDB v6.4.0 引入了 AUTO_INCREMENT 的 MySQL 兼容模式作为实验特性,通过中心化分配自增 ID,实现了自 增 ID 在所有 TiDB 实例上单调递增。使用该特性能够更容易地实现查询结果按自增 ID 排序。该功能在  v6.5.0 正式 GA。使用该功能的单表写入 TPS 预期超过 2 TiDB 的自增列既能保证唯一,也能保证在单个 TiDB server 中自增,使用AUTO_INCREMENT MySQL 兼容模式能 保证多个 TiDB server 中自增 ID,但不保证自动分配的值的连续性。不建议将缺省值和自定义值混用,若 混用可能会收到 Duplicated Error 的错误信息。  • TiDB 可通过 tidb_allow_remove_auto_inc 系统变量开启或者关闭允许移除列的 属性,移除该属性后不可恢复。  自增 ID 详情可参阅AUTO_INCREMENT。  注意:  若创建表时没有指定主键时,TiDB 会使用 _tidb_rowid 来标识行,该数值的分配会和自增列 (如果存在的话)共用一个分配器。如果指定了自增列为主键,则 TiDB 会用该列来标识行。因 此会有以下的示例情况:  mysql> CREATE TABLE t(id INT UNIQUE KEY AUTO_INCREMENT);
 0 码力 |
          4049 页 |
          94.00 MB
          | 1 年前 3
  DB Lightning 配置 参数。  • 对于设置了 AUTO_ID_CACHE=1 的表,TiDB 支持中心化分配自增 ID 服务。在之前的版本中,该服务的  “主”TiDB 节点在进程退出(如该 TiDB 节点重启)时会自动执行 forceRebase 操作,以确保自动分配的  ID 尽可能连续。然而,当设置过 AUTO_ID_CACHE=1 的表过多时,执行 forceRebase 会非常耗时,导致 会非常耗时,导致 TiDB 无法及时重启,甚至阻塞数据写入,影响系统可用性。因此,从 v8.1.0 起,TiDB 取消了 forceRebase 操 作,解决了上述问题,但会造成主备切换期间部分自动分配的 ID 出现不连续。  2.2.2.2 系统变量  变量名 修改类型 描述  tidb_auto �→ _ �→ analyze �→ _ratio  修改 取值范 围从  [0, �→ 18446744073709551615] @guo-shaoge  • Tools  – Backup & Restore (BR)  * 修复在包含 AUTO_RANDOM 列的联合聚簇索引中,BR 无法备份 AUTO_RANDOM ID 分配进度的问题  #52255 @Leavrth  * 修复在日志备份任务被暂停后,移除任务无法立即恢复 GC safepoint 的问题 #52082 @3pointer  * 修复在小概率情况下,由
 0 码力 |
          4807 页 |
          101.31 MB
          | 1 年前 3
  支持微服务模式(实验特性)#5766 @binshi-bing  从 v8.0.0 开始,PD 支持微服务模式。该模式可将 PD 的时间戳分配和集群调度功能拆分为以下微服务单 独部署,从而实现 PD 的性能扩展,解决大规模集群下 PD 的性能瓶颈问题。  – tso 微服务:为整个集群提供单调递增的时间戳分配。  – scheduling 微服务:为整个集群提供调度功能,包括但不限于负载均衡、热点处理、副本修复、副 本放置等。 象加入队列,逐个收集并更新。在之前的版本中,这些对象的收集顺序是随机的,可能导致更需要更 新的对象等待时间过长,从而引发潜在的数据库性能回退。  从 v8.0.0 开始,自动统计信息收集引入了优先级队列,根据多种条件动态地为对象分配优先级,确保更 有收集价值的对象优先被处理,比如新创建的索引、发生分区变更的分区表等。同时,TiDB 也会优先处 理那些健康度较低的表,将它们安排在队列的前端。这一改进优化了收集顺序的合理性,能减少一部 Region 算法支持自适应获取并发参数,提升恢复性能 #50701 @3pointer  55  * 在 br 的命令行帮助信息中显示 log 命令 #50927 @RidRisR  * 支持在恢复过程中提前分配好 Table ID,从而最大限度地复用 Table ID,提升恢复性能 #51736  @Leavrth  * 使用 BR 时,禁用 TiDB 内部的 GC memory limit tuner 功能,避免
 0 码力 |
          4805 页 |
          101.28 MB
          | 1 年前 3
  的查询响应时间,提升集群吞吐,减少执行计划突变的可能性,并保持集群性能的稳定。相比会话级 执行计划缓存,实例级执行计划缓存具有以下优势:  – 消除冗余,在相同的内存消耗下缓存更多执行计划。  – 在实例上分配固定大小的内存区域,更有效地限制内存使用。  在 v8.4.0 中,实例级执行计划缓存仅支持对查询的执行计划进行缓存,且默认关闭。你可以通过系统变 量tidb_enable_instance_plan_cache 下。该功能可以让你精细控制后台任务的资源占用,进一步提升集群稳定性。  更多信息,请参考用户文档。  • 优化资源组资源分配策略 #50831 @nolouch  TiDB 在 v8.4.0 部分调整了资源分配策略,更好地满足用户对资源管控的预期。  – 控制大查询在运行时的资源分配,避免超出资源组限额。配合 Runaway Queries 的 COOLDOWN 动作, 识别并降低大查询并发度,降低瞬时资源消耗。 在处理 ALTER DATABASE 语句时未设置默认数据库导致同步报错的问题 #11503  @lance6716  – TiDB Lightning  * 修复两个实例同时并行开始导入任务时,由于分配到的任务 ID 相同导致 TiDB Lightning 报  verify allocator base failed 错误的问题 #55384 @ei-sugimoto  2.2.9 贡献者  感谢来自
 0 码力 |
          5095 页 |
          104.54 MB
          | 10 月前 3
  的查询响应时间,提升集群吞吐,减少执行计划突变的可能性,并保持集群性能的稳定。相比会话级 执行计划缓存,实例级执行计划缓存具有以下优势:  – 消除冗余,在相同的内存消耗下缓存更多执行计划。  – 在实例上分配固定大小的内存区域,更有效地限制内存使用。  在 v8.4.0 中,实例级执行计划缓存仅支持对查询的执行计划进行缓存,且默认关闭。你可以通过系统变 量tidb_enable_instance_plan_cache 下。该功能可以让你精细控制后台任务的资源占用,进一步提升集群稳定性。  更多信息,请参考用户文档。  • 优化资源组资源分配策略 #50831 @nolouch  TiDB 在 v8.4.0 部分调整了资源分配策略,更好地满足用户对资源管控的预期。  – 控制大查询在运行时的资源分配,避免超出资源组限额。配合 Runaway Queries 的 COOLDOWN 动作, 识别并降低大查询并发度,降低瞬时资源消耗。 在处理 ALTER DATABASE 语句时未设置默认数据库导致同步报错的问题 #11503  @lance6716  – TiDB Lightning  * 修复两个实例同时并行开始导入任务时,由于分配到的任务 ID 相同导致 TiDB Lightning 报  verify allocator base failed 错误的问题 #55384 @ei-sugimoto  2.2.9 贡献者  感谢来自
 0 码力 |
          5072 页 |
          104.05 MB
          | 10 月前 3
  倍(实验特性)