Leave a dent in the world:陶建辉,52岁程序员与TDengine一起成长的四年

点击查看活动详情:

https://t.csdnimg.cn/L4B8

社区介绍:

TDengine是涛思数据研发的专注物联网大数据处理,不依赖任何开源或第三方软件,拥有自主知识产权的高性能、可伸缩、高可靠、零管理的物联网大数据平台软件。TDengine将数据库、缓存、消息队列、流式计算等功能完全融合在一起。由于针对物联网大数据特点做了各种优化,TDengine的数据插入、查询的性能比通用的大数据平台好10倍以上,存储空间也大为节省,采用SQL接口,与第三方软件能无缝集成,大幅简化了物联网平台的系统架构,大幅减少了研发和运维的复杂度与成本。TDengine可广泛运用于物联网、车联网、工业大数据等领域。2019年7月12日,TDengine开源,在GitHub全球趋势排行榜上连续几天排名第一。2020年8月3日,TDengine将集群功能开源,再次连续六天位于GitHub全球趋势排行榜第一位。涛思数据团队全部毕业于知名学府或机构,都拥有硕士或博士学历,在分布式计算、数据存储和数据库上有多年的研发经验。

目前,TDengine在GitHub上的Star数14.4K,Fork数3.7K,Issue数5K。

点击这里:https://www.taosdata.com/cn/,了解TDengine!

社区之星:

陶建辉,1986年考入中国科大,1994年到美国印第安纳大学攻读天体物理博士,曾在美国芝加哥Motorola、3Com等公司从事无线互联网的研发工作,在高可靠分布式系统、即时通信、消息队列等方面,是顶尖的技术专家。2008年回到北京创办和信,专注移动互联网IP Push和IP实时消息服务,2010年和信被台湾联发科收购。2013年再度创业,创办快乐妈咪,专注母婴智能硬件和母婴健康服务,2016年初快乐妈咪被太平洋网络收购。2017年5月又再次走向战场,创办涛思数据,专注时序空间数据的实时高效的处理,其自主研发的产品物联网大数据平台TDengine比其他业内标杆性能好10倍以上,可广泛运用于物联网、车联网、工业大数据等领域。

Leave a dent in the world!

2016年12月17日,对我来说,是一个特别的日子。因为那天,我参加溪山天使投资年会,在会场上听着精彩创业故事的同时,在自己的Mac笔记本上,安装了Ubuntu,安装了熟悉的vi, cscope, gdb等开发工具,搭建好了开发环境,正式开始写代码。我得意地告诉参会的朋友们,我不想做天使投资人,而是要重出江湖,亲自操刀,写一个巨牛的专门针对物联网场景的大数据处理引擎,希望今后世界上90%的数据都用我陶建辉开发的软件来存储和查询。 

没想到,一晃四年就过去了。从我的第一行代码起,TDengine整个系统的代码量已经超过三十万行,我自己贡献的代码量早已超过四万行。开心的是,我自己只是开了一个头,凭借物联网数据处理的巨大市场空间,凭借“舍得”,凭借“三顾茅庐”的诚意和决心,吸引了一批顶级的人才加入进来。四年前我一个人的梦想,已经变成了整个团队的梦想和目标。更可喜的是,我一个52岁的程序员,能天天与90后、80后混在一起,讨论问题,解BUG,让我顿觉年轻了20岁。

在动手写下第一行代码之前,我已经对物联网、工业互联网的数据处理做了几个月的调研,认为大家普遍采用流行的Hadoop系统是完全不合适的,开发效率低,运行效率差,而且运维成本很高。我发现物联网数据具有时序、结构化、不更新等众多特点,如果采取“一个设备一张表”的数据模型,采用“超级表”来解决多设备之间的数据聚合分析问题,一定能设计出一个极为高效的物联网数据处理系统。想到5G的到来,会让联网设备的数量指数级上升,今后世界上90%的数据都将是物联网设备产生的,顿觉热血沸腾。虽我已创业两次,并成功退出,但实在不想错过这巨大的机会,抱着“Leave a dent in the world”的想法,我再次冲向战场,并且冲到了最前线。

虽然我已经很清晰原理、设计思路,并且是研发老炮一个,但直到实现时才发现,技术难度超过预期。我写了一个高效的存储引擎,但“导入历史数据”却是一个坑最多的地方,场景实在太多,用户可能导入的数据在内存,也有可能在硬盘,也有可能跨多个文件,经历了无数的BUG之后,由团队的90后,科大郭沫若奖学金获得者程洪泽重写历史数据处理模块。节点之间的实时数据同步,我重构了三次,才得以让节点进行同步之时,不影响数据的实时插入和查询;客户端驱动,因为同步、异步的各种调用纠缠在一起,我重构了两次,团队的廖博士在我的基础上又做了很多调整。Kill一个正在进行的查询操作,因为分布式、多线程、资源管理的问题,实现的难度也是远远超过了我的预期。但这三年,每次遇到一个难啃的技术问题,我反而很开心,因为它意味着产品的门槛又高了一点,如果我们能把这些难题都完美解决,这才显示出我们团队真正的价值。 

