关于数据库:TDSQL-在微信支付数据密集型应用落地实践

日前,腾讯云数据库开源产品TDSQL PG版(开源代号TBase)发表推出重磅降级——通过一年半的打磨,上万张表拜访场景下,内存占用节俭60%;查问性能晋升百倍;SQL语句兼容性加强。同时,鼎力晋升原有数据库版本在分布式场景下的易用性。

TDSQL PG版是一款具备HTAP能力、通过腾讯多年继续投入研发的数据库产品,是腾讯云数据库团队在开源的 PostgreSQL 根底上研发的企业级分布式HTAP数据库管理系统,可能提供成熟的一站式解决方案。腾讯云数据库技术总监李跃森介绍到,“在首次开源的10天内,TDSQL PG版的Star数就达到了500多个。开源不久,就受到了欧洲航天局、国家天文台,以及医疗衰弱、批发等各个行业用户的青眼。”

作为新一代分布式企业级数据库管理系统,TDSQL 始终以来都利用于微信领取外围零碎,反对微信领取实现高性能、高可用、数字化利用。近年来,微信领取基于TDSQL PG版构建数据密集型利用,实现单表数据轻松冲破TB级海量存储,TDSQL PG版高吞吐、高并发,主动扩容的能力,充沛满足了微信领取的业务场景需要。

那微信领取利用TDSQL PG版的过程中经验了哪些故事?TDSQL PG版在微信领取零碎中又有哪些典型利用案例呢?

1

微信领取与TDSQL PG版的陪跑历程

“如果要用一个形容词来形容微信领取与TDSQL PG版的关系,那就是‘你侬我侬’。”腾讯高级工程师万志颖在介绍微信领取案例时示意,“TDSQL PG版为咱们提供武器,微信领取则为TDSQL PG版提供了短缺的试炼战场。”

以微信领取的商户服务平台为例,该平台次要是为千万级的商家提供帐单明细下载及帐单简单条件查问及统计分析的平台。最开始,平台应用开源MySQL作为底端存储。但随着京东等大商户的接入,交易笔数逐渐晋升,数据增长单机存储容量受限,微信领取遇到重大的容量瓶颈和性能瓶颈。在过后的技术背景下,微信领取迫切需要一个好的解决方案,于是就抉择了TDSQL PG版。

TDSQL提供的解决方案很好地解决了微信领取遇到的问题。在容量问题上,TDSQL提供了海量数据存储的在线线性扩容能力;在大商户的数据歪斜问题上,TDSQL基于双KEY散布等机制解决了数据存储均匀分布的问题;在分页查问性能问题上,TDSQL提供了基于Index only scan索引的相干优化计划,解决了传统web利用分页场景中总条数查问耗时高的问题。

“在交易系统根底上的更进一步利用的过程中,咱们发现TDSQL PG版相干个性非常适宜用于数据仓库中的维表存储,于是在2021年微信领取基于TDSQL PG版搭建了数据仓库的维表管理系统,使其成为大数据生态中的重要组件。”万志颖介绍。

2

TDSQL PG版在微信领取的利用实际

近年来,TDSQL PG版助力微信领取构建数据密集型利用,继续拓展利用场景,在多个畛域体现出比拟劣势,保障了业务的稳定性和连续性。在此以报表零碎和维表零碎为例介绍TDSQL PG版在微信领取的利用实际。

微信领取报表零碎中,存在两种典型的读写模型:一种是基于spark离线计算平台周期性写入,比方一天写入一次,每次写的数据很少,但也有可能写的数据量是十亿级或者百亿级。另外一种是通过音讯队列的形式进行实时写入来构建实时报表。因为写入端是大数据系统,每次写入的数据量极其微小,因而对底层数据存储的写入性能要求比拟高。相比于开源MySQL,TDSQL PG版在并行写入方面有显著劣势,具备更好的并行写入性能及吞吐能力,能够大幅升高咱们数据入库实现工夫,也可能撑持实时报表等场景的需要。

在报表页面读取数据方面,TDSQL PG版相比拟开源MySQL具备更为丰盛的索引类型反对。例如微信领取有一个业务场景是从百亿级数据中含糊检索商户名称,在引入TDSQL PG版前该场景的查问耗时靠近17秒,优化之后该场景的耗时间接降到50毫秒以内,性能实现了极大晋升。

截至目前,TDSQL PG版曾经累计承载了微信领取3600+报表的数据写入、存储和读取,报表关上工夫均能稳固管制在3秒以内,为整个报表平台的性能带来极大的改善。

微信领取还基于TDSQL PG版来构建维表零碎。维表是形容一个事物的不同角度,比方性别上的男和女,写代码时的枚举值也能够认为是一种维表。接下来就以枚举值为例论述微信领取如何基于TDSQL PG版来构建维表零碎。

微信领取所有零碎的枚举值都是基于履约建表零碎进行对立的录入,目前总共有2700+枚举值的数据,上游的OLTP数据仓库中的计算工作以及报表零碎、经营零碎都会读取这些枚举值。如果上游对枚举值进行了批改或者新增,而上游得不到感知,这就会给整个零碎的稳定性造成严重后果。

为了解决这类问题,微信领取基于TDSQL PG版买通了OLTP零碎与OLAP能力交融的维表零碎,在OLTP维表管理系统中录入或更新维表数据后,不论是在在线业务中、Spark计算中或者是报表零碎中,都能实时援用最小的枚举值数据参加计算。与此同时,数据应用方也能够间接在数据仓库中看到每个枚举值字段的枚举值,不须要一层一层去查问,枚举值治理的复杂性得以管制,升高了相应的品质危险,达到金融畛域利用的要求,极大的进步了咱们的保护效率。

在整体经营上,目前微信领取在TDSQL PG版的存储量曾经达到400TB+,每秒的申请量超过24万次,99.6%的申请基本上耗时都能够管制在10毫秒以内,充沛满足了微信领取的在性能和稳定性上的高要求。

TDSQL是腾讯云企业级分布式数据库,旗下涵盖金融级分布式、云原生、剖析型等多引擎交融的残缺数据库产品体系,提供业界当先的金融级高可用、计算存储拆散、数据仓库、企业级平安等能力,同时具备智能运维平台、Serverless版本等欠缺的产品服务体系。

截至2020年,TDSQL已对外服务数千家金融政企机构,同时宽泛笼罩游戏、电商、挪动互联网、云开发等泛互联网业务场景,助力新批发、教育、SaaS、广告等超过4000家行业客户进行数字化降级。

理解本次分享的更多详情,请搜寻关注“腾讯云数据库”官网微信获取。

【腾讯云】轻量 2核2G4M,首年65元

阿里云限时活动-云数据库 RDS MySQL  1核2G配置 1.88/月 速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据