艾巴生活网

您现在的位置是:主页>科技 >内容

科技

TDengine,一款专为物联网定制打造的大数据平台软件,正式开源!

2023-12-01 20:32:01科技帅气的蚂蚁
前两天,7月12日,我正式宣布了专门为物联网打造的大数据平台软件TDengine正式开源。我和淘思数据团队历时两年多写的10多万行C语言代码放到

TDengine,一款专为物联网定制打造的大数据平台软件,正式开源!

前两天,7月12日,我正式宣布了专门为物联网打造的大数据平台软件TDengine正式开源。我和淘思数据团队历时两年多写的10多万行C语言代码放到GitHuB上,分享给全世界的开发者。

在开源代码中,有三万多行C代码是我自己写的,包括定时器、RPC、内存管理等等一系列工具,这些都是我一直引以为豪的。更重要的是,我们完全开源了核心的存储引擎和计算引擎。存储引擎是我自己写的,经过仔细分析物联网的数据特点,所以有优越的数据读写性能。计算引擎由团队中的廖博士编写,创新性地解决了多表聚合的性能问题。宣布开源,开放核心代码,对我个人和淘思数据来说,是最有意义的一步。宣布之前我还忐忑不安,但宣布之后我觉得如释重负,轻松了很多,因为我终于做了一件自己想做的事,但是我没有我不敢做这件事,我一直在犹豫要不要做。

从1984年我在高一编写第一个Basic语言程序开始,35年过去了。在这35年里,我在中国大学学习流体力学和天体物理学,然后去了美国留学,在芝加哥摩托罗拉、3Com等公司工作。2008年回北京创业,开发了无数产品。从编程爱好者到专业软件工程师、高级工程师、架构师到CTO、CEO,可以说是典型的it人的发展路线。2016年底,时隔一年休息,我看到了物联网大数据的技术挑战和市场机遇。虽然那时我已经快50岁了,但我真的没有我不想下半辈子都在山里旅行,所以我有了在世界上留下一个凹痕又上了战场,冲在了最前线。我连续两个月一个人在家每天呆12个小时,写了18000行代码,写了一个高效的时间序列数据存储引擎,证明我设计的数据模型可以将数据插入和查询速度提高十倍以上。随后获得了史明资本和蛮子基金的天使投资,并组建了团队。2017年6月,淘思数据正式成立。

在团队的努力下,淘思数据于2018年8月发布了首个商业版TDengine。凭借产品的优越性能、简单易用、易学易用,在没有任何销售人员的情况下,收获了近十家付费客户,涉及智慧城市、数控机床、新能源、车联网、IT运维等多个行业,近期在电力行业实现了突破。在所有场合,当我介绍TDengine的时候,我都特别自豪,因为这个超级产品是我的团队一行行编码,无数个日日夜夜调试出来的。不仅远超国产,还拉下了世界同类产品第一。但我时不时会陷入沉思。50岁了,还在没日没夜的写代码,调试程序。会见客户的目的是什么?对一个程序员来说,最大的回报是什么?

一个程序就像一部作品。一个作品只有被欣赏才有价值,一个程序只有被更多的人使用才有价值。在过去的35年里,我开发了许多产品,但它们始终伴随着我。人们总会提起1991年我为中科大LB膜实验室开发的LB膜天平,1993年我为妹妹开发的财务软件。因为这两个软件,近30年过去了,人们依然每天都在使用。中科大LB膜实验室的老师同学,还有我妹妹,打开电脑看到了陶建辉的名字。这真的是一件让我兴奋和自豪的事情,因为他们证明了我的价值。

如何让更多人使用TDengine?Hadoop这种广泛应用于物联网、车联网、工业互联网等行业的大数据处理系统如何尽快被淘汰?作为一个基础软件,一个中间件产品,如何在全球推广,而不是只在中国吹嘘?我自然想到了开源。但是什么开源,什么不开源,和很多朋友沟通,举棋不定。

最后,我意识到,要开源,就必须开源最核心、最有价值的部分。因为核心部分没有分享给大家,所以大家采用你的产品没有意义。毕竟市场上的替代方案太多了。只有充分展示自己最美最吸引人的地方,才能吸引更多人使用。所以我最终决定完全开源核心的存储引擎、计算引擎和全套工具。但是怎么才能让更多人了解我们的结构呢?决定下大力气写文档,把我们技术实现的细节写出来,而这在相当程度上可以回答很多关于性能的问题。开源的目的不仅仅是为了中国的开发者,也是为了全世界的开发者,所以写完整个英文文档是需要时间的。TDengine只是一个中间件,不是最终的应用,于是团队又开始写应用案例,并结合车联网、IT运维、数控机床等实际场景。用中英文写出了如何使用TDengine。

100亿条记录查询的现场演示吸引了众多程序员。

从高中开始,我写程序的爱好就是用少量的代码追求极致的运行效率和极致的用户体验。2008年,我创立了何新。我自己写的WindowsMobile的何新客户端只有18K,可以通过移动互联网免费收发短信、彩信、邮件。快乐妈咪成立于2013年。胎心算法程序的源代码不到600行。TDengine是我风格的延续。不使用任何第三方组件,1.5M安装包就修复了一个物联网大数据平台,从下载、安装到运行不超过5秒。如果有程序员仔细研究我们的源代码,看到我们是怎么做的,我会非常高兴。如果一个程序员能从过去学到我的方法,裁掉他臃肿的系统,提高它的性能,我会更加心花怒放。昨天有人在微信群里跟我说RPC模块高效简洁,准备采用,真的让我有点忘乎所以。

写财务软件的时候,LB膜平衡程序,是我一个人的战斗。可喜的是,这次TDengine是团队作战。为了开源,团队准备了一个月。90后的洪泽和蒋易总是担心我们的文件写得不够清楚细致,大家都不会我不理解他们。因此,他们不断地改变他们。廖博士一直在思考如何规范代码,如何让产品更稳定,性能对比测试文档的用词一丝不苟。盛亮和李惠思考如何使配置参数更简单,如何使安装过程更顺利。即使是我们团队中唯一的女孩也充满激情,尽管她没有师为我们在程写程序。最开心的是我刚高中毕业的儿子主动承担了整个新版网站的开发,从设计、前端、后端、浏览器适配、数据分析到搜索引擎优化。这一切都是他自己做的,他不放过任何一个细节,无论是用词、语法错误还是排版风格,都认真研究。我很满足有这样一个团队。

在宣布开源之前,我没有不要咨询投资者。然而,在我宣布后,史明资本的明明和尼尔尽快转发了这个消息,并问我需要什么样的支持。蛮子基金、永辉瑞金和文清投资也支持尽快转发。感谢大家的信任,感谢大家对程序员感情的支持。有了你的后盾,我们的开源之路只会更顺畅。

写了35年的程序,终于曝光了我的看家本领,分享一下。在两年多的时间里,将近20万行代码被放到了GitHub上。很多朋友关心地问我,开源怎么盈利?抛开开源的商业模式不谈,我认为只要我们的开源代码真的创造了价值,有人使用,那么我和我的团队就是最大的赢家。如果30年后,有人仍在使用TDengine,即使它这只是其中的一个模块和功能之一,即这是对我们两年夜以继日奋斗的最大肯定,也是对我这个程序员最大的回报。希望30年后,我还能继续为TDengine贡献代码,这将是我不老的最好证明。

如果你想支持我这个50岁的程序员和淘思数据团队,以及来自中国的底层IT核心技术,请在GitHub上搜索下载TDengine源代码并使用。如果你发现不对劲,我只会高兴。我想不睡觉尽快解决。如果你喜欢,更欢迎你参与我们的项目。五年内,全球90%以上的数据将被物联网收集。如果我们开发出一个极其高效的数据处理引擎来处理这些数据,而你是贡献者之一,那将是一件值得骄傲的事情。

再多的钱也不能让人在历史上留下痕迹,但一部好的作品是可以被后人传承和品味的。愿我牵头开发的TDengine成为杰作,在世界上留下印记!