四年已经过去,前面两年在埋头写程序,这两年我发力在推广上,2019年7月,我们做出了极其正确的决定,宣布将TDengine的核心代码开源。开源还不是我的一时冲动,而是深思熟虑、谋划已久。因为作为底层基础软件,不开源,完全得不到用户的信任,而且市场上已经有相当多开源的同类产品,不开源,推广极其之难。令我兴奋的是,开源后,TDengine获得的反馈远超预期。我曾和团队说,开源后,我们争取一年的时间能在GitHub上获得5000个star就不错了,但没想到,仅仅三个月时间,TDengine的star就超过一万,fork数超过了2800。我们不仅看到了来自中国用户的反馈,还看到了来自美国、印度、西班牙、意大利、捷克等很多国家的程序员的反馈。每天起来后,第一件事就是看GitHub,看是否有人报告新的问题。每当有人报告BUG,我一点的沮丧都没有,反而是开心,因为说明有人在用TDengine,而且在乎我们产品,这是我最希望看到的。哪怕TDengine的商业化不成功,但只要有程序员喜欢这款产品,爱用这款产品,那就是我个人以及整个团队最大的成功。

单机版开源后的市场的反馈更是坚定了我的想法:集群是刚需,是真正的痛点。我动了集群版开源的心思。但是,集群作为刚需也一直是我们销售的一个亮点,如果开源,我们怎么赢利?这一问题令我纠结了很久,而团队小伙伴、尤其是销售团队,也在我提出要在业内率先将集群版开源时,直接提出质疑和反对。

2019年底,我彻底想明白了,一定要将集群的代码开源。基于以下几点,1:对于大数据平台,没有集群,就相当于一个玩具,一个演示而已,谁也不会当真;2:开源是基础软件行业大势所趋,谁先真正拥抱开源,而不是假开源,谁就抢占先机;3:只要全球超过30%以上的物联网平台都在使用TDengine,只要能给用户创造真正的价值,公司一定能找到生存的途径,一定能成功。

2020年8月3日,我们团队宣布将TDengine集群版开源。此次开源,终于又了却我一个心愿,不用再纠结。当时,我们还是一个18人的团队,通过三年的努力,为全球物联网、工业互联网、车联网行业奉献了一个开源的、具有超强性能和分布式集群功能的专业大数据平台。

Leave a dent in the world:陶建辉,52岁程序员与TDengine一起成长的四年_第1张图片做一个60分的产品不难,有个不错的主意,能动手写点程序,立马就能做出来。但要做到80分,就要付出更多的努力。而我的目标是做一个能打99分的产品,因为做到99分时,就天下无敌,而且技术生涯才会画一完美的句号。不过,从80分到99分,比从60分到80分,要多付出超10倍的努力。幸运的是,我们已经有了一支很不错的产品队伍,而且有GGV、红杉、明势资本等机构超过2000万美元的投资,相信只要能坚持静心做产品,专注下去,我们一定能做到99分。

我总感慨自己幸运,在90年代初去美国留学工作,赶上美国互联网行业大爆发,正值中国经济腾飞之时,我又回到北京创业。如今,在接近退休的年龄,居然又发现了一个崭新的机会,而且是一个特别适合程序员老司机的机会——做底层软件的开发。不仅做整体架构的设计,还要动手写代码、debug、写文档,天天和团队80后、90后同学们一起战斗,乐此不疲。每每想到这里,我都会庆幸自己3年前的选择,也庆幸自己选择了开源的道路。如果没有这个选择,我和太太应该正在世界各地旅行,品尝美食,陪她流连于美术馆博物馆,过着人人羡慕的日子,但我想,那才是真正的随时光老去,因为世界已经不需要我的存在。

2019年,单机版开源时,我曾说过:“钱再多,也难让人在历史上留下痕迹,但一幅好的作品却可以传承,让后人好好的品味。愿我领头开发的TDengine成为传世之作,Leave a dent in the world!”,  今天再将这一段“初心”写一遍,希望这次集群版的开源,能够让TDengine离传世之作更近一步。

大家如果想了解、体验TDengine,可以到我们涛思数据的官网:https://www.taosdata.com/cn/,上面有非常详细的文档、博客以及视频教程。

另外,欢迎成为TDengine的贡献者,加入我们的Contributor Family:https://www.taosdata.com/cn/contributor/。

你可能感兴趣的:(Leave a dent in the world:陶建辉,52岁程序员与TDengine一起成长的四年)