SDCC 2015将于2015年11月19-21日在北京召开。在大会召开之际,笔者采访到了PingCAP联合创始人兼CEO刘奇,请他分享这些年的创业感悟、TiDB的开发流程以及为何开源 TiDB。刘奇表示, 好的产品应对当敢于将自己的代码开放出来; 不闭门造车,及时和社区沟通、交流,让整个社区参与进来。
届时,刘奇 将在新一代数据库调优实战论坛中带来《HBase分布式事务与SQL实现 》的主题分享,欢迎前来现场聆听【点击这里抢票】。
PingCAP联合创始人兼CEO刘奇
CSDN:首先请简单介绍下自己、公司以及目前所负责的领域。
刘奇: 大家好,我是PingCAP联合创始人兼CEO刘奇,先后创建了TiDB、Codis等知名开源项目。曾任豌豆荚,京东资深系统架构师。同时也是知名的Go语言专家和Redis专家。现从事开源的分布式NewSQL数据库TiDB(受Google F1启发)的开发。擅长高并发、大规模、分布式数据库系统架构设计。
CSDN:是什么样的缘由让你走上创业之路的?在创立PingCAP期间有没有遇到过困难点?又是如何克服的?有没有什么难忘的人或事?你们目前的开发团队有多少人?
刘奇: 工作期间一直受到分布式数据库的困扰,找不到一个既能水平扩展又能保证分布式事务的数据库,后来和同行交流发现这也是普遍困扰大家的一个问题,所以决定出来创业,这是一个非常 hardcore的方向。
创立PingCAP之初最大的困难是人才,每一个顶级人才都需要我们去发现,沟通。由于一开始就决定做成开源项目,所以人才方面需要有做开源项目的热情和经验,又必须是顶级的golang程序员,这样选择就不多了。目前的开发团队由10个顶级程序员组成。
CSDN:为何会想到开源TiDB?它的灵感来源于什么?你怎么看待开源数据库未来的发展?
刘奇: 主要是两个方面吧:
事实证明这是非常有效的做法,开源短短两周就得到了社区的积极反应,捷克的编译领域大牛cznic很快为我们解决了S/R冲突的问题,也第一时间得到了beego,gogs , xorm等知名项目的支持。
主要灵感来自于Google的Spanner和F1,由于互联网公司和其它企业的基础设施与Google有很大的差异,所有在实现上面更多的是根据这些差异来做优化,使得Google内部先进的思路和技术能被大家使用并解决实际问题。
关于开源数据库未来的方向应该是多方面的,比如内存数据库(以Redis为代表),流式数据库,时间序列数据库等,大的趋势是数据库技术在相互融合,界限越来越模糊。
CSDN:TiDB的开发流程是怎样的?采用了哪些开源技术?开源给TiDB带来哪些好处?
刘奇: TiDB的开发流程是完全标准化的开源项目的模式,所有成熟的代码都在开源的分支上开发。沟通工具主要是用slack,测试用的travis CI,这些工具本身和GitHub配合非常好,也是目前流行的开源项目普遍采用的方式。采用的开源技术有Go,Hbase,小米的Themis等。开源带给TiDB的好处前面已经提到了一些,还有就是吸引了大量的关注和客户。
CSDN:与其他开源的数据库产品相比,TiDB在技术上有哪些优势?它适合哪些企业应用场景?
刘奇: 相对于绝大多数NoSQL方案而言,TiDB提供了分布式事务和强大的Scale能力,以及对schema的强约束,对于大规模的系统非常友好。相对于传统的基于proxy的方案,TiDB提供了强大的动态在线修改 schema的能力,以及保证了分布式事务,同时由于TiDB十分友好的支持了MySQL 协议,用户从MySQL的相关解决方案迁移过来时几乎没有迁移成本。绝大多数情况下,完全不用修改已有代码。
TiDB适合有分布式数据库和分布式事务需求的用户,比如使用各种MySQL proxy,MySQL cluster的用户,使用关系数据库的用户,以及部分使用NoSQL数据库的用户。
CSDN:在你看来NewSQL有着怎样的发展历史,它演变的趋势又是怎样的?
刘奇: 历史过程是这样的,最开始是SQL,后来是NoSQL,最新的趋势是NewSQL,相信未来会有越来越多的用户迁移到NewSQL上面,这点从Google 的技术发展趋势能看出来。
CSDN:你目前还会关注哪些新技术?给从事数据库方面的开发者一些学习建议吧。
刘奇: 目前还关注流式数据库,分析型的数据库,以及时间序列数据库。学习方面主要还是看目标吧,如果想做做数据库开发,研究代码和论文是必不可少的的。这方面的资源非常多,如HBase,cassandra,MySQL,TiDB等。如果学习数据库使用,优化,这方面的文档已经比较多,更多的是去实践,了解存储引擎的特点,和业务结合做优化。
CSDN:在本次SDCC 2015上想分享的话题是?
刘奇: 主要想分享TiDB的分布式事务引擎的实现,如何在Hbase上实现分布式事务,SQL等特性。
CSDN:你最期待在本次SDCC 2015上听到哪些内容?
刘奇:更多新型数据库的技术,多租户,隔离。数据库在云上的相关的技术和数据库应用场景等一切相关内容。
由CSDN举办的 SDCC 2015中国软件开发者嘉年华 将于11月19-21日在北京举行,本次大会涵盖:新型数据库、编程语言、工具与平台、产品与设计、前端开发、算法、微信开发、架构实践、安全等九大分论坛。 想了解更多精彩演讲,想要见到更多顶级软件开发者, 敬请关注 SDCC 2015中国软件开发者大会官网 ,【点击这里抢票】。