前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >告别一步一步来,你们一起上好了

告别一步一步来,你们一起上好了

作者头像
腾讯云数据库 TencentDB
发布2022-12-16 19:10:12
3840
发布2022-12-16 19:10:12
举报

随着互联网的高速发展,企业的数字化改革与精细化运营,均对数据库能力提出了越来越高的要求,数据分析能力、异构数据处理能力等愈发重要。公司各类报表整合,年终数据盘点,分析预测等越来越多的业务开始需要进行复杂查询。

并且,爆炸性的数据量增长也使得传统的数据库能力难以应对。企业的很多业务将对数据的实时性和效率性要求越来越高,想一想你的企业是否也是这样:

  • 想!更早更快的在数据中识别和阻断漏洞,保证业务平稳运行;
  • 想!更快更准的定位数据,提升服务效率;
  • 想!更多更丰富的指标和计算口径,实现业务的快速增长;

但,多数的传统数据库只能支持单线程查询处理模式,无法应对大表查询、复杂查询等场景,且存在资源浪费的情况。因此,简化复杂分析的使用并且提升分析性能,调动多核服务于大查询,并行计算无疑是查询加速和降本增效的重要措施。以下将为您介绍腾讯云原生数据库TDSQL-C在并行计算上的探索与成效。

传统方案的痛点

在 MySQL 生态里,各开源发行版的查询处理只支持传统的单线程模式,即单条 SQL 处理涉及到的解析、优化和执行等阶段,都是在一个线程(称为用户线程)中完成的。这种模式可以有效地支持 TP 负载。虽然长期以来 MySQL 主要用于支持 TP 负载,但业务上还是会有一些 AP 查询,例如金融行业的风控监管、服务行业的查询办理、泛互的数据体系等业务。这些查询虽然不多,但通常要处理比较大的数据量。随着互联网业务的飞速发展,AP 查询将会变得越来越重要。

TP & AP 负载特点

Transactional Processing(TP) 负载的特点:查询并发高,读写混合,SQL 比较简单,单条 SQL 处理行数通常很小。

Analytical Processing(AP) 负载的特点:并发比较低,基本上是读查询或者数据导入,SQL 结构比较复杂,数据处理量比较大。

单线程处理的弊端因此显现出来:数据库无法通过多线程并行执行来降低复杂查询的处理时间,来实现响应时间的大幅下降。这种模式导致即使当下有空闲资源,也无法调动,当用户遇到大数据量查询与分析时,只能容忍超长的查询耗时,无法充分调用资源,快速得到结果。所以,提高查询并发数量(查询间并行),就可以有效提高系统的吞吐量,而对于查询耗时本身,主要是通过线程切换和缓存复用等手段进行优化。

问题来了,如何简化复杂分析的使用,并且提升分析性能呢?

并行查询

基于同一份数据,调动多核服务于大查询(查询内并行),无疑是查询加速和降本增效的重要措施。这就是并行查询 ( Parallel Query, PQ ) ,构建 HTAP 产品形态的技术手段之一 。在并行查询中,用户线程会进行数据划分和任务分拆,同时充当协调者角色,协调多个工作线程并行地执行子任务,从而有效地利用空闲硬件来加速 AP 查询。事实上,各大商业数据库早已支持这种模式,各大云厂商近年也纷纷提供了各自的并行查询能力。

为应对这类痛点场景,满足用户多样查询性能需求,腾讯云原生数据库TDSQL-C MySQL近日发布并行查询能力,通过简单的设置,就可以自动识别大查询,调动多核并行计算,从而大幅缩短查询响应时间。经验证,开启并行查询能力后,在面对大数据量表单与复杂SQL语句时,查询时间大幅缩短,加速比最高可达十几倍

TDSQL-C MySQL版实现并行查询时,除了对常用的SQL语句进行了支持外,在函数运算的实现上,采用了兼容性更好的办法,使得在实际生产环境中,使用的限制更少,并使得并行查询能力与其他HTAP能力的兼容性更好,将由此形成「TDSQL-C MySQL HTAP」能力矩阵。

并行查询实现效果

测试表明,现已支持的语句,TDSQL-C MySQL版开启并行查询后相较于MySQL传统的串行查询,查询时间平均缩短十倍以上,性能测试采用标准TPC-H测试基准进行,SF=100,使用的实例规格为16核64GB,并发度为16,测试结果如下:

由于TPC-H基准模型涉及22条复杂的select查询流语句,涵盖了大多数SQL语句从测试结果可以看出,常用的语句:例如SUM/AVG/COUNT 等聚合函数、order by/group by 分组/排序语句,未开启并行查询执行时间为1376.96秒,开启并行查询执行时间为107.25秒,加速倍数可以达到 12.84 倍。Join/Between/In 等语句,未开启并行时查询时间为20.55秒,开启并行查询后加速时间为1.87秒,加速倍数可以达到 11 倍。并且随着下一阶段的迭代,加速倍数将会进一步增大。

TDSQL-C MySQL版作为腾讯云自研的新一代云原生关系型数据库,融合了传统数据库、云计算与新硬件技术的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。并将持续在并行查询能力上发力,在这一企业级查询加速特性上探索更多可能性,为用户的业务带来更强有力的支持。

腾讯云TDSQL-C “并行查询”已正式开放免费体验,欢迎您来测试~

-- 更多精彩 --

在今年的数字生态大会上,云原生数据库前进了一大步

腾讯云TDSQL-C重磅升级,性能全面领跑云原生数据库市场

↓↓点击阅读原文,查看TDSQL-C的并行计算能力

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-12-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯云数据库 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档