0
1
0
0
专栏/.../

星辰资讯 | TiDB v7.5.4 & v8.4.0 发版

 ShawnYan  发表于  2024-11-13

TiDB 8.4.0 DMR 发版

11 月 11 日,TiDB 8.4.0 版本发布,以下是该版本的一些关键特性和改进:

性能

  1. 分区表全局索引成为正式功能:提高检索非分区列的效率,消除了唯一键必须包含分区键的限制,扩展了 TiDB 分区表的使用场景。
  2. TiDB 并行获取 TSO:在高并发场景下,并行获取 TSO 能有效降低等待获取 TSO 的时间,提升集群的吞吐。
  3. 提升缓存表的查询性能:优化了缓存表索引扫描的查询性能,在部分场景下可提升 5.4 倍。
  4. 实例级执行计划缓存(实验特性):允许同一个 TiDB 实例的所有会话共享执行计划缓存,减少 SQL 编译时间,提升 OLTP 性能和吞吐,同时更好地控制内存使用,提升数据库稳定性。

稳定性

  1. Runaway Queries 支持更多触发条件,并能够切换资源组:提供了有效的手段来降低突发的 SQL 性能问题对系统产生的影响。
  2. 支持为资源管控的后台任务设置资源使用上限:针对不同业务系统的需求,控制后台任务的消耗,保证在线业务的服务质量。
  3. 自动统计信息收集任务支持并发:通过充分利用系统资源,提高统计信息收集效率,减少手动调优,并确保集群性能稳定。

高可用

  1. TiProxy 流量捕获和回放(实验特性):在进行集群升级、迁移或部署变更等重要操作之前,使用 TiProxy 捕获 TiDB 生产集群的真实负载,并在测试的目标集群中重现该工作负载,从而验证性能,确保变更成功。

SQL 功能

  1. 支持向量搜索功能(实验特性):向量搜索是一种基于数据语义的搜索方法,可以提供更相关的搜索结果,可用于检索增强生成、语义搜索、推荐系统等多种场景。

这是 TiDB 社区版首个支持 Vector Search 的版本,该功能自今年 4 月在 TiDB Cloud Serverless 上已支持,目前 TiDB Cloud Serverless 所有 Regions 均支持 TiDB Vector Search (beta)。

数据库管理、可观测性和安全

  • 在内存表中显示 TiKV 和 TiDB 的 CPU 时间,提升诊断效率。
  • 按表或数据库维度聚合 TiKV 消耗的 CPU 时间,提升热点问题和 CPU 消耗问题的诊断效率。
  • 支持对开启了 IMDSv2 服务的 TiKV 实例做备份。
  • BR 支持在上传到备份存储之前对日志备份数据进行加密(实验特性)。

移除功能

  • TiDB Binlog 在 v8.4.0 中被移除。请在升级前切换到 TiCDC。

改进提升和错误修复

  • TiDB、TiKV、PD、TiFlash 和工具的多项改进提升,并修复了多个组件中的错误。

以上是 TiDB 8.4.0 DMR 版本发布的主要内容,更多内容参阅官方文档:

https://docs.pingcap.com/zh/tidb/v8.4/release-8.4.0

相关资料

10 月 15 日,TiDB v7.5.4 版本发布。

如果你还在使用上古版本,建议升级到最新 LTS 版本,如:TiDB v7.1.5, TiDB v7.5.4, TiDB v8.1.1。

TiDB 7.5.4 发行说明

兼容性变更

  • 通过 TiDB HTTP API 获取 DDL 历史任务时,默认获取任务数量的上限为 2048,以避免历史任务数量过多导致 OOM 的问题 #55711 @joccau

改进提升

  • TiDB

    • EXPLAIN 语句支持应用 tidb_redact_log,并进一步优化了日志记录的处理逻辑 #54565 @hawkingrei
    • 优化 TiDB 慢查询的查询速度 #54630 @yibin87
  • TiKV

    • 优化存在大量 DELETE 版本时 RocksDB 的 compaction 触发机制,以加快磁盘空间回收 #17269 @AndreMouche
    • 减少 peer message channel 的内存使用 #16229 @Connor1996
    • 优化 TiKV 重启时由于需要等待应用之前的日志而造成访问延时抖动的情况,提升了 TiKV 的稳定性 #15874 @LykxSassinator
    • 优化 TiKV 的 DiskFull 检测使之与 RaftEngine 的配置项 spill-dir 兼容,确保该特性能够稳定运行 #17356 @LykxSassinator
  • TiFlash

    • 优化 LENGTH()ASCII() 函数执行效率 #9344 @xzhangxian1008
    • 降低 TiFlash 在开启 TLS 后因更新证书而导致 panic 的概率 #8535 @windtalker
    • 改进 JOIN 算子的取消机制,使得 JOIN 算子内部能及时响应取消请求 #9430 @windtalker
  • Tools

    • Backup & Restore (BR)

      • 在 TiKV 下载每个 SST 文件之前,新增对 TiKV 是否有足够磁盘空间的检查;如果空间不足,BR 会终止恢复并返回错误 #17224 @RidRisR
    • TiCDC

      • 当下游为 TiDB 且授予 SUPER 权限时,TiCDC 支持从下游数据库查询 ADD INDEX DDL 的执行状态,以避免某些情况下因重试执行 DDL 语句超时而导致数据同步失败 #10682 @CharlesCheung96

错误修复

该版本共修复错误 50 余项(TiDB 22, TiKV 6, PD 6, TiFlash 7, Tools 10)。

详情参阅官方文档:

https://docs.pingcap.com/zh/tidb/v7.5/release-7.5.4

一键升级到 TiDB v7.5.4

升级前注意事项

  1. 升级前建议先升级 TiUP 版本
[root@centos7 package]# tiup update --self
Updated successfully!
[root@centos7 package]# tiup -v
1.16.0 tiup
Go Version: go1.21.11
Git Ref: v1.16.0
GitHash: e543145831d44a863366ff8c379d25980730bbd1
  1. 跨版本升级前,建议仔细阅读官方文档

https://docs.pingcap.com/zh/tidb/stable/upgrade-tidb-using-tiup

  1. 参考其他社区资料

一键升级到 TiDB v7.5.4

将集群不停机升级到 v7.5.4

tiup cluster upgrade mytidb v7.5.4

升级完成

Upgraded cluster `mytidb` successfully

查看数据库版本

[root@centos7 ~]# tidb -e 'select tidb_version()\G'
Enter password:
*************************** 1. row ***************************
tidb_version(): Release Version: v7.5.4
Edition: Community
Git Commit Hash: 15a52d8b9c7eb373fa0b9b71a0ac346f652b7cdf
Git Branch: HEAD
UTC Build Time: 2024-10-12 08:23:42
GoVersion: go1.21.13
Race Enabled: false
Check Table Before Drop: false
Store: tikv

获取 DDL 历史任务

从 TiDB v7.5.4 开始,通过 TiDB HTTP API 获取 DDL 历史任务时,默认获取任务数量的上限为 2048。

[root@centos7 ~]# curl localhost:10080/ddl/history?limit=2049
ddl history limit must be greater than 0 and less than or equal to 2048[root@centos7 ~]#

之前的情况是获取全部 DDL 历史任务,如需获取更多历史任务可以使用参数 start_job_idlimit 分批次获取。

curl -s localhost:10080/ddl/history?start_job_id=4000 -d "limit=1024"

Have a nice day ~

0
1
0
0

版权声明:本文为 TiDB 社区用户原创文章,遵循 CC BY-NC-SA 4.0 版权协议,转载请附上原文出处链接和本声明。

评论
暂无评论