写点什么

迈向企业级核心场景的 TiDB 5.0

  • 2021-04-19
  • 本文字数:2376 字

    阅读完需:约 8 分钟

迈向企业级核心场景的 TiDB 5.0

随着 2021 年春天的来临和 PingCAP 年满 6 周岁纪念日的到来,TiDB 5.0 迎来正式 GA。经过近一年紧锣密鼓的开发和打磨,TiDB 5.0 成为迈向企业级核心场景的里程碑版本:TiDB 5.0 的性能和稳定性得到显著提升,从而具备更强大的 OLTP 金融级核心场景的服务能力;在原有 HTAP 引擎 TiFlash 的基础上引入 MPP 架构,TiDB 使得众多企业的实时/交互式 BI 成为现实,为高成长企业和数字化创新场景提供了一栈式的数据服务底座,加速带动 HTAP 进入更多大型企业的数字化场景。


此外,TiDB 5.0 新增多项企业级特性,集成更丰富的大数据生态,提供更加简易的运维体验,帮助企业更高效地基于 TiDB 构建和扩展应用。秉持开源、开放、创新的发展路径,TiDB 将持续为企业构建“融合,简化,可靠”的分布式数据库平台。


高性能:多项性能指标实现突破


相比于 TiDB 4.0,TiDB 5.0 在性能方面取得了巨大的进步,通过提供聚簇索引异步提交事务TiFlash MPP 等功能, 在 Sysbench 和 TPC-C 等 OLTP 的基准测试中,获得 20% ~ 80% 的性能提升。基于 100 GB 数据量 TPC-H 查询的结果显示:TiDB 5.0 在同等资源下,MPP 引擎的总体性能是 Greenplum 6.15.0 与 Apache Spark 3.1.1 两到三倍之间,部分查询可达 8 倍性能差异。如下是在一些通用性能测试场景下面的数据:


配置信息


组件名称配置信息数量
PDm5.xlarge (AWS)3
TiDBc5.4xlarge (AWS)3
TiKVi3.4xlarge (AWS)3


负载信息


16 张表,每张表有 1000 万行数据。


性能数据







稳定性:衡量 TPC-C tpm-C 抖动的标准差值小于等于 2%


相比于 TiDB 4.0,TiDB 5.0 在稳定性上面取得了巨大的进步。通过优化 TiDB 调度过程中对 I/O、网络、CPU、内存等资源的占用,大幅减少 QPS 和延时因为资源被抢占而出现的性能抖动问题,在 TPC-C OLTP 的基准测试中,衡量 TPC-C tpmC 抖动标准差的值小于等于 2%。


配置信息


Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz 40Core 189GB Memory 3TB SSD



易用性:更精准,更高效,更全面


更精准的性能排查


用户在排查 SQL 语句性能问题时,需要详细的信息来判断原因。TiDB 5.0 通过 EXPLAIN 可查看日志、监控等详细信息,帮助用户提升排查问题的效率。


更高效的集群运维


在 TiDB 5.0 中,TiUP 支持一键式环境检查并给出修复建议,自动修复检查过程中发现的环境问题,优化了多项集群部署的操作逻辑,便于 DBA 更快地部署标准的 TiDB 生产集群。新版本的 TiUP 提供业务无感知的升级体验,升级过程中的性能抖动控制在 10~30 秒。


在升级 TiDB 时,新增自动捕获并绑定查询计划的功能,由系统自动捕获并绑定最近一次查询计划然后存储在系统表中,确保升级过程中的 SQL 仍然走绑定的执行计划,确保稳定性。升级完成后,DBA 可以导出绑定的查询计划,分析并决策是否要删除绑定。


更全面的 SQL 调优


TiDB 5.0 支持不可见索引 (Invisible Indexes),DBA 在调试和选择相对最优的索引时,可以通过 SQL 语句将某个索引设置成 Visible 或者 Invisible,避免执行消耗资源较多的操作,例如:DROP INDEX 或 ADD INDEX


在 TiDB 5.0 性能调优或者运维过程中,用户可以根据实际需要或者基于 EXPLAIN ANALYZE 测试选择优化过的 SQL 语句,通过 SQL BINDING 将优化过的 SQL 语句与业务代码执行的 SQL 语句绑定,确保稳定性。


数据生态:增加多个数据迁移、数据导入、数据共享组件,方便用户在异构环境使用 TiDB


数据迁移方面


数据迁移类工具支持 AWS S3(也包含支持 S3 协议的其他存储服务)作为数据迁移的中间转存介质,同时支持将 Aurora 快照数据直接初始化到 TiDB 中,丰富了数据从 AWS S3/Aurora 迁移到 TiDB 的选择。


数据导入工具 TiDB Lightning 针对 DBaaS AWS T1.standard 配置(及其等同配置)的 TiDB 集群进行了数据导入性能优化,测试结果显示使用 TiDB Lightning 导入 1TB TPCC 数据到 TiDB,性能提升了 40%,由 254 GiB/h 提升到了 366 GiB/h。


数据共享方面


TiCDC 集成 Kafka Connect (Confluent Platform),通过 Kafka Connectors 协议,支持将 TiDB 的数据变更同步到不同的关系型或非关系型数据库,例如:Kafka、Hadoop、Oracle 等,帮助企业将业务数据流转到异构数据库,形成数据闭环。


TiCDC 支持在多套 TiDB 集群之间相互复制数据,可用于多个 TiDB 集群之间数据的备份、容灾与数据汇聚等场景。


企业级特性:企业级特性获得整体增强


事务方面


