CN111026749A - 业务告警方法及装置 - Google Patents
业务告警方法及装置 Download PDFInfo
- Publication number
- CN111026749A CN111026749A CN201911095792.4A CN201911095792A CN111026749A CN 111026749 A CN111026749 A CN 111026749A CN 201911095792 A CN201911095792 A CN 201911095792A CN 111026749 A CN111026749 A CN 111026749A
- Authority
- CN
- China
- Prior art keywords
- sql
- streaming
- platform
- service
- alarm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0635—Risk analysis of enterprise or organisation activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Technology Law (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本说明书的实施例提供业务告警系统及方法。在该业务告警系统中,数据格式转换平台对从一个或多个业务数据源获取的流式业务数据进行数据格式转换。流式计算平台根据基于SQL语句定义的业务指标来对经过格式转换的流式业务数据进行SQL计算,并将SQL计算结果通知给中间件平台进行存储。业务告警处理平台从中间件平台获取SQL计算结果,并基于告警规则进行告警规则计算以确定是否需要业务告警。流式计算平台的SQL计算结果通知过程以及业务告警处理平台的SQL计算结果获取过程是异步执行的。
Description
技术领域
本说明书的实施例通常涉及计算机领域,更具体地,涉及业务告警方法及装置。
背景技术
服务提供商会提供各种业务应用来为用户提供应用服务,比如,支付宝,微信等。随着业务应用的推广和发展,业务应用(例如,支付宝)的用户数量快速增长,激增的用户流量产生了海量业务数据。例如,每天有超过七亿人同时在使用支付宝的各种功能,仅支付宝风控系统的基础事件属性加上策略稽核日志,每分钟产生将近100G的数据。在业务应用飞速发展和扩张的同时,有成百上万个恶意用户每天都在寻找业务应用的潜在漏洞来非法获取利益,因此需要对业务应用的运营进行风险监控,以防止或降低恶意用户造成的损失。如何快速地从海量业务数据中发现与业务监控需求对应的业务风险并及时进行业务告警,成为亟待解决的问题。
发明内容
鉴于上述问题,本说明书的实施例提供了流式计算方法、业务告警方法及装置。利用该流式计算方法,能够根据业务监控需求来编写基于SQL语句定义的业务指标,所编写的SQL语句包括流式计算的聚合维度,并且使用SQL语句来对流式业务数据进行SQL计算,从而使得能够根据不同的业务监控需求来定制对应的具有SQL语句形式的业务指标,并且基于SQL计算来快速地实现流式业务数据的流式计算。此外,利用该业务告警方法,将流式业务数据的流式计算和业务告警处理解耦在不同的计算平台中异步执行,可以提高业务告警系统的鲁棒性,并且可以根据不同场景的业务监控需求来定制流式计算平台和业务告警处理平台的处理能力。
根据本说明书的实施例的一个方面,提供了一种流式计算方法,包括:接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;基于所述SQL语句对流式业务数据进行SQL计算,所述流式业务数据是结构化数据;以及将SQL计算结果通知给中间件平台来进行存储,以供业务告警处理平台异步获取。
可选地,在上述方面的一个示例中,所述SQL语句还可以包括流式计算的过滤维度和过滤条件。
可选地,在上述方面的一个示例中,所述中间件平台可以是消息中间件平台,将SQL计算结果通知给中间件平台,以供业务告警处理平台异步获取可以包括:将所述SQL计算结果以消息的方式通知给所述中间件平台,所述消息包括业务指标以及对应的SQL计算结果。
可选地,在上述方面的一个示例中,所述SQL计算结果可以包括多种计算粒度的SQL计算结果,最小计算粒度的SQL计算结果是基于所述流式业务数据计算出的,以及剩余计算粒度的SQL计算结果是基于所述最小计算粒度的SQL计算结果计算出的。
可选地,在上述方面的一个示例中,在基于所述SQL语句对流式业务数据进行SQL计算之前,所述方法还可以包括:从一个或多个业务数据源获取原始流式业务数据;以及将所述原始流式业务数据转换为key-value格式的流式业务数据。
可选地,在上述方面的一个示例中,所述SQL语句可以是用户基于业务监测需求以及维度库编写的,以及所述维度库可以是根据具有key-value格式的抽样流式业务数据的Key值来更新的,所述抽样流式业务数据通过对抽样原始流式业务数据进行key-value格式转换而得到。
根据本说明书的实施例的另一方面,提供一种业务告警方法,包括:在流式计算平台处,接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;在所述流式计算平台处,基于所述SQL语句对流式业务数据进行SQL计算并将SQL计算结果通知给中间件平台来进行存储,所述流式业务数据是结构化数据;以及在业务告警处理平台处,响应于从所述中间件平台获取到SQL计算结果,对所获取到的SQL计算结果进行告警规则计算,以确定是否需要业务告警,其中,所述流式计算平台处的SQL计算结果通知以及所述业务告警处理平台处的SQL计算结果获取是异步执行的。
可选地,在上述方面的一个示例中,所述SQL语句还可以包括流式计算的过滤维度和过滤条件。
可选地,在上述方面的一个示例中,所述中间件平台可以是消息中间件平台,所述SQL计算结果采用消息的方式通知给所述中间件平台,以及所述消息可以包括业务指标以及对应的SQL计算结果。
可选地,在上述方面的一个示例中,所述业务告警处理平台处的告警规则计算可以是基于告警模型的告警规则计算。
可选地,在上述方面的一个示例中,所述SQL计算结果可以包括多种计算粒度的SQL计算结果,最小计算粒度的SQL计算结果可以是基于所述流式业务数据计算出的,以及剩余计算粒度的SQL计算结果可以是基于所述最小计算粒度的SQL计算结果计算出的。
可选地,在上述方面的一个示例中,所述方法还可以包括:在所述业务告警处理平台处,在确定需要业务告警时,向用户通知业务告警消息。
可选地,在上述方面的一个示例中,在基于所述SQL语句对流式业务数据进行SQL计算之前,所述方法还可以包括:从一个或多个业务数据源获取原始流式业务数据;以及将所述原始流式业务数据转换为key-value格式的流式业务数据。
可选地,在上述方面的一个示例中,所述SQL语句可以是根据业务监控需求和维度库编写的,以及所述维度库可以是基于具有key-value格式的抽样流式业务数据的Key值来更新的,所述抽样流式业务数据通过对抽样原始流式业务数据进行key-value格式转换而得到。
根据本说明书的实施例的另一方面,提供一种流式计算平台,包括:业务指标接收单元,接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;SQL计算单元,基于所述SQL语句对流式业务数据进行SQL计算,所述流式业务数据是结构化数据;以及SQL计算结果通知单元,将SQL计算结果通知给中间件平台来进行存储,以供业务告警处理平台异步获取。
可选地,在上述方面的一个示例中,所述中间件平台可以是消息中间件平台,以及所述SQL计算结果通知单元将所述SQL计算结果以消息的方式通知给所述中间件平台,所述消息包括业务指标以及对应的SQL计算结果。
可选地,在上述方面的一个示例中,所述流式计算平台还可以包括:业务数据获取单元,从一个或多个业务数据源获取原始流式业务数据;以及数据格式转换单元,将所述原始流式业务数据转换为key-value格式的流式业务数据。
可选地,在上述方面的一个示例中,所述流式计算平台还可以包括:维度库维护单元,基于具有key-value格式的抽样流式业务数据的Key值来更新维度库,所述抽样流式业务数据是通过对抽样原始流式业务数据进行key-value格式转换而得到,所述SQL语句是根据业务监控需求和所述维度库编写的。
根据本说明书的实施例的另一方面,提供一种业务告警系统,包括:如上所述的流式计算平台;中间件平台;业务告警处理平台,所述业务告警处理平台包括:SQL计算结果获取单元,从所述中间件平台获取到SQL计算结果;以及告警规则计算单元,基于所获取到的SQL计算结果进行告警规则计算,以确定是否需要业务告警,其中,所述流式计算平台处的SQL计算结果通知以及所述业务告警处理平台处的SQL计算结果获取是异步执行的。
可选地,在上述方面的一个示例中,所述业务告警处理平台还可以包括:告警消息通知单元,在确定需要业务告警时,向用户通知业务告警消息。
根据本说明书的实施例的另一方面,提供一种电子设备,包括:一个或多个处理器,以及与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述的流式计算方法。
根据本说明书的实施例的另一方面,提供一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的流式计算方法。
根据本说明书的实施例的另一方面,提供一种电子设备,包括:一个或多个处理器,以及与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上所述的业务告警方法。
根据本说明书的实施例的另一方面,提供一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的业务告警方法。
附图说明
通过参照下面的附图,可以实现对于本说明书的实施例内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。
图1示出了根据本说明书的实施例的业务告警系统的方框图;
图2示出了根据本说明书的实施例的统一数据格式处理过程的示意图;
图3示出了根据本说明书的实施例的流式计算过程的流程图;
图4示出了根据本说明书的实施例的流式计算过程的示意图;
图5示出了根据本说明书的实施例的业务告警处理过程的示意图;
图6示出了根据本说明书的实施例的数据格式转换平台的方框图;
图7示出了根据本说明书的实施例的流式计算平台的方框图;
图8示出了根据本说明书的实施例的业务告警处理平台的方框图;
图9示出了根据本说明书的实施例的用于实现流式业务数据的流式计算的电子设备的方框图;
图10示出了根据本说明书的实施例的用于实现业务告警处理的电子设备的方框图。
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明书的实施例内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
在现有的业务告警方案中,在数据量比较大的情况下,通常是使用普通流式引擎对原始流式业务数据中的某类值进行聚合统计。这种处理方式适用于数据结构和统计维度都相对简单的应用场景,但是不能应付具有海量数据和复杂业务数据结构的应用场景。另外,扩展性非常差,原始流式业务数据的变动会带来业务指标的调整,并且不支持不同数据源的接入。
下面将结合附图来描述根据本说明书的实施例的业务告警系统及业务告警方法。
图1示出了根据本说明书的实施例的业务告警系统1的方框图。
如图1所示,业务告警系统1包括数据格式转换平台10、流式计算平台20、中间件平台30和业务告警处理平台40。
数据格式转换平台10用于从一个或多个业务数据源获取原始流式业务数据,并且对所接收的原始流式业务数据进行统一数据格式转换,例如,将所接收的原始流式业务数据转换为key-value格式的流式业务数据。转换后的流式业务数据是结构化业务数据。在本说明书中,一个或多个业务数据源例如可以包括风控系统、决策系统或其他数据源。相应地,原始流式业务数据可以包括风控事件、决策日志等。
图2示出了根据本说明书的实施例的统一数据格式处理过程200的一个示例的示意图。
如图2所示,风控系统产生的风控事件以及决策系统产生的决策日志被存放在sls类型的存储介质(下文中简称为“sls存储介质”)中,以及其他数据源产生的原始流式业务数据被存放在antq类型的存储介质(下文中简称为“antq存储介质”)中。这里,sls存储介质可以针对日志类数据提供一站式服务。用户无需开发就能快捷完成数据采集、消费、投递以及查询分析等功能,帮助提升运维、运营效率,建立DT时代的海量日志处理能力。Antq存储介质可以提供一套基于生产者/消费者模型的异步消息通信机制,并且可以应用于分布式系统或组件之间的消息通信。
在进行业务告警处理时,从sls存储介质和antq存储介质中读取数据。例如,可以分别利用sls日志服务器和antq服务器的读取器reader来读取数据。在从sls存储介质和antq存储介质中读取数据后,分别经由sls适配器/antq适配器以及json解析器/xml解析器进行解析适配,从而将原始流式业务数据转换为统一数据格式的流式业务数据。在本说明书中,所述统一数据格式例如可以包括key-value格式。key-value格式简单易处理,容易扩展,并且有助于维度和指标的配置。
经过统一数据格式转换后的流式业务数据(下文中称为“第一流式业务数据”)被发送到流式计算平台20。流式计算平台20用于根据用户定义的业务指标来对第一流式业务数据进行流式计算。在本说明书中,术语“业务指标”通常用于指示对业务数据进行流式计算的流式计算方式或者流式计算规则。所述业务指标至少包括流式计算的聚合维度。在另一示例中,所述业务指标还可以包括流式计算的过滤维度和过滤条件等。
图3示出了根据本说明书的实施例的流式计算过程的流程图;以及图4示出了根据本说明书的实施例的流式计算过程的示意图。
如图3所示,在块310,接收用户配置的业务指标。例如,用户可以通过业务指标配置平台来配置业务指标。这里,业务指标是基于SQL语句定义的。所述SQL语句至少包括流式计算的聚合维度。此外,可选地,所述SQL语句还可以包括过滤维度和过滤条件。
在本说明书的实施例中,用户可以基于维度库中的维度以及业务监控需求来编写SQL语句。所述维度库是基于key定义的。所编写的SQL语句以流式SQL的形式展现。例如,所编写的SQL语句可以是:select count(“性别”)from origin_data_stream group bydimension1 where“城市”=“杭州”and“渠道”=“电信”。
在上面的SQL语句中,origin_data_stream表示第一流式业务数据,“性别”、“城市”和“渠道”是维度库中的三个维度,其中,维度“性别”的维度值可以包括“男”和“女”,维度“城市”的维度值可以包括“杭州”、“北京”和“上海”,维度“渠道”的维度值可以包括“电信”、“移动”和“联通”。维度“性别”是聚合维度,维度“城市”和“渠道”是过滤维度,以及“城市”=“杭州”和“渠道”=“电信”是过滤条件。该SQL语句所定义的业务指标表示“在‘城市’的维度值是‘杭州’以及‘渠道’的维度值是‘电信’的情况下,单位时间粒度内维度‘性别’的维度值‘男’和‘女’的出现次数”。这里,单位时间粒度可以是预先规定的时间粒度,比如,“分钟”,“小时”,“天”等。
在本说明书的实施例中,用于编写SQL语句的维度库可以基于具有key-value格式的抽样流式业务数据的key值来更新,所述抽样流式业务数据通过对抽样原始流式业务数据进行key-value格式转换而得到。例如,如图4所示,可以定时抽样原始流式业务数据,并且将抽样的原始流式业务数据转换为key-value格式,从而得到图4中示出的key-value数据流。然后,从key-value数据流中进行结构化抽取,以得到该key-value数据流中包含的key值。在得到各个key值后,基于所得到的key值来定义对应的维度,并且使用所得到的维度更新维度库。比如,如果基于该抽样流式业务数据得到的维度中存在维度库中不存在的维度,则将该维度添加到维度库中。按照这种方式,可以确保用户在进行SQL语句编写时,可以选择到所有待统计的维度属性。
在接收到业务指标后,在块320,基于SQL语句来对第一流式业务数据进行SQL计算,以得到SQL计算结果(即,业务指标数值)。在本说明书的实施例中,流式计算平台20可以执行多种计算粒度的SQL计算,从而得到不同的SQL计算结果,最小计算粒度的SQL计算结果是基于第一流式业务数据计算出的,以及剩余计算粒度的SQL计算结果是基于最小计算粒度的SQL计算结果计算出的。
例如,可以将最小计算粒度(例如,分钟粒度)的SQL计算结果存储在Hbase中,然后,基于Hbase的最小计算粒度的SQL计算结果再计算其它计算粒度(例如,小时粒度和天粒度)的SQL计算结果,如图4所示。
在如上完成SQL计算后,在块330,将SQL计算结果通知给中间件平台30,并且存储在中间件平台30中,以供业务告警处理平台异步获取。中间件平台30用于存储流式计算平台20的流式计算结果。在流式计算平台20将SQL计算结果通知给中间件平台30进行存储后,流式计算平台20的流式计算过程立即结束,无需等待业务告警处理过程的结果反馈,并且可以开始执行另一流式计算过程。
在本说明书实施例的一个示例中,中间件平台30可以是消息中间件平台,例如,Msgbroker。Msgbroker是基于推模式的消息中间件,可以提供高可靠、高实时的异步消息通信服务。Msgbroker可以充当交易链路的核心节点。应用Msgbroker可以降低执行消息通信的系统/设备之间的耦合度。
在中间件平台30是消息中间件平台的情况下,流式计算平台20将SQL计算结果以消息的方式通知给中间件平台30,所述消息包括业务指标以及对应的SQL计算结果。这里,针对每个SQL计算结果,都组装一条消息来通知给中间件平台30。例如,在上述SQL语句中,针对“男”和“女”分别存在一个SQL计算结果,由此组装2条消息来发送给中间件平台30。
业务告警处理平台40用于采用异步通信的方式来从中间件平台30获取SQL计算结果,并且基于告警规则来对所获取的SQL计算结果进行告警规则计算,以确定是否需要业务告警。例如,业务告警处理平台40可以定时从中间件平台30获取SQL计算结果。此外,在另一示例中,中间件平台30在接收到SQL计算后,可以异步通知业务告警处理平台40可以开始执行业务告警处理,由此,业务告警处理平台40触发从中间件平台30获取SQL计算结果。这里要说明的是,流式计算平台20处的SQL计算结果通知以及业务告警处理平台40处的SQL计算结果获取是异步执行的。
此外,可选地,在业务告警处理平台40完成告警规则计算后,如果确定需要业务告警,则业务告警处理平台40还可以向用户通知业务告警消息。所述业务告警消息可以采用任何格式的告警消息,比如,文本告警消息,音频告警消息、视频告警消息等。此外,在一个示例中,业务告警消息的通知方式可以在告警规则中进行定义。
图5示出了根据本说明书的实施例的业务告警处理过程的一个示例的示意图。如图5所示,业务告警处理平台40从Msgbroker获取SQL计算结果,然后基于业务告警规则来对SQL计算结果执行告警规则计算。这里,告警规则计算可以是基于告警模型的告警规则计算。所述告警模型可以是与业务监控需求和/或业务监控场景适应的的告警模型,例如,可以使用K-means来判断是否有离群指标值,以及使用高斯算法来判断一段时间内的指标值是否满足正态分布。此外,业务告警规则可以是用户基于业务监控需求和/或业务监控场景定义的。在确定需要业务告警后,可以按照告警规则中定义的通知方式来向用户发送告警消息。
如上参照图1到图5对根据本说明书的实施例的业务告警方法进行了描述。
利用根据本说明书实施例的业务告警方法,通过使用SQL语句来定义需要进行流式计算的业务指标,使得业务指标的定义通用型强,从而可以在不修改原始流式业务数据的情况下灵活地配置流式计算逻辑,以适合各种不同的流式计算应用场景。
此外,利用根据本说明书实施例的业务告警方法,通过在流式计算平台和业务告警处理平台之间设置中间件平台,中间件平台中存储流式计算平台的流式计算结果,并且供业务告警处理平台异步获取,从而使得流式计算过程和业务告警处理过程完全解耦,由此提高业务告警系统的鲁棒性,并且可以根据不同场景的业务监控需求来定制流式计算平台和业务告警处理平台的处理能力。
此外,利用根据本说明书实施例的业务告警方法,可以通过在告警规则条件中调用模型来进行业务告警处理,提高业务告警处理的准确性。
图6示出了根据本说明书的实施例的数据格式转换平台10的方框图。如图6所示,数据格式转换平台10可以包括业务数据获取单元11和数据格式转换单元12。
业务数据获取单元11被配置为从一个或多个业务数据源获取原始流式业务数据。数据格式转换单元12被配置为将原始流式业务数据转换为key-value格式的流式业务数据。
图7示出了根据本说明书的实施例的流式计算平台20的方框图。如图7所示,流式计算平台20包括业务指标接收单元21、SQL计算单元22和SQL计算结果通知单元23。
业务指标接收单元21被配置为接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度。业务指标接收单元21的操作可以参考上面参照图3描述的块310的操作。
SQL计算单元22被配置为基于SQL语句对流式业务数据进行SQL计算,所述流式业务数据是结构化数据。SQL计算单元22的操作可以参考上面参照图3描述的块320的操作。
SQL计算结果通知单元23被配置为将SQL计算结果通知给中间件平台来进行存储,以供业务告警处理平台异步获取。SQL计算结果通知单元23的操作可以参考上面参照图3描述的块330的操作。
此前,流式计算平台20还可以包括维度库维护单元(未示出)。维度库维护单元基于具有key-value格式的抽样流式业务数据的Key值来更新维度库,所述抽样流式业务数据是通过对抽样原始流式业务数据进行key-value格式转换而得到。
图8示出了根据本说明书的实施例的业务告警处理平台40的方框图。如图8所示,业务告警处理平台40包括SQL计算结果获取单元41和告警规则计算单元42。
SQL计算结果获取单元41被配置为从中间件平台30获取SQL计算结果。例如,在一个示例中,SQL计算结果获取单元41可以定时从中间件平台30获取SQL计算结果。此外,在另一示例中,中间件平台30在接收到SQL计算后,可以异步通知业务告警处理平台40可以开始执行业务告警处理,由此,SQL计算结果获取单元41触发从中间件平台30获取SQL计算结果。这里要说明的是,SQL计算结果获取单元41采用异步通信的方式来从中间件平台30获取SQL计算结果。换言之,流式计算平台20的SQL计算结果通知以及业务告警处理平台40的SQL计算结果获取是异步执行的。
告警规则计算单元42被配置为基于所获取到的SQL计算结果进行告警规则计算,以确定是否需要业务告警。例如,告警规则计算单元42可以基于业务告警规则来对SQL计算结果执行告警规则计算。这里,告警规则计算可以是基于告警模型的告警规则计算。所述告警模型可以是与业务监控需求和/或业务监控场景适应的的告警模型,此外,业务告警规则可以是用户基于业务监控需求和/或业务监控场景定义的。
此外,可选地,业务告警处理平台40还可以包括告警消息通知单元。所述告警消息通知单元被配置为在确定需要业务告警时,向用户通知业务告警消息。所述业务告警消息可以采用任何格式的告警消息,比如,文本告警消息,音频告警消息、视频告警消息等。此外,在一个示例中,业务告警消息的通知方式可以在告警规则中进行定义。
此外,要说明的是,在图1中示出的方案中,业务数据获取单元11和数据格式转换单元12构建成与流式计算平台20独立的数据格式转换平台10。在本说明书的其它实施例中,业务数据获取单元11和数据格式转换单元12也可以充当流式计算平台20的组件。
如上参照图1到图8,对根据本说明书的实施例的流式计算方法、业务告警方法、流式计算平台及业务告警系统的实施例进行了描述。上面的流式计算平台和业务告警系统可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
图9示出了根据本说明书的实施例的用于实现分布式任务处理系统中的任务停止的电子设备900的结构框图。
如图9所示,电子设备900可以包括至少一个处理器910、存储器(例如,非易失性存储器)920、内存930、通信接口940以及内部总线960,并且至少一个处理器910、存储器920、内存930和通信接口940经由总线960连接在一起。该至少一个处理器910执行在计算机可读存储介质中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储有计算机可执行指令,其当执行时使得至少一个处理器910:接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;基于所述SQL语句对流式业务数据进行SQL计算,所述流式业务数据是结构化数据;以及将SQL计算结果通知给中间件平台来进行存储,以供业务告警处理平台异步获取。
应该理解的是,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器910执行在本说明书的各个实施例中如上结合图1-8描述的各种操作和功能。
图10示出了根据本说明书的实施例的用于实现业务告警处理的电子设备1000的结构框图。
如图10所示,电子设备1000可以包括至少一个处理器1010、存储器(例如,非易失性存储器)1020、内存1030、通信接口1040以及内部总线1060,并且至少一个处理器1010、存储器1020、内存1030和通信接口1040经由总线1060连接在一起。该至少一个处理器1010执行在计算机可读存储介质中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器中存储有计算机可执行指令,其当执行时使得至少一个处理器1010:在流式计算平台处,接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;在所述流式计算平台处,基于所述SQL语句对流式业务数据进行SQL计算并将SQL计算结果通知给中间件平台来进行存储,所述流式业务数据是结构化数据;以及在业务告警处理平台处,响应于从所述中间件平台获取到SQL计算结果,对所获取到的SQL计算结果进行告警规则计算,以确定是否需要业务告警,其中,所述流式计算平台处的SQL计算结果通知以及所述业务告警处理平台处的SQL计算结果获取是异步执行的。
应该理解的是,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器1010执行在本说明书的各个实施例中如上结合图1-8描述的各种操作和功能。
在本说明书的实施例中,电子设备900/1000可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种例如非暂时性机器可读介质的程序产品。非暂时性机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中如上结合图1-8描述的各种操作和功能。
具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本发明的一部分。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本发明的保护范围应当由所附的权利要求书来限定。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元或模块可以通过机械方式或电气方式实现。例如,一个硬件单元、模块或处理器可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。
Claims (24)
1.一种流式计算方法,包括:
接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;
基于所述SQL语句对流式业务数据进行SQL计算,所述流式业务数据是结构化数据;以及
将SQL计算结果通知给中间件平台来进行存储,以供业务告警处理平台异步获取。
2.如权利要求1所述的流式计算方法,其中,所述SQL语句还包括流式计算的过滤维度和过滤条件。
3.如权利要求1所述的方法,其中,所述中间件平台是消息中间件平台,将SQL计算结果通知给中间件平台,以供业务告警处理平台异步获取包括:
将所述SQL计算结果以消息的方式通知给所述中间件平台,所述消息包括业务指标以及对应的SQL计算结果。
4.如权利要求1所述的方法,其中,所述SQL计算结果包括多种计算粒度的SQL计算结果,最小计算粒度的SQL计算结果是基于所述流式业务数据计算出的,以及剩余计算粒度的SQL计算结果是基于所述最小计算粒度的SQL计算结果计算出的。
5.如权利要求1所述的方法,其中,在基于所述SQL语句对流式业务数据进行SQL计算之前,所述方法还包括:
从一个或多个业务数据源获取原始流式业务数据;以及
将所述原始流式业务数据转换为key-value格式的流式业务数据。
6.如权利要求1所述的方法,其中,所述SQL语句是用户基于业务监测需求以及维度库编写的,以及
所述维度库是根据具有key-value格式的抽样流式业务数据的Key值来更新的,所述抽样流式业务数据通过对抽样原始流式业务数据进行key-value格式转换而得到。
7.一种业务告警方法,包括:
在流式计算平台处,接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;
在所述流式计算平台处,基于所述SQL语句对流式业务数据进行SQL计算并将SQL计算结果通知给中间件平台来进行存储,所述流式业务数据是结构化数据;以及
在业务告警处理平台处,响应于从所述中间件平台获取到SQL计算结果,对所获取到的SQL计算结果进行告警规则计算,以确定是否需要业务告警,
其中,所述流式计算平台处的SQL计算结果通知以及所述业务告警处理平台处的SQL计算结果获取是异步执行的。
8.如权利要求7所述的流式计算方法,其中,所述SQL语句还包括流式计算的过滤维度和过滤条件。
9.如权利要求7所述的方法,其中,所述中间件平台是消息中间件平台,所述SQL计算结果采用消息的方式通知给所述中间件平台,以及所述消息包括业务指标以及对应的SQL计算结果。
10.如权利要求7所述的方法,其中,所述业务告警处理平台处的告警规则计算是基于告警模型的告警规则计算。
11.如权利要求7所述的方法,其中,所述SQL计算结果包括多种计算粒度的SQL计算结果,最小计算粒度的SQL计算结果是基于所述流式业务数据计算出的,以及剩余计算粒度的SQL计算结果是基于所述最小计算粒度的SQL计算结果计算出的。
12.如权利要求7所述的方法,还包括:
在所述业务告警处理平台处,在确定需要业务告警时,向用户通知业务告警消息。
13.如权利要求7所述的方法,其中,在基于所述SQL语句对流式业务数据进行SQL计算之前,所述方法还包括:
从一个或多个业务数据源获取原始流式业务数据;以及
将所述原始流式业务数据转换为key-value格式的流式业务数据。
14.如权利要求7所述的方法,其中,所述SQL语句是根据业务监控需求和维度库编写的,以及
所述维度库是基于具有key-value格式的抽样流式业务数据的Key值来更新的,所述抽样流式业务数据通过对抽样原始流式业务数据进行key-value格式转换而得到。
15.一种流式计算平台,包括:
业务指标接收单元,接收用户配置的业务指标,所述业务指标是基于SQL语句定义的,所述SQL语句包括流式计算的聚合维度;
SQL计算单元,基于所述SQL语句对流式业务数据进行SQL计算,所述流式业务数据是结构化数据;以及
SQL计算结果通知单元,将SQL计算结果通知给中间件平台来进行存储,以供业务告警处理平台异步获取。
16.如权利要求15所述的流式计算平台,其中,所述中间件平台是消息中间件平台,以及所述SQL计算结果通知单元将所述SQL计算结果以消息的方式通知给所述中间件平台,所述消息包括业务指标以及对应的SQL计算结果。
17.如权利要求15所述的流式计算平台,还包括:
业务数据获取单元,从一个或多个业务数据源获取原始流式业务数据;以及
数据格式转换单元,将所述原始流式业务数据转换为key-value格式的流式业务数据。
18.如权利要求15所述的流式计算平台,还包括:
维度库维护单元,基于具有key-value格式的抽样流式业务数据的Key值来更新维度库,所述抽样流式业务数据是通过对抽样原始流式业务数据进行key-value格式转换而得到,所述SQL语句是根据业务监控需求和所述维度库编写的。
19.一种业务告警系统,包括:
如权利要求15到18中任一所述的流式计算平台;
中间件平台;
业务告警处理平台,
所述业务告警处理平台包括:
SQL计算结果获取单元,从所述中间件平台获取到SQL计算结果;以及
告警规则计算单元,基于所获取到的SQL计算结果进行告警规则计算,以确定是否需要业务告警,
其中,所述流式计算平台处的SQL计算结果通知以及所述业务告警处理平台处的SQL计算结果获取是异步执行的。
20.如权利要求19所述的业务告警系统,其中,所述业务告警处理平台还包括:
告警消息通知单元,在确定需要业务告警时,向用户通知业务告警消息。
21.一种电子设备,包括:
一个或多个处理器,以及
与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1到6中任一项所述的方法。
22.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求1到6中任一项所述的方法。
23.一种电子设备,包括:
一个或多个处理器,以及
与所述一个或多个处理器耦合的存储器,所述存储器存储指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求7到14中任一项所述的方法。
24.一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求7到14中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911095792.4A CN111026749B (zh) | 2019-11-11 | 2019-11-11 | 业务告警方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911095792.4A CN111026749B (zh) | 2019-11-11 | 2019-11-11 | 业务告警方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111026749A true CN111026749A (zh) | 2020-04-17 |
CN111026749B CN111026749B (zh) | 2023-06-30 |
Family
ID=70201351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911095792.4A Active CN111026749B (zh) | 2019-11-11 | 2019-11-11 | 业务告警方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111026749B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112615742A (zh) * | 2020-12-18 | 2021-04-06 | 北京百度网讯科技有限公司 | 用于预警的方法、装置、设备以及存储介质 |
CN112783882A (zh) * | 2021-01-22 | 2021-05-11 | 卓尔购信息科技(武汉)有限公司 | 一种大数据质检方法、系统、存储介质及设备 |
CN112906373A (zh) * | 2021-02-20 | 2021-06-04 | 成都新希望金融信息有限公司 | 告警计算方法、装置、电子设备及存储介质 |
CN113408893A (zh) * | 2021-06-18 | 2021-09-17 | 中国农业银行股份有限公司 | 风险预警方法及装置 |
CN113656264A (zh) * | 2021-09-08 | 2021-11-16 | 上海童渠信息技术有限公司 | 一种实时报警服务平台系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026851A (zh) * | 2017-03-22 | 2017-08-08 | 西安电子科技大学 | 一种基于流式数据处理的实时系统保护方法 |
CN109522341A (zh) * | 2018-11-27 | 2019-03-26 | 北京京东金融科技控股有限公司 | 实现基于sql的流式数据处理引擎的方法、装置、设备 |
CN110011872A (zh) * | 2019-04-10 | 2019-07-12 | 海南航空控股股份有限公司 | 一种基于诊断消息的流式计算平台状态监控方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101955376B1 (ko) * | 2016-12-29 | 2019-03-08 | 서울대학교산학협력단 | 비공유 아키텍처 기반의 분산 스트림 처리 엔진에서 관계형 질의를 처리하는 방법, 이를 수행하기 위한 기록 매체 및 장치 |
-
2019
- 2019-11-11 CN CN201911095792.4A patent/CN111026749B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026851A (zh) * | 2017-03-22 | 2017-08-08 | 西安电子科技大学 | 一种基于流式数据处理的实时系统保护方法 |
CN109522341A (zh) * | 2018-11-27 | 2019-03-26 | 北京京东金融科技控股有限公司 | 实现基于sql的流式数据处理引擎的方法、装置、设备 |
CN110011872A (zh) * | 2019-04-10 | 2019-07-12 | 海南航空控股股份有限公司 | 一种基于诊断消息的流式计算平台状态监控方法和装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112615742A (zh) * | 2020-12-18 | 2021-04-06 | 北京百度网讯科技有限公司 | 用于预警的方法、装置、设备以及存储介质 |
CN112783882A (zh) * | 2021-01-22 | 2021-05-11 | 卓尔购信息科技(武汉)有限公司 | 一种大数据质检方法、系统、存储介质及设备 |
CN112906373A (zh) * | 2021-02-20 | 2021-06-04 | 成都新希望金融信息有限公司 | 告警计算方法、装置、电子设备及存储介质 |
CN113408893A (zh) * | 2021-06-18 | 2021-09-17 | 中国农业银行股份有限公司 | 风险预警方法及装置 |
CN113656264A (zh) * | 2021-09-08 | 2021-11-16 | 上海童渠信息技术有限公司 | 一种实时报警服务平台系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111026749B (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111026749B (zh) | 业务告警方法及装置 | |
CN110347716B (zh) | 日志数据处理方法、装置、终端设备及存储介质 | |
US20180365254A1 (en) | Method and apparatus for processing information flow data | |
CN110362455B (zh) | 一种数据处理方法和数据处理装置 | |
CN112311617A (zh) | 一种配置化数据监控告警方法及系统 | |
CN111881011A (zh) | 日志管理方法、平台、服务器及存储介质 | |
US11675881B2 (en) | Computer-based systems configured for automated computer script analysis and malware detection and methods thereof | |
CN107346270B (zh) | 基于实时计算的基数估计的方法和系统 | |
US20200112475A1 (en) | Real-time adaptive infrastructure scenario identification using syntactic grouping at varied similarity | |
CN111694677A (zh) | 消息队列的管理方法、装置、终端和计算机可读存储介质 | |
CN112115105A (zh) | 一种业务处理方法、装置及设备 | |
CN116436772A (zh) | 实时告警方法和装置、电子设备及存储介质 | |
CN110147223B (zh) | 组件库的生成方法、装置及设备 | |
US20200110815A1 (en) | Multi contextual clustering | |
CN111143461B (zh) | 映射关系处理系统、方法和电子设备 | |
CN112650804A (zh) | 大数据接入方法、装置、系统及存储介质 | |
CN112052259A (zh) | 数据处理方法、装置、设备及计算机存储介质 | |
CN112241355A (zh) | 链路追踪方法、系统、计算机可读存储介质及电子设备 | |
CN111324645B (zh) | 区块链的数据处理方法及装置 | |
CN109039695B (zh) | 业务故障处理方法、装置及设备 | |
CN113946648B (zh) | 结构化信息生成方法、装置、电子设备和介质 | |
CN112148762A (zh) | 一种实时数据流的统计方法和装置 | |
CN112910855B (zh) | 一种样例报文处理方法及装置 | |
CN113902415A (zh) | 财务数据核对方法、装置、计算机设备和存储介质 | |
CN113986942A (zh) | 一种基于人机对话的消息队列管理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |