海量数据监控如何选择存储方案? 看转转、得物这些企业是怎么做的
对于互联网业务而言,为保证服务的稳定运行,就要时刻关注服务器、服务调用、网络状况等各项指标,单是监控数据就存在非常大的量级。为了应对这种挑战,结合监控数据的特点,许多企业开始选择符合业务需求的时序数据库(Time Series Database),以便更好地支持运维监控。
转转 x TDengine
“使用 TDengine 完成改造后,线上的监控状态达到预期,满足当前业务需求,目前运行非常稳定。且配合 Grafana后,每个域名的流量、连接数、响应时间等信息都能够实时监控到。无论是在成本、性能层面,还是在使用的便利性上,TDengine 都具有非常大的优势,在我们的实践中也得到了证明,尤其是成本管控上效果非常显著。”
业务背景
转转的业务使用了 Nginx 作为反向代理,为保证代理层可用性,需要对 Nginx 进行实时状态监控。在服务器的基础监控的选择上,其将 OpenFalcon 逐步替换为夜莺,对 Nginx 的 reqstat 监控最初也使用了这两种。但是这两大监控都有一个共同缺点,即在展示时有条数限制,导致域名数量和机器数量相乘后数据量增多的情况下,无法满足需求。这种情况下,转转考虑对现有监控模块进行升级改造,重新进行数据库选型,最终在对比 InfluxDB 及 TDengine 之后做出了选择。
架构图
同程旅行 x TDengine
“聚焦到实际效果上,TDengine 数据写入性能很强。原本我们的单套存储系统需要 10 多台高配机器,IO 平均 30% 最高 100% 的情况下才能写完数据;现在只需要 7 台机器,并且 CPU 消耗在 10% 左右、磁盘 IO 消耗在 1% 左右,这点非常的棒。同时,其数据读取接入过程也很顺利。使用 RESTful 接口后,结合 TDengine 自带的强大聚合函数功能,很容易就能计算出想要的结果。”
业务背景
同程旅行有一套自研的基础监控系统“夜鹰监控”。目前夜鹰监控使用情况为百万级别 endpoint、亿级 metric、每秒 200 万并发写入以及 2 万并发查询。其存储组件基于 RRD 存储,RRD 存储虽然拥有很好的性能,却也存在着一些问题——基于内存缓存定期写入 RRD,在机器重启后会丢失部分数据。针对此问题,夜鹰监控做了很多高可用设计,但还是很难满足业务需求。
随着基础监控系统接入指标的增长,目前 2 套存储系统在资源消耗方面一直在增长,同时业务对监控也提出了更多的聚合计算功能要求。基于此,同程旅行需要从 InfluxDB、TDengine、Prometheus 等多款时序数据库中寻找一个新的来代替现有的存储系统,以减少运维成本。
架构图
得物 x TDengine
“目前 TDengine 承载了数百亿数据,在生产环境运行平稳, CPU 使用率日常不到 1 % ,内存使用率稳定在 25 % 以下。大批量的写入,耗时基本也能保持在 10 ms,属于比较理想的范围;不管是大数据量范围的聚合查询,还是指定查询某一小区间内的全部数据,查询效率都非常优异;在存储上,我们的全量数据分散在三台机器中,根据计算得知 TDengine 对于监控数据的压缩率达 10 %,相当可观。”
业务背景
作为一家互联网电商公司,得物有许多系统和场景都需要做流量的监控和防护,一天就能够产生数亿数据,写入速度达到万 TPS ,该数据量级无法用传统的关系型数据库处理,亟需一款能够承载大量的流量监控数据、并能对数据进行存储和高效查询的数据库。在对比了 InfluxDB 、OpenTSDB 、Cassandra 等时序数据库的性能后,其最终选择 TDengine 。
架构图
浙商银行 x TDengine
“我们存储于 TDengine 中的数据主要为时序类数据,如CPU、内存使用率等系统运行数据,微服务调用、分布式锁、数据库操作处理时间,业务线程池、连接池等各类指标数据。目前微服务可视化服务治理平台对并发要求较高,但是 TDengine 可以很好地满足需求,插入/查询平均耗时均在 10ms 以内。”
业务背景
浙商银行微服务可视化治理平台是基于 Java 体系自研的微服务治理监控平台,为行内基于统一的微服务框架开发的应用提供全面、实时的微服务治理监控功能。在这样的业务场景中,数据量大、监控指标繁杂成了主要挑战,浙商银行需要一款能高效处理时序数据的工具。在明确了核心诉求之后,其调研了包括 Apache Druid、InfluxDB 和 TDengine 在内的几款典型时序数据库,在对比后决定尝试 TDengine。
架构图
结语
从上述企业的具体数据架构改造实践中我们能够看到,在应对海量时序数据的 IT 运维监控需求时,时序数据库明显要更加专业,在性能和成本管控上都上升了一个维度。而这些行业的头部企业在众多时序数据库产品中都选择了 TDengine,个中原因从改造效果中也可见一斑,有同样需求的小伙伴也可以通过阅读具体的案例细节了解更多。TDengine 目前已经运营了几十个用户交流群,如果你有要进群沟通了解的需求,可以添加小T微信:tdengine1 。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
借AI之势,打破创意与想象的边界
IMMENSE、36氪|作者 01 “未来是属于AI的” 3月2日,内容创作圈大地震。 就在3月2日凌晨,OpenAI宣布开放ChatGPT本体模型API,其价格为1k tokens/$0.002。也就是说,从这一天开始,任何企业都能让ChatGPT为自己打工,而价格仅仅是每输出100万个单词18元人民币(2.7美元)。 如果对这个价格没有概念的话,举个例子。今年,河南省鹤壁市淇县某机动车维修店招聘文案编辑,店里开出的最低薪酬是2000元/月,学历不限。 图片方面,早在ChatGPT走红之前,AI绘画早已引发了艺术圈的一场大地震。 去年9月,一幅由AI创作的绘画作品《太空歌剧院》获得美国科罗拉多州艺术博览会数字艺术类别冠军,几乎标志着AI作画的“AlphaGo时刻”。 《太空歌剧院》(Théâtre D'opéra Spatial) 这幅作品是基于AI生成的画作加上人类画师的后期绘制,这一点被业内人士大为诟病,指责作者以AI为噱头,实际上依旧需要人类加工。 这些质疑AI作画能力的人忽略了一个重要因素——进化。 人们往往极大低估了AI大模型的学习与进步能力。仅仅在几年之前,人工智能还是被...
- 下一篇
ElasticSearch还能性能调优,涨见识、涨见识了!!!
ElasticSearch 性能调优 作者: 博学谷狂野架构师 GitHub地址:GitHub地址 (有我们精心准备的130本电子书PDF) 概述 性能优化是个涉及面非常广的问题,不同的环境,不同的业务场景可能会存在不同的优化方案,本文只对一些相关的知识点做简单的总结,具体方案可以根据场景自行尝试。 配置文件调优 通过elasticsearch.yml配置文件调优 内存锁定 允许 JVM 锁住内存,禁止操作系统交换出去 由于JVM发生swap交换会导致极大降低ES的性能,为了防止ES发生内存交换,我们可以通过锁定内存来实现,这将极大提高查询性能,但同时可能造成OOM,需要对应做好资源监控,必要的时候进行干预。 修改ES配置 修改ES的配置文件elasticsearch.yml,设置bootstrap.memory_lock为true COPY#集群名称 cluster.name: elastic #当前该节点的名称 node.name: node-3 #是不是有资格竞选主节点 node.master: true #是否存储数据 node.data: true #最大集群节点数 node...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7设置SWAP分区,小内存服务器的救世主
- Hadoop3单机部署,实现最简伪集群
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题