悲观事务模式下,如果事务所涉及到的表存在并发的 DDL 操作或者 SCHEMA VERSION 变更,系统自动将该事务的 SCHEMA VERSION 更新到最新版本,以此确保事务的成功提交。


高可用与容灾


TiDB 5.0 引入 Raft Joint Consensus 算法将 Region 成员变更操作中的“添加”和“删除”合并为一个操作,并发送给所有成员,提升 Region 成员变更时的可用性。在变更过程中,Region 处于中间的状态,如果任何被修改的成员失败,系统仍然具备高可用能力。


安全合规


为满足企业安全合规例如《通用数据保护条例》(GDPR) 的要求,TiDB 在输出错误信息和日志信息时,支持对敏感信息(例如身份证信息、信用卡号等)进行脱敏处理,避免敏感信息泄露。


此外,新版本进一步优化了内存管理模块,跟踪统计聚合函数的内存使用情况,从而降低系统 OOM 的风险。在 SQL 功能方面,TiDB 5.0 支持 INTERSECT 和 EXCEPT 操作符、支持 List 和 List Column 分区表,在字符集和排序规则方面支持 utf8mb4_unicode_ci和 utf8_unicode_ci 排序规则。


总结


作为企业级开源分布式数据库,TiDB 5.0 在性能、稳定性、易用性、高可用与安全合规等方面都取得了巨大的进步,并增加了多个企业级特性,在 OLTP Scale 的基础之上实现了一栈式数据实时分析的需求,将带动企业用户借助增强性 HTAP 的能力,加速推进数字化转型与升级。



头图:Unsplash

原文:https://mp.weixin.qq.com/s/ZK09-1zhdhUSuJ0jVTADzA

原文:迈向企业级核心场景的 TiDB 5.0

来源:PingCAP - 微信公众号 [ID:pingcap2015]

转载:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2021-04-19 22:113434

评论

发布
暂无评论
发现更多内容

【Ajax】如何通过axios发起Ajax请求

坚毅的小解同志

ajax 11月月更

基于Spring-AOP的自定义分片工具

京东科技开发者

aop 数据分片 spring aop 配置文件

【jquery ajax】实现文件上传提交

坚毅的小解同志

ajax 11月月更

数维图智慧化工园区三维系统 助力危化企业安全生产

2D3D前端可视化开发

物联网 数据可视化 数字孪生 智慧化工园区 化工园区三维可视化

LR低代码快速开发平台 高效调整企业组织架构

力软低代码开发平台

【web 开发基础】PHP 变量的作用范围 (29)

迷彩

作用域 静态变量 全局变量 局部变量 11月月更

不懂Hybird开发,感觉错过一个亿~

FinFish

小程序 前端框架 APP开发 APP软件开发、 混合开发

Bigkey问题的解决思路与方式探索

vivo互联网技术

redis dba bigkey

OpenHarmony 3.2 Beta多媒体系列——音视频播放框架

OpenHarmony开发者

OpenHarmony

【Ajax】如何通过axios发起Ajax请求

坚毅的小解同志

ajax 11月月更

旺链科技肖慧荣登超级账本2022年第三季度中国贡献榜

旺链科技

区块链 产业区块链 VoneBaaS 企业号十月PK榜

深度解析KubeEdge EdgeMesh 高可用架构

华为云开发者联盟

云计算 云原生 后端 华为云

大模型狂欢背后:AI基础设施的“老化”与改造工程

OneFlow

人工智能 深度学习 大模型

字节跳动基于数据湖技术的近实时场景实践

字节跳动数据平台

数据湖 火山引擎

SAP UI5 应用和 Angular 应用视图里控件 id 生成逻辑的异同比较

汪子熙

前端开发 angular SAP SAP UI5 11月月更

度量BGP监测源数量对AS可见性的影响

郑州埃文科技

AS IP地址 BGP数据源

传输线路动态巡检探索

鲸品堂

网络 传输网络

“如何实现高效的应用交付”鲁班会开发者训练营厦门站进行时

华为云开发者联盟

云计算 软件开发 华为云 应用集成

基于鸿蒙系统的ArkUI框架的公共剪切类属性和多态样式在前后端分离项目中的表现

恒山其若陋兮

11月月更

通过实战总结的 使用Go的小技巧

王中阳Go

Go golang 高效工作 学习方法 11月月更

ArkUI框架基于鸿蒙系统的Scroll和Scroller和自定义组件之插槽的实战案例心得

恒山其若陋兮

前端 11月月更

Go定时任务源码 - robfig/cron

人生如梦

Go 定时任务 cron

提升80%上云集成效率, TA是如何做到的

华为云开发者联盟

云计算 后端 华为云 云集成

4.0体验站|OceanBase 4.0 我回来给你点个赞

OceanBase 数据库

元器件科普|变压器的分类及形状构造

元器件秋姐

元器件采购 华秋商城 变压器 电感器 电压

一个宁静祥和没有bug的下午和SqlSession的故事

京东科技开发者

mybatis sql Spring Boot CLI SQLSession

【Ajax】全面了解http协议

坚毅的小解同志

HTTP 11月月更

【Ajax进阶】跨域和JSONP的学习

坚毅的小解同志

ajax 11月月更

【原生Ajax】全面了解xhr的概念与使用。

坚毅的小解同志

ajax 11月月更

计算机网络:数据链路层设备

timerring

计算机网络 11月月更 网桥

5分钟搭建图片压缩应用

华为云开发者联盟

云计算 后端 华为云 函数工作流

迈向企业级核心场景的 TiDB 5.0_架构_PingCAP技术团队_InfoQ精选文章