当前位置:网站首页 > 探索 > 【开源访谈】黄东旭:“无人区”的探索者,TiDB 的前行之路

【开源访谈】黄东旭:“无人区”的探索者,TiDB 的前行之路

【开源访谈】黄东旭:“无人区”的探索者,TiDB 的前行之路日前,我司联合创始人兼 CTO 黄东旭接受了开源中国的【开源访谈】,公开解读了 TiDB 的探索之路及未来方向。

> 日前,我司联合创始人兼 CTO 黄东旭接受了开源中国的【开源访谈】,公开解读了 TiDB 的探索之路及未来方向。本文为专访实录~ :)

记者:王练

口述:黄东旭

首先请老师介绍一下自己

黄东旭,PingCAP 的联合创始人和 CTO,TiDB 的设计者和工程师,一直以来从事的基础软件和分布式系统的研发,很小就开始接触编程和开源,受到开源文化和自由软件运动的影响很深,是一个开源信徒,所以后来基本做东西能开源的尽量都会开源,比如早期的 Codis,现在的 TiDB。

TiDB 从零到 1.0 历时了两年半左右,遇到的难点主要有哪些,是如何解决的呢?

技术上主要的难点,比较具体的我记得是在早期决定不复用 MySQL 代码的同时还需要做到 MySQL 文法和网络协议上的兼容,同时还需要在很短时间内完成一个可用的查询优化器,虽然技术本身不是特别难,但是在早期确实是个工程上的挑战;另外底层存储上我们选用了 Rust 作为开发语言,作为一个比较新的语言,我们花了一些时间和精力帮助 Rust 社区完善一些第三方库,比如 gRPC 的 Rust 实现就是我们贡献和维护的。

其实遇到技术问题也谈不上有什么特别的解决方案,仔细分析和思考,拥抱和相信社区,重视测试,我们的工程师和在 TiDB 社区活跃的 Committer 的能力都很强,我相信大方向没问题,遇到的技术问题都是能解决的。

到现在,因为前方基本已经是无人区,思考得比较多的是未来数据库的形态和一些前沿的技术,比如如何更好利用新时代的硬件,如何和云更好的整合等等。

另一个方面是商业上的难点,我们几个创始人都是技术出身,过去并没有销售和市场的经验,在早期如何搭建商业和市场团队,如何面试这方面的人才,曾经让我们头疼很久,不过工程师嘛,多聊多总结,发挥学习新技术的精神去了解不同行业的东西,另外我们的投资人也帮了我们不少忙,总体来说,保持一个开放学习的心态,放低姿态多和行业里比较资深的人聊,能学到不少。

1.0 之后的 TiDB 将主要围绕哪些方面进行迭代更新?

技术上有几个重要的点:

1. 大集群上的多租户技术,这部分我们一个大的用户 Mobike 的工程师们为 TiDB 提交了这方面很多重要的特性的实现和很多宝贵的建议,在这里特别感谢一下。

2. 实时 OLAP 引擎,TiSpark 项目,TiDB 本身是一个 100% 的 OLTP 数据库,同时它的实时复杂分析能力也会越来越强,1.0 后一个重要的方向就是我们希望能够在 HTAP 上更进一步,打破数据库和数据仓库之间的界限。

3. 进一步减轻用户的迁移成本,我们内部在开发一些工具能够极大加速数据导入和同步线上 MySQL 的速度,降低用户的尝试和使用成本。

4. 拥抱新的硬件,这个时代,新的硬件层出不穷,Optane / NvmeSSD / 万兆网卡的普及,如何设计新的数据结构,使用新的 SDK,Bypass Kernel 使得更好的适应新的硬件。

最后一点,是持续增强稳定性,性能以及测试,这个是一个长期的工作,优化无止境嘛。

1.0 发布之后势必会吸引到更多用户使用,但也有许多用户迫切希望能有更多案例和背书,对此要如何解决?

其实这个是一个鸡生蛋蛋生鸡的问题,你需要得有第一批用户案例,才能吸引更多的用户,我们选在这个时间点发布 1.0 也是因为产品已经完成破冰,我们从 RC (Release Candidate)到 1.0 中间大约经过了一年,这一年时间我们已经默默的服务了很多种子用户,在他们的生产系统中锻炼,我们的早期客户中已经有系统稳定运行 TiDB 大规模集群超过一年了,在确保产品质量和有足够的用户背书的情况下,我们这才谨慎的发布了 1.0,我们随后也会持续的输出案例,给予社区更多的信心。

国外和国内的用户在特性方面的需求是否有差异,要怎么来协调?

其实特性需求上差异不大。在中国,大家会遇到 MySQL 的扩展性问题,在美国也会遇到。所以这两个市场对于我们这种基础软件公司来

上一篇: 探索者传说 第二季的分集短评
下一篇: “媒介形象”研究的理论背景、历史脉络和发展趋势.docx

为您推荐

发表评论