一朵云的“乘风破浪”
今年春节期间,本应阖家团圆,但一场疫情让全国人民绷紧了神经。伴随着各地封城,有些工作人员仍奋战在一线。
1月28日,大年初四,腾讯云团队接到武汉市政务服务和大数据管理局电话,然后顿时进入“战备”状态。
由于与政府沟通需求非常多,团队成员几乎天天都要出门开会,以快速推进整合腾讯的医疗资源和健康服务。
而为应对激增的数据流,自1月29日起,腾讯云日均扩容云主机近1.5万台,八天总扩容超过10万台云主机,共涉及超百万核的计算资源投入。
但在如此超高强度投入背后,是一群人的不眠不休。
据悉,很多腾讯云团队成员基本都是凌晨三四点才回家、早上八九点又出门。其中有的人主动和家人隔离开,自己睡一间房。
2月7日早上,“武汉战疫”小程序上线时,一位加班多天的团队成员听到女儿突然发烧了。“完了,我把我女儿害了”。但好在是虚惊一场。
整体上,疫情期间,腾讯云支持了全国100多个城市的健康码、防疫小程序等项目的快速上线和稳定运行,服务民众数亿,日均被调用数十亿次。
腾讯健康码项目协作
与此同时,腾讯云还在全国各地的远程办公中发挥了重要作用。
2月3日,星期一,即春节后第一个开工的早晨。刚刚到8点,国内几乎所有的远程办公软件都崩了。
于是,在深圳腾讯会议“特别作战室”中,很快聚集了有海量服务经验的专家。
在彻夜鏖战下,技术专家们一起用代码攻克了多个高并发痛点。此后,不管行业其它软件怎么“抖动”,腾讯会议再没有崩过。
另外,为助力全球疫情防控,腾讯云也动作不断。
比如腾讯健康新冠疫情模块国际版的源代码在Github对外开源;与脸书等共同发起了一项“全球开发者‘马拉松’比赛”;通过企业微信为机构搭建“全球一线医生交流平台”。
而基于能在极端环境下“打胜仗”以及在国内外践行“科技向善”,腾讯云在国际上受到了广泛认可。
3月30日,腾讯成为联合国全球合作伙伴,将为联合国成立75周年提供全面技术方案。
其中腾讯会议、企业微信将为史上最大规模的全球对话提供远程会议服务,在线举办数千场会议活动。
这意味着,腾讯云击败了一众国内外强力对手。那么,腾讯云凭什么?
首先,这得益于腾讯在全球高覆盖率的会议客户端、数据中心,以及自研的领先音视频实时通信和同传技术。
但更重要的是,在核心系统支持上,腾讯会议远程办公采用的是TDSQL分布式数据库。
整体上,经过今年疫情健康码、防疫小程序、腾讯会议以及微信支付等高并发场景磨炼,TDSQL数据库已能轻松应用对PB级的海量数据场景,并且在高可用、水平扩展等方面表现突出。
那么,腾讯云TDSQL数据库是如何炼成的?
01起风
上世纪九十年代,数据库发展处于萌生状态。1995年,瑞典公司MySQL AB大步向前,发布了自研的MySQL数据库系统。
在接下来的两年中,MySQL被移植到不同的平台,同时加入了不少新的特性。到1998时,MySQL能够运行在10多种操作系统之上。
千禧年之际,MySQL AB推出了MySQL 4.0 Alpha版本。这一版本解决了不支持事务操作、子查询、集成存储引擎等缺陷,而且在公开测试中已非常稳定。
此后,MySQL一时风头无俩,并逐步崛起成为全球最大的开源数据库。而这一动向被刚刚起步的国内互联网企业捕捉到了。
2002年,鉴于计费产品处于起步阶段,腾讯的技术团队选择完全基于开源MySQL构建其数据库体系。
然而,随着公司业务突飞猛进,计费等敏感业务需应对更高要求的可用性、核心数据不丢失、核心交易数据一致等问题。
于是,2007年,腾讯数据库团队自研了一款数据库产品,即TDSQL的前身。而这款数据库极大支撑了当时的开放平台浪潮。
比如2008年,一家叫做“五分钟”的公司制作了一款名叫“开心农场”的游戏,然后一度掀起全民“偷菜”热潮。
在开心农场用户破亿、日活跃玩家达数千万时,几乎“家家户户”都定好闹钟,凌晨两三点爬起来在QQ空间“收菜”,而且乐此不疲。
为保障运行稳定,腾讯启动了一个7*24高可用数据库服务项目。但一遇到高并发情况时,服务器还是很容易“掉线”,然后留下一群玩家疯狂吐槽。
然而,转机很快来临。
2010年,腾讯正式宣布开放战略,下定决心把自身技术和产品全面对外开放。
此后,在QQ空间开放平台上,游戏开发者、应用开发者从初步试探,到逐步认可,再到蜂拥而至。
与此同时,腾讯的社交、QQ支付、广告等能力也在更多应用生态中生根发芽。这时腾讯数据库支撑的“腾讯计费”,已实现超高并发和超短时延。
但在社交游戏风靡下,服务器和数据库的需求也应声飞涨。为支持用户“偷菜”,腾讯曾在短短一个月内,就额外采购和上架了几千台服务器。
在成本不断增加下,腾讯也开始对模糊的“云服务”架构进行前沿探讨,并于当年正式成立了十几人的云平台部。
可没想到在一些爆款游戏推动下,2010年底,腾讯开放平台上已有近3000家客户,应用场景也越来越广泛。
不过,当时腾讯选用的数据库方案,在技术层与业务层耦合比较深,无法很好的为合作伙伴提供服务。
于是,技术团队又开始研发一款金融级数据库,以解决高可用、数据一致性、水平伸缩等问题,而让业务系统只需要关注业务逻辑。
2012年,腾讯基于“开源定制化+自研”策略,构建出更加通用的数据库产品,并正式命名为TDSQL。
此后,腾讯开始在内部规模推广使用TDSQL数据库,比如应用在“腾讯充值”、“米大师”等。
起初,腾讯一直没有将TDSQL数据库对外做商业化。但两年后,这一局面发生了变化。
02云涌
在移动互联网发展大潮下,数据开始迸发式增长。而伴随着云计算的迅速发展及概念普及,互联网企业逐渐纷纷上“云”。
时至2014年上半年,腾讯的云业务开始起量,并与富途证券、泰康保险等公司陆续达成了合作。但这些合作仍然是比较“浅层”的互联网业务,不涉及核心系统的改动。
可很快,腾讯云TDSQL数据库就迎来了首次证明自己的重要机会。
2014年9月,腾讯技术工程事业群(TEG)发出一则信息:腾讯投资的微众银行拿到了牌照,经过内部讨论,决定让整个银行的系统都使用云和分布式架构!
紧接着,腾讯高层传达CEO马化腾的要求,“不惜一切代价支持微众银行。”
根据开发时间表,微众银行的分布式核心架构最晚在12月底就要上线。
然而,首先在时间节点上,当时只剩三个月,而且中间还有一个“漫长”的国庆节假期。
其次,在成员几乎都是“小白”情况下,团队既要把腾讯公有云的技术变成银行内部使用的私有云,又要把一个互联网基因的云改造成符合国家监管的、适合金融行业的云。
另外,由于监管要求“银行必须使用完全属于自己的数据中心”,团队还需要把腾讯云的数据中心拆分出来,装进微众银行的机房。
于是,有团队成员吐槽,“这种难度相当于一个只做过民用汽车的工厂来做一辆坦克。”
但所幸的是,腾讯此前有十几年增值业务、计费业务、Q币之类的实战磨练,TDSQL数据库已足够“坚挺”。
因此,技术人员只要加以部分优化改造,就能基本满足金融级别的要求。这最终帮助腾讯云团队赢下了与时间的赛跑。
2014年12月20日,在微众银行的机房里,银行级私有云顺利运转。随即,微众银行马不停蹄地部署分布式软件系统。
这使得微众银行成为全球首家采用分布式数据库解决方案的银行。
而通过使用TDSQL数据库,微众银行运维表现出色。比如2018年每个账户每年的IT运维成本降至3.6元,仅是传统银行的1/10。
目前,微众银行的数据库实例个数已达2000以上,整体数据库规模达到PB级容量,承载了数百个银行核心系统,日金融交易峰值达到3.6亿次以上。
不过,微众银行毕竟是自家产品,即便腾讯云顺利“拿下”在行业说服力也不够。等待腾讯云要攻下的,是更高的“山头”。
伴随着国内政府职能的数字化演进,腾讯云不久后又获得了首次大展拳脚的机会。
2017年,数字广东要组建“敢死队”,并选择TDSQL作为核心系统数据库。
要知道,此前政府为数字广东至少投入了上千人。而腾讯云的技术团队介入后,最开始只有二十多个人。
当时腾讯云团队面临的真实写照是,“深入敌后、孤军作战、没有后援,而且务必要打胜仗”。
但面对腾讯云乃至广东省数字改革的“一号工程”,团队成员每天加班加点不在话下,深夜两三点回到家、第二天一早又准点出现也是家常便饭。
在项目攻坚的非常重要关头,由于已经太久没看到自己的丈夫,一位员工的家属找到了办公室,重重地把一纸离婚协议书拍在了桌子上…
最终,经过一年多全力投入,腾讯云团队助力广东建成了“数字政府”。
此后,广东省政府的网上能力从2016年的全国第九,快速提升到了2018年的全国第一。
03破浪
近年来,云计算的发展已经日新月异,同时不断渗透各产业互联网领域。这催化出新的巨大发展机遇。
因此,嗅觉灵敏的国内外科技企业,纷纷加码布局云计算。而长期主攻C端市场的腾讯,也在酝酿一场大变革。
2018年9月,腾讯高层破天荒的开了整整三天闭门会。所有人上交手机后,围着桌子坐成一个圆圈。每人半小时发言,阐述自己的业务构想。
会议最后,腾讯总办决定开展公司史上第三次组织架构变革。而其中十分重要的内容之一,就是成立云与智慧产业事业群(CSIG)。
这是腾讯成立20年来,第一次出现完全面向B端的大业务单元。
而作为CSIG的旗舰业务,腾讯云无疑是腾讯To B进展最重要的风向标,而TDSQL数据库是腾讯云的坚实软件“底座”。
对腾讯云来说,要在产业物联网上有所建树,就要把最硬的“骨头”啃下来,即传统银行金融行业。
尽管旧有的习惯、理念和模式带来负面影响,但在“ALL IN产业互联网”的决心和积极推进执行情况下,腾讯云逐步实现了破局。
2019年2月,腾讯云采用TDSQL数据库,倾全力在短短40多天内,帮助建设银行快速搭建出了一个符合公有云标准的金融级生态云平台——“建行云”。
在验收后,建设银行即与腾讯签署战略合作协议,宣布共同搭建金融科技创新平台。
“建行云”的标杆价值便决定,这只是腾讯云的一个开始。紧接着,中国人保、中国平安、深交所旗下深证通等等,纷纷与腾讯云达成了战略合作。
但这些合作仍然停留在“浅层”的互联网金融及外围业务上,没有触达“牵一发而动全身”的核心系统。
不过,腾讯云很快就啃下了那块最硬的“骨头”。
2019年8月16日下午6点,农商行第一股张家港行挂牌停业,进行数据库系统升级。
升级缘由是其Sybase数据库早已出现旧架构的瓶颈,高峰时段无法满足用户请求量。
这次张家港行的升级方案,一改过往国内传统银行都采用外国产品的境况,而选择了腾讯云TDSQL数据库解决方案。
仅48小时后,张家港行完成了数据库割接,最终将银行核心系统跑在腾讯云TDSQL数据库上。这是国内银行传统核心系统首次应用国产分布式数据库。
而通过这次升级,张家港行综合成本降低75%以上。但成本降低只是一方面,效率提升更为明显。
TDSQL核心数据库可让张家港行实现高频账户类交易耗时在300毫秒之内,查询类交易耗时在100毫秒之内,20秒内可以完成一万笔批量代发代扣业务。
此外,在实测中,TDSQL数据库负载均保持在10%以下,余量可以满足张家港行未来五到十年业务发展需求。
对于腾讯云的最终“登顶”,有业内人士认为:这是一次对于中国银行业的标志性事件。
而回过头看,从微众银行到数字广东,从建设银行到张家港农商银行,腾讯云有自己的梦想,并且在这条十分艰难的道路上无声坚守、勇敢攀登。
04升维
在数据爆炸式增长的当前时代,传统数据库已经越来越不能适应云在扩展性、可靠性和规模化的优势。
因此,数据库正朝着“云+数据库”的方向演进。
据调研机构Gartner的数据,2021年,云数据库在整体数据库市场中的占比将首次达到50%。到2023年时,这个比例会进一步升至75%。
然而,在云数据库迅速发展同时,云原生数据库正成为重要的发展趋势。
所谓云原生数据库,可以理解为传统的数据库搬到云提供云数据库服务,是一种搬家模式,而云原生数据库提供的是一种“拎包入住”的方式。
腾讯云副总裁李纲指出,“云数据库的发展,目前正在经历从第一阶段数据库上云,到第二阶段从云数据库到云原生数据库的变革。”
于是,为让用户更方便的“拎包入住”,12月19日,腾讯云发布八款云原生系列产品,聚焦企业不同使用场景。
其中,TDSQL Serverless是重头戏之一。
作为国内首款云原生MySQL数据库,TDSQL Serverless能为腾讯云上超过100万的企业和开发者提供一站式云数据库服务。
据悉,腾讯云原生数据库三大特点是融合、自治、效用,能对数据库进行全生命周期智能自治管理的优化与调优,及实现按真实使用量计费的商业模式。
由于计算存储均按使用计费、不用不付费,TDSQL Serverless相比7×24全时运转的数据库,使用成本降低达70%。
当然,云原生并不是数据库的唯一发展趋势。
目前,国内新基建、产业互联网不断推进,加快了云与数据库跨技术边界的超融合发展速度。
预计2021年,中国超融合市场的增长率将达到25%。总体上,超融合市场仍处于成长期,将在明年竞争更为激烈。
具体而言,数据库的超融合包括,底层多模多引擎、开发者接口以及软硬一体交付和全链路生态的融合。
另一方面,在云计算、数据库行业一定程度陷入同质化竞争情况下,企业树立高品质发展路线、实行品牌战略升级,在客观上也已变得越来越重要。
于是,腾讯云又筹划了一场新的变革。
12月24日,腾讯云正式宣布其数据库品牌TDSQL的全新战略升级计划及未来发展战略。
未来,腾讯云的TDSQL、TBase、CynosDB三大产品线将统一升级为“腾讯云企业级分布式数据库TDSQL”。
在整体云原生架构的基础之上升级后的腾讯云TDSQL品牌将涵盖多引擎融合的完整数据库产品体系。
其中包括,金融级分布式产品序列TDSQL,可应用于百P级复杂场景的分析型序列TDSQL-A,以及单体实例可支撑百T百万QPS的云原生序序列TDSQL-C等。
目前,腾讯数据库共有20多款产品,每年有超过1000次产品升级迭代,服务1000多家政府客户和2000多家金融客户。
为解决多引擎共存下对云数据库的开发与应用选择带来的挑战,腾讯云将通过AI智能调度及Serverless等方案,来彻底实现多引擎的统一标准化服务。
此外,为与合作伙伴协力建设全面开放的国产数据库生态体系,腾讯云还发布了“国产数据库加速器产业联盟计划”,并成立了数据库合作生态扶持基金。
对于将来布局,腾讯云总裁邱跃鹏表示,腾讯云将会在数据库的赛道上持续加码。
“同时整合腾讯在QQ、微信等服务十几亿C端用户的能力、经验、资源,为B端客户持续提供好用、易用、安全的数据库产品。”
显而易见,在不断完成行业应用纵向升级和横向“扩幅”的腾讯云,如今又在积极推动应用“升维”。
05远征
正如MySQL最初发布时,曾不受Oracle等数据库用户待见一样。作为入局产业互联网的新“选手”,曾有人诟病腾讯的ToC“基因”太浓。
但是,腾讯云通过不断的努力实践证明:如果你相信基因,就应该相信进化。
在短短六年时间内,腾讯云TDSQL数据库已先后完成互联网企业、民生政务、传统行业应用、金融核心业务几个阶段的应用“闯关”。
与此同时,在战略调整及TDSQL数据库支撑下,腾讯云的规模正在迅速壮大,甚至一些券商预测云服务马上将成为腾讯新的支柱板块。
回顾过往,腾讯云所取得的成绩也充分说明:做企业服务与做用户产品并不相矛盾冲突,过去积累的经验同样可以成为新业务的养分。
在曾经的数字广东项目上,腾讯云研发团队的攻坚微信群名口号,包括“血战温泉关”、“突破天险腊子口”、“骑兵连进攻”、“野狼团”等。
这些名字更像是研发人员“走夜路唱歌”,给自己壮胆打气。因为在孤独和迷茫的“远征”上,往往需要的是一份由衷信念。
最终结果是,数字广东项目成功落地,为腾讯云在政务行业立下了毋庸置疑的口碑。此后,也很少有人再说腾讯没有To B基因了。
这对腾讯云乃至国产数据库的发展来说,都是一个好的开始。因为数据库作为核心基础技术之一,对于国家金融和信息产业等有重要意义。
而在数据库安全可控发展趋势下,国内企业和科研机构历经十数年的研发演进,已获得不少里程碑式发展。
比如11月发布的Gartner数据库魔力象限报告中,包括腾讯在内的国产数据库厂商占据三席。这标志着国内数据库发展进入全新阶段。
未来,随着更紧密的产学研结合、科技与传统产业融合,安全可控的国产数据库将获得进一步发展。
不过眼下挑战也仍有很多,其中包括国产数据库在技术、人才、工业生态及商业化推进等各方面,都还有待完善和提高。
另外,国外厂商仍占据我国数据库市场80%以上份额。在主流的关系型数据库市场中,四家国外厂商共计占六成。
由于数据库是一个需要下游配套的复杂系统,Oracle、IBM多年来大举收购了ERP等下游行业公司,建立起完整的生态系统。而各种办公系统都依托他们独自开发,互不兼容。
因此,腾讯云TDSQL等国产数据库面临的最大挑战,大抵就是在技术破局后,如何搭建自己的生态系统。
企业自身的艰苦奋斗固然重要,但在历史进程中选对立场,有时才是决定性因素。
目前,云计算无疑已经走在时代前沿,任何有互联网野心的企业,几乎都在纷纷转投分布式云数据库。
亚马逊、谷歌等数据库新玩家,正在凭借云+分布式数据库不断侵吞甲骨文的地盘。而在国内,腾讯等互联网企业正在全面进军数据库基础技术领域。
毫无疑问,腾讯云的“远征”,已经扬帆起航。