【经验分享】以将军的年龄,去做一个热血新兵——看 70 后技术总监如何炼成 PCTP

In 2010s,分布式 SQL 数据库登上舞台,ACID 全面回归,互联网大厂、银行、保险公司、证券公司、高端制造业及大型物流企业纷纷拥抱分布式关系型数据库 TiDB。企业对分布式技术的需求带来对人才的渴求,PingCAP University 应运而生。其中, TiDB DBA 认证项目主要致力于培养具备独立运维和管理分布式关系型数据库 TiDB 的优秀 DBA。

2019 年 Q3,PingCAP 全面启动 TiDB DBA 认证考试,考试分为基础 PCTA(PingCAP Certified TiDB Associate)和进阶 PCTP(PingCAP Certified TiDB Professional)两类。经过两次考试,涌现出全球首批 PCTA 和 PCTP 专业人士,面向 2020,他们有话说。

“金融行业对数据库有最严苛的要求”,通过文字采访,北京寰信通科技有限公司技术部副总监王兵带来了他的 PCTP 成就之路。

个人经历

王兵,北京寰信通科技有限公司技术部副总监。从 2007 年起从事某国有银行总行及一级分行开放平台 数据库的技术支持,数据库规划、架构咨询、培训和技术管理工作。在 10 余年的服务工作中,积累了丰富的性能优化、故障诊断、应用系统架构和设计咨询经验。历经该行多个重大系统的技术支持服务工作。目前负责公司分布式 NewSQL 数据库业务方向的产品选型、技术研究和技术咨询服务工作。对开源分布式 NewSQL 数据库领域具有浓厚兴趣,阅读和研究了某些开源产品的源码。熟悉 PingCAP 公司的分布式 HTAP 数据库 TiDB ,并于近期获得全球首批 PCTA 和 PCTP 认证。

PingCAP:您是从什么时候开始接触 TiDB 的?

王兵:我们公司服务的客户是典型的传统行业中的大型银行,由于银行自身业务的特点,决定了其信息系统在可靠性、可用性、可扩展性以及强一致性等方面有着极高的要求。因此,这些客户的信息系统在设计与实现时普遍采用了集中式的架构,软硬件产品选型也以 IBM、Oracle/DB2/Sybase、EMC 等大型商业公司提供的商用产品为主。使用小型机和 SAN 存储来保证数据库的可用性、可靠性;在扩展性方面,主要通过增加 CPU、内存、磁盘等纵向扩展方式提高处理能力。

在我服务某国有银行的过程中,以 IOE 为主要支撑产品的应用系统架构,面临的问题越来越突出,主要表现为三点:

  • 成本高。每年用于采购 IOE 产品和维保服务的成本居高不下,特别是随着业务的发展变化,银行的应用系统会面临更大的访问量、产生和处理更多的数据。支撑应用系统的数据库逐渐成为系统的瓶颈,而传统商业数据库往往只能采用纵向扩展手段,这会进一步导致软件成本和硬件成本的上升。
  • 扩展能力不强。传统集中式数据库,由于产品架构和技术上的局限性,使其在 OLTP 负载方面缺乏良好的可扩展能力,难以应对应用层的高并发数据访问的要求,随着数据量的增长该问题日益突出。
  • 不利于安全、自主可控。国家从信息安全高度对重要企事业部门的 IT 基础设施提出了自主可控的要求。这些用户的数据库面临对国外商用产品的缩减、调整和替换的压力。

由于用户面临这些问题,多次尝试寻找一种新的关系型数据库产品,既能够支持标准的 SQL 和事务、具有优秀的性能和扩展能力,同时又是可靠、安全的产品。正是源自于用户的需求,我们开始寻找相应的产品,在 2017 年我们发现了 PingCAP 公司的开源 NewSQL 产品 TiDB,它基于 Google F1/Spanner 理论和一些新的算法、技术,采用了新的架构,吸收了关系型数据库和 NoSQL 数据库各自的优点,具有 SQL 模型的简单易用、水平弹性扩展、支持强一致性分布式 ACID 事务、高可用等一系列特点。我们觉得它是适合海量数据环境下高并发 OLTP 交易的最有希望和前景的产品之一。

自此,我们一直在跟踪、学习和研究这个 TiDB 产品,从最初不成熟的 1.x 版本,到后来的 2.x 和 3.x 版本。

PingCAP:使用 TiDB 以来,对 TiDB 有什么感受?

王兵:从 2017 年开始接触 TiDB 一直到现在,其产品不断地成熟起来,对于 SQL 和分布式事务的支持完备,TiDB 周边产品也日趋完善,越来越接近传统企业客户市场的需求。

目前来看,TiDB 产品对于互联网公司需求贴合度更好,传统企业客户的需求满足度还有待提升。比如,对于银行客户来说,目前他们的重点需求在 OLTP 负载场景,相应产品在可靠安全的前提下,应当具有优秀的性能和扩展能力。随着 TiDB 产品的演进发展,产品及周边生态越来越多样、复杂,很多传统企业的客户,它们的 DBA 或技术人员的能力、水平跟互联网大厂人员还有一定的差距,因此对于数据库产品的易用性、可视化运维管理平台的要求就比较高。希望 PingCAP 公司能够多了解传统企业客户的需求,根据客户公司的发展策略、资源情况酌情考虑。

PingCAP:您觉得课程如何?

王兵:课程体系框架还是很不错的,每门课程的内容总体上还可以。在这里提出几点建议:

  • 有些视频课件中,老师的表达不是很好。比如:讲解 TiKV 内部 RocksDB 的工作原理和参数的部分,讲得不够清楚。
  • 对于 TiDB 和 TiKV 两个核心组件,由于涉及到不少相关理论知识(比如:Spanner/F1、Raft、LSM-Tree/KV 存储引擎、分布式事务等),在课程内容和讲解上要注意全面和精炼相结合,注意通俗易懂。

PingCAP:为什么想参加 TiDB DBA 的认证考试?备考过程是怎样的?

王兵:我参加 TiDB DBA 认证考试主要基于以下 3 点考虑:

  1. 为自己所在公司服务的客户做好技术储备,以便具有服务他们的能力。
  2. 顺应发展趋势,不断学习、不断更新自己的知识和技能。
  3. 证明自己这个 70 后的老人还具有学习能力。

TiDB 产品涉及到的理论知识和相关技术比较多,对于很多没有接触过的小伙伴们是有一定难度的。我在备考时花了不少精力看文档、查资料、看视频,动手试验。

PingCAP:通过考试拿到证书对您有什么意义?

王兵:拿到 TiDB 的 PCTA 和 PCTP 证书,是对我这个 70 后的老人还具有学习能力的认可,也增强了自己的信心。

PingCAP:对其他参加 TiDB DBA 认证考试的小伙伴们有什么寄语?

王兵:无论是 80 后、90 后的年轻人,还是像我一样的 70 后,大家一定要记住:没有一劳永逸的事情,一定要顺应时代和技术发展趋势,不断学习、不断更新自己的知识和技能。

Tips:通过认证考试之后,王兵也把自己的备考心得总结成文发布在 AskTUG 上供更多人参考:有关 TiDB 认证考试的一点经验分享

同时王兵还整理了 Raft 相关知识点的 PPT,同步分享给大家:

Raft_学习.pptx (234.0 KB)

分布式数据库基础理论_Raft协议_v1.0.docx (2.3 MB)

6 个赞