• 联系我们
  • 地址:湖北武汉三环科技园
  • 电话:159116031100
  • 传真:027-68834628
  • 邮箱:mmheng@foxmail.com
  • 当前所在位置:首页 - 学车趣闻
  • 【SDCC专访】腾讯潘安群:腾讯云金融级数据库TDSQL分析
  •   SDCC 2015将于2015年11月19-21日在.朗丽姿西山花园酒店召开。在大会召开之际,笔者采访到了腾讯高级软件工程师潘安群,请他分享TDSQL在腾讯云金融领域的实践经验。届时,潘安群将在新一代数据库调优实战论坛中带来《腾讯云金融级数据库TDSQL分析》的主题分享,欢迎前来现场聆听【点击这里抢票】。

      CSDN:首先请简单介绍下自己、公司以及目前所负责的领域。

      潘安群:目前任职于腾讯TEG计费平台部,任技术总监一职,主要负责虚拟支付平台的相关研发工作。重点关注分布式数据库、大数据风控平台等领域。

      CSDN:可否介绍下目前腾讯主要使用的数据库有哪些?他们各自的优势是什么?

      潘安群:腾讯的OLTP场景中,主要是两大思:

      这一类产品通常是在兼容MySQL接口协议的基础上,针对自己的业务场景做定制化,例如我们针对金融场景,定制出TDSQL,强调数据强一致性、零丢失、高可用等特性;游戏运营平台则基于游戏场景变化频繁的特点,定制出TMySQL,强调二进制字段压缩、在线DDL、快速回档(Binlog并行恢复)等特性;此外还有CDB,实现多租户管理,将DB云化,为公司私有云以及腾讯云提供数据库的PaaS服务。

      这一类产品就更加特性化,与业务场景结合更紧,它们的最初出发点往往是性能与服务器成本的平衡。例如常见的Feeds流,通常都会做磁盘读写优化、冷热数据自动分离;而我们也针对游戏支付营销场景,开发了高性能的,全内存的金融级分布式存储系统(HOLD),在跨IDC强一致性的情况下,单机性能到20万TPS。当然也有通用的CKV系统,主要是KV系统云化,为公司私有云以及腾讯云提供对象存储的PaaS服务。

      此外,也有业务使用MongoDB等数据库,这类文档型数据库胜在灵活,适合产品原型或发展初期,对于大规模的在线服务,我们并不推荐使用。

      在OLAP场景下,基本上被TDW垄断。TDW(腾讯分布式数据仓库)是公司大数据平台的核心部件,基于开源软件HIVE和Hadoop进行了深度定制,目前该项目已经开源。

      CSDN:TDSQL是一款什么样的数据库?当初开发TDSQL的初衷是什么?主要有哪些特性?其开发架构是怎样的?它适合什么样的开发场景?

      潘安群:TDSQL(Tencent Distributed mySQL - 腾讯分布式MySQL)是针对金融联机交易场景推出的高一致性数据库解决方案;产品形态为一个数据库集群,底层基于MySQL(MariaDB 10.0);对外的功能及接口表现上与MySQL兼容。

      重点针对金融OLTP场景进行了如下增强:

      关于TDSQL架构的更多细节,期待您参与SDCC 2015数据库专场,与我们进一步讨论。

      目前,在腾讯内部TDSQL主要用于对数据一致性要求最为苛刻的计费支付类业务(Midas),以及微众银行(WeBank)核心交易系统的数据层,此外也是腾讯云金融解决方案(QCloud)的数据库服务方案。

      CSDN:当初开发TDSQL的初衷是什么?

      潘安群:腾讯计费平台从2003年以来,经过12年发展,数据库容灾架构经历4代演进,TDSQL是我们的产品,2012年我们启动TDSQL这个项目,主要有下面几个动机:

      易用性。我们前面几代产品,在易用性上均存在一定的问题,例如第二代产品,业务逻辑跟容灾逻辑耦合太紧,导致每个业务开发人员必须对整套容灾逻辑非常熟悉,开发难度和运营难度都很高,而且容易出错。而第三代产品HOLD,虽然将容灾逻辑下沉到存储层,业务与容灾充分解耦了,但仅能提供简单的GET/SET这类KV接口,不够灵活。

      通用性。标准SQL接口比KV接口更加通用,使用范围更广。在推广第三代HOLD平台时,就面临了很多业务原本使用MySQL,现需改为KV接口,难度大,推广进展缓慢,而一些外部业务则根本就不愿意。所以存储平台必须更加标准和通用,才能让更多业务直接无缝割接到新平台。

      CSDN:在开发TDSQL期间有没有遇到过困难点?又是如何克服的?你们目前的开发团队有多少人?

      潘安群:TDSQL跟我们之前的三代产品在设计上有很大的不同,导致我们开发TDSQL时,除了前面三代系统积累的经验,没有其他可直接复用的模块,开发几乎是从零开始。而数据库开发本身是一个大项目,涉及的东西甚多,我们需要在很快的时间内完成第一个版本的开发,这在当时,对团队来说是一个很大的挑战。现在回头去看,当时采取的几个措施,还是相当有效的:

      基于开源软件快速搭建。MySQL版本选用MariaDB、Proxy版本基于MySQL Proxy、Scheduler中元信息的存储选用Zookeeper等,这些开源软件相对成熟,只需要基于它们做小的定制开发即可。

      此外,TDSQL第一个版本是采用的封闭开发模式,用时3个月,当时团队6个人左右。经过近4年发展,目前研发团队,包括开发测试运营等,在20人左右。

      CSDN:7*24高可用、金融级分布式Cache是个什么样的系统?主要运用在哪些场景上?

      潘安群:腾讯自研的金融级分布式存储产品HOLD(厚德,取意厚德载物),其实是TDSQL的前身,当时SSD并没有大规模使用,但在腾讯的计费业务中,还有很多场景,不仅要求很高的服务可用性和数据一致性,还需要超高的并发和极短的响应时延,比如2B账户的交易,最高每秒10万级的更新;又比如游戏的营销类赠送,浪涌式的并发请求量,当时的DB很难满足这类需求。

      基于这样的需求,我们开始思考:在OLTP数据库领域深耕这么多年,是不是可以尝试去改变一些东西?于是,2010年,HOLD项目启动。目标:超高并发、超短时延的高一致分布式数据存储层。

      首先,为了获得更快的访问速度,数据结构上剔除所有关系模型,直接采用KV格式,存储介质上使用纯内存。然后,把之前在DB中积累的经验溶入进来,后面TDSQL的架构和用到的所有重要技术,几乎都在这个项目里进行了系统性的验证,包括在数据底层实现跨IDC的强同步、跨城容灾、切换一致性保障、数据自动的Sharding、集群管理等。

      HOLD在计费平台应用非常成功,支撑起了多个超高并发的应用。实际运营中,经历了多次软硬件或网络故障,没有发生过数据丢失问题;自动伸缩能力也得到了很好的验证,仅2014年就伸缩近500次,非常轻量化,完全无需人工干预。

      CSDN:你目前还会关注哪些新技术?

      潘安群:目前关注的领域包括金融风控体系在大数据中的应用、基于业务的领域专用语言、高性能后台开发、分布式系统等。此外也对大规模集群管理技术,如容器、资源管理、服务管理等感兴趣。

      CSDN:你认为一名优秀的技术管理者应该具备怎样的素质?你所推崇的团队文化是什么?

      作为一名技术管理者,我个人非常强调技术视野这一点。互联网技术日新月异,我们必须不断学习,持续了解业界前沿动态,开拓自身视野,才能确保决策是高效的。此外,无论是对于个人,还是团队,我都一直强调效率。抽象业务,通过工具化、平台话的思持续提升整体研发效率,应是每个技术人的追求。

      CSDN:在本次SDCC2015上想分享的话题是?

      潘安群:在SDCC 2015上,个人将分享一下TDSQL在腾讯云金融领域的实践经验。也希望借此机会,跟业内其他数据库团队交流交流。

      CSDN:你最期待在本次SDCC 2015上听到哪些内容?

      潘安群:SDCC 2015作为开发者的盛宴,希望能通过她了解到业界在数据库、编程语言、技术架构等领域的发展趋势。

      由CSDN举办的SDCC 2015中国软件开发者嘉年华将于11月19-21日在举行,本次大会涵盖:新型数据库、编程语言、工具与平台、产品与设计、前端开发、算法、微信开发、架构实践、安全等九大分论坛。想了解更多精彩,想要见到更多软件开发者,敬请关注SDCC 2015中国软件开发者大会官网,【点击这里抢票】。

    推荐:

    牛娃闯都市,诀别诗卓文君,悍马h10报价,高官前夫别来无恙,江陵肃是谁的孙子,落梅沁 雪,恶少的毒爱,色五月 干什么,美少女被虐饲育记,隔世离空的红颜原唱,女总统音译歌词, 女人你敢甩我,我的泪珠儿演员表,恶魔军官放我走,木已成舟下一句,暴露狂楠楠,365式性姿 势,不想骗自己英文版,花开在古代,9a撸霸,残虐女犯人刑务所,血泣五胡,乔榛近况,综漫之 逐艳曲,终极一班苏教官,吾组词,www.169mm.cc,恶女绿萍,盲目的救赎,徐其耀玩过的女人, 村上真依,痒孟楠,天字号大纨绔,庞青云原型,风尘女教师,刘瑞龙简历,玩火娇妻,安住凉子, 王爷的倔宠儿,169mm.cc,清穿之永日清茶,绝色倾权,青春出动吻戏,李富春简历,左葳葳,色 少林,妓中技,punisher全cg存档,华能吧,东风东路小学班级网站,橘黄刺杯菌,冰峰魔恋mp3, 武则天传位于谁,夏耕是谁的女婿,屎球吧,热吻野男人,曹征平简历,大铁人17号,翻身弃妇太 撩人,网王之恋猫物语