其他分享
首页 > 其他分享> > TDengine助力顺丰科技大数据监控改造

TDengine助力顺丰科技大数据监控改造

作者:互联网

作者:尹飞 小T导读 :顺丰科技大数据集群每天需要采集海量监控数据,以确保集群稳定运行。之前虽然采用了OpenTSDB+HBase作为大数据监控平台全量监控数据的存储方案,但有不少痛点,必须对全量监控数据存储方案进行改造。通过对IoTDB、Druid、ClickHouse、TDengine等时序数据存储方案的调研,最终我们选择了TDengine。大数据监控平台采用 TDengine 后,在稳定性、写入性能、查询性能等方面都有较大的提升,并且存储成本降低为原有方案的1/10。  

场景与痛点

顺丰科技致力于构建智慧大脑,建设智慧物流服务,持续深耕大数据及产品、人工智能及应用、综合物流解决方案等领域,在中国物流科技行业处于领先地位。为了保证各类大数据服务的平稳运行,我们围绕OpenFalcon搭建了大数据监控平台。由于OpenFalcon本身采用的是rrdtool作为数据存储,不适合做全量监控数据的存储,于是我们采用了OpenTSDB+HBase作为大数据监控平台全量监控数据的存储方案。 目前整个平台平均写入数十亿条/天。随着大数据监控平台接入的数据量越来越大,我们有很多痛点需要解决,包括依赖多、使用成本高和性能不能满足等问题。

技术选型

为解决上述问题,我们有必要对全量监控数据存储方案进行升级。在数据库选型方面,我们对如下数据库做了预研和分析: 通过综合对比,我们初步选定TDengine作为监控数据存储方案。TDengine支持多种数据导入方式,包括JDBC和HTTP模式,使用都比较方便。由于监控数据写入对性能要求比较高,我们最后采用了Go Connector,接入过程需要做如下操作:

数据建模

TDengine在接入数据前需要根据数据的特性设计schema,以达到最好的性能表现。大数据监控平台数据特性如下: 根据上述特点,我们构建了如下的数据模型。   按照TDengine建议的数据模型,每一种类型的数据采集点需要建立一个超级表,例如磁盘利用率,每个主机上的磁盘都可以采集到磁盘利用率,那么就可以将其抽象成为超级表。结合我们的数据特点和使用场景,创建数据模型如下: 库结构如下: 超级表结构如下:  

落地实施

大数据监控平台是上层大数据平台稳定运行的底座,需要确保整个系统的高可用性;随着业务量增加,监控数据量持续增长,要保证存储系统能方便的进行横向扩展。基于以上两点,TDengine落地总体架构如下:   为保证整个系统的高可用和可扩展性,我们前端采用nginx集群进行负载均衡,保证高可用性;单独分离出客户端层,方便根据流量需求进行扩容缩容。 实施难点如下。  

改造效果

完成改造后,TDengine集群轻松扛住了全量监控数据写入,目前运行稳定。改造后架构图如下:

总结

目前从大数据监控这个场景看,TDengine在成本,性能和使用便利性方面都有非常大的优势,尤其是在成本方面带来很大惊喜。在预研和项目落地过程中,涛思的工程师提供了专业、及时的帮助,在此表示感谢。希望TDengine能够不断提升性能和稳定性,开发新特性,我们也会根据自身需求进行二次开发,向社区贡献代码。祝TDengine越来越好。对于TDengine,我们也有一些期待改进的功能点: 后续我们也将在顺丰科技的更多场景中尝试应用TDengine,包括:

关键词:站长资讯中心站长资讯站长新闻

标签:助力,TDengine,顺丰,性能,写入,查询,监控,数据
来源: https://www.cnblogs.com/0591jb/p/14753140.html