业务数据监控方法和系统技术方案

技术编号:12218251 阅读:533 留言:0更新日期:2015-10-21 20:05
本发明专利技术公开了业务数据监控方法和系统,其中方法包括:提前生成每M分钟业务数据预测值并存储;采集业务数据和预测值,存放到数据队列库队尾;所述数据队列库将其队头数据同时发给告警worker和存储worker,所述存储worker将接收到的数据存储到监控数据库;所述告警worker判断接收到的数据的类型,根据业务数据ID在所述监控数据库中获得对应预测值,并比较业务数据与对应预测值,根据告警规则判断是否触发告警,若否,则所述告警worker等待接收下一组数据,若是,则触发告警。本发明专利技术不仅能够高效实时监控电子商务网站业务数据,而且实现了多种告警方式,提高了电子商务网站的可用性。

【技术实现步骤摘要】

本专利技术涉及电子商务领域,特别涉及一种业务数据监控方法和系统
技术介绍
通常对于电子商务公司来说,网站业务数据量的涨跌决定这个公司的营收,其中业务数据量分为订单数据和非订单数据,非订单数据包括网站请求数、响应时间、定位成功率、集群的CPU (Central Processing Unit,中央处理单元)和连接数、网络流量、SOA(Service-Oriented Architecture,面向服务的体系结构)服务的请求数和错误数等。如何通过对业务数据量的监控告警来发现网站是否有问题,是一个业界的难题。现有技术中一般采用报表显示方式展示网站订单数据量的情况,譬如DASHBOARD (businessintelligence dashboard,BI dashboard的简称,商业智能仪表盘)采用的存储是0PENTSDB(Open-source Distributed, Scalable, Time Series Database,开源时序数据库),但是这只是一个报表的展示,不能做告警,且经常有延迟。
技术实现思路
本专利技术要解决的技术问题是为了克服现有技术中电子商务网站业务数据监控方式单一、效果差、实时性不高以及告警缺失的缺陷,提供一种可以实时告警的业务数据监控方法和系统。本专利技术是通过下述技术方案来解决上述技术问题:本专利技术提供一种业务数据监控方法,其特点是,包括:S1、提前生成每M分钟业务数据预测值,存储到数据源数据库;S2、从所述数据源数据库采集业务数据和预测值,存放到数据队列库队尾;S3、所述数据队列库将其队头数据同时发给告警worker和存储worker,所述存储worker将接收到的数据存储到监控数据库;S4、所述告警worker判断接收到的数据的类型,如果是预测值,不作处理并等待接收下一组数据;如果是业务数据,根据业务数据ID在所述监控数据库中获得对应预测值,并比较业务数据与对应预测值,根据告警规则判断是否触发告警,若否,则所述告警worker等待接收下一组数据,若是,则触发告警。其中,数据源数据库可以是一个,也可以是多个数据库,其用来存放业务数据和预测值,预测值可以和业务数据共同存放于一个数据源数据库,也可以分别存放于不同的多个数据源数据库。其中业务数据也可以来自于广义的数据源数据库API (Applicat1nProgramming Interface,应用程序编程接口)。其中,数据队列库用来按照先后顺序存储从数据源数据库中采集的业务数据和预测值,有队头和队尾,新采集的数据插入数据队列的队尾,每次数据队列库都从队头取数据,每取走一组数据,队头数据自动更新为下一组数据。其中,worker为程序中的消费者线程,分为两种类型,分别为告警worker消费者和存储worker消费者,每种worker消费者只负责消费制定的数据或者行为,具体为只负责存储或者告警。通过增加woker消费者数量可以提高数据队列库中数据的处理速度。其中,监控数据库用来存储存储worker消费者获得的数据,其存储的数据量根据数据采集粒度的不同而不同,如果数据采集粒度每分钟采集一次,也就是每组数据包括一分钟的业务数据量,那么监控数据库中可以存储的数据时间量为30天,如果数据采集粒度为一天采集一次,那么监控数据库中可以存储的数据时间量为2年。监控数据库中存储的数据用于后续告警操作步骤时比较使用,也可以用于web (互联网总称)端展示等。其中,&中所述的预测值可以是S 提前生成的每M分钟业务数据预测值,也可以是监控数据库中存储的上周同期历史数据值。较佳地,S1包括:Sn、根据同比四周的每日历史业务数据量,预测下周同期全天业务数据量;S12、根据同比四周的每M分钟历史业务数据量,依据季节性周期预测模型预测下周同期每M分钟季节指数;S13、用S11中预测的全天业务数据量与S12中预测的每M分钟季节指数相乘,得到每M分钟业务数据预测值。其中,季节性周期预测模型起源于受季节影响比较明显的商品需求订单预测,如啤酒在夏季的需求较大、冬季的需求较少。根据历年每个季度的订单总量,可以预测出未来一年各个季度的订单量。具体计算方法为:(I)根据历年订单总量及增长趋势,计算未来一年订单量F,计算方法有很多种,譬如最小二乘法或移动平均数法;(2)计算各年同季度订单的平均数,Ai ;(3)计算各年度订单总量的平均数,B ;(4)计算各个季度的季节指数,Ai/B ;(5)未来一年季节i的订单为:FXAi/B转化至本方案中预测每M分钟业务数据预测值,则本方案中的同比四周的每日历史业务数据量对应模型中历年订单数据,本方案中的I天对应模型中的I年,本方案中的每M分钟对应模型中的每个季节。本方案S12下周同期每M分钟季节指数预测采用如前面所述计算方法中(2)至(4)步骤原理计算得出;S13中每M分钟业务数据预测值依据前述计算方法中步骤(5)原理计算得出。本方案中,针对特殊节假日,每M分钟业务数据预测值的产生方法会自动调整,根据历年节假日的业务数据增长趋势为预测依据。较佳地,所述业务数据监控方法还包括配置告警规则并存储到告警规则数据库。本方案中,告警规则数据库是一个单独的数据库,仅用来存储所有的告警规则数据,同告警规则数据存放于数据源数据库相比,本方案可以保证告警worker能够快速的获取所需使用的告警规则数据,提高告警的实时性。较佳地,S4还包括根据业务数据ID从所述告警规则数据库中获得对应告警规则。较佳地,所述告警规则包括阀值、环比、同比、告警通知对象或告警通知方式。其中阀值是指一个固定的数值,可以是小数或负数等;环比是指本期统计数据与上期统计数据相比较,例如2015年7月统计数据与2015年6月统计数据相比较;同比是指本期统计数据与历史同时期统计数据相比较,例如2014年7月统计数据与2013年7月统计数据相比较。较佳地,所述告警通知方式为邮件、短信推送、语音或弹窗。本方案中,告警方式可以是发送邮件或者弹出对话窗口到告警通知对象、也可以发送手机短消息或者微信,或者直接通过扬声器发出告警语音。如果是发送邮件,可以同时在邮件中增加告警截图,这样告警通知对象可以在收到邮件的同时根据截图判断问题的严重性。较佳地,S11中预测下周同期全天业务数据量采用最小二乘法或移动平均数法。本方案中,预测下周同期全天业务数据量所采用的方法现有技术中有很多种,可以根据具体需求不同有所选择。较佳地,所述数据队列库为Zeromq,所述监控数据库为Graphite。其中,Zeromq是一个类似于Socket的一系列接口,是一个消息处理队列库。Graphite是一个用于采集网站实时信息并进行统计的开源项目,可用于采集多当前第1页1 2 3 本文档来自技高网...

【技术保护点】
一种业务数据监控方法,其特征在于,包括:S1、提前生成每M分钟业务数据预测值,存储到数据源数据库;S2、从所述数据源数据库采集业务数据和预测值,存放到数据队列库队尾;S3、所述数据队列库将其队头数据同时发给告警worker和存储worker,所述存储worker将接收到的数据存储到监控数据库;S4、所述告警worker判断接收到的数据的类型,如果是预测值,不作处理并等待接收下一组数据;如果是业务数据,根据业务数据ID在所述监控数据库中获得对应预测值,并比较业务数据与对应预测值,根据告警规则判断是否触发告警,若否,则所述告警worker等待接收下一组数据,若是,则触发告警。

【技术特征摘要】

【专利技术属性】
技术研发人员:程国强
申请(专利权)人:携程计算机技术上海有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1