首页> 中国专利> 基于云原生数仓的业务监控方法及系统

基于云原生数仓的业务监控方法及系统

摘要

本发明公开基于云原生数仓的业务监控方法及监控系统,涉及互联网技术领域,其中该方法包括:将各个业务领域产生的数据同步到云原生数仓中,基于预先设定的指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算,生成指标数据;根据预设报警规则对所述指标数据进行运算,获取报警信息,并在所述报警信息达到预设的报警阈值时,通知报警接收人。本发明公开的基于云原生数仓的业务监控方法及监控系统,对比传统方法,解决了增量指标迭代周期长、指标数据分散、指标计算无法保证实时性的问题。

著录项

  • 公开/公告号CN113268398A

    专利类型发明专利

  • 公开/公告日2021-08-17

    原文格式PDF

  • 申请/专利权人 上海数禾信息科技有限公司;

    申请/专利号CN202110612042.0

  • 发明设计人 黄宏贵;

    申请日2021-06-02

  • 分类号G06F11/30(20060101);G06F11/32(20060101);G06F16/215(20190101);G06F16/245(20190101);G06F16/27(20190101);

  • 代理机构11111 北京市万慧达律师事务所;

  • 代理人贾鑫玉;邱忠贶

  • 地址 201206 上海市浦东新区自由贸易试验区金科路2889弄1号2层201室

  • 入库时间 2023-06-19 12:14:58

说明书

技术领域

本发明涉及互联网技术领域,尤其涉及基于云原生数仓的业务监控方法及系统。

背景技术

互联网的飞速发展使得互联网的使用越来越普遍,互联网不仅成为企业内部的沟通桥梁,也是企业和外部进行各类业务往来的重要管道。随着互联网的服务模式和产品结构在不断创新与完善,互联网业务也在不断的发展。互联网业务充分发挥了互联网在生产要素配置中的优化和集成作用,将互联网的创新成果深度融合于经济社会各领域之中,形成更广泛的以互联网为基础设施和实现工具的经济发展新形态,与此同时,针对互联网业务的监控技术应时而生。

但是,各业务领域的指标数据总量巨大,难以实时汇聚整合,无法提供统一、实时的查询分析能力,使得指标数据分散,一定程度形成数据孤岛,同时,数据源多样化,需定制处理转化逻辑,指标数据自行上报,较为繁琐,并且没有统一的指标生产路径,指标迭代需要定期排期开发,导致增量指标迭代周期长,同时指标数据生产受限于数据量以及计算能力,无法保证指标数据生产的实时性。

基于上述问题,如何实现实时业务指标数据生产、实时报警和实时业务报表,进而无法及时地发现互联网业务问题,并且为业务痛点做复盘、分析提供实时的数据支撑,成为互联网业务监控过程中必须要解决的问题。

发明内容

本发明的目的在于提供基于云原生数仓的业务监控方法及系统,基于云原生数仓(云原生数据仓库)实现了对业务指标进行实时地聚合、计算和生产,进而及时地发现互联网业务问题,并且为业务痛点做复盘、分析提供实时的数据支撑。

为了实现上述目的,本发明提供如下技术方案:

一种基于云原生数仓的业务监控方法,其特征在于,包括:

将各个业务领域产生的数据同步到云原生数仓中;

基于预先设定的指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算,生成指标数据;

根据预设报警规则对所述指标数据进行运算,获取报警信息,并在所述报警信息达到预设的报警阈值时,通知报警接收人。

较佳地,所述指标计算配置数据包括指标基本属性配置和指标生产调度配置,其中所述指标生产调度配置用于定义数据查询逻辑、指标计算逻辑。

进一步地,各个业务领域产生的数据包括但不限于日志数据和业务数据库中的数据;

利用所述云原生数仓内置的数据同步工具,将所述各个业务领域产生的数据清洗并同步到所述云原生数仓中;

其中,数据同步过程包括数据值的同步和数据结构的同步。

进一步地,基于所述指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算的方法包括:

按照指标生产调度配置所定义的数据查询逻辑,从云原生数仓中查询满足指标基本属性配置的数据;

对所述满足指标基本属性配置的数据,按照所述指标生产调度配置所定义的指标计算逻辑进行指标计算,生成指标数据。

较佳地,根据预设报警规则对所述指标数据按照业务领域分类进行运算,并且分别获取不同业务领域对应的报警信息;

所述报警接收人包括个人、虚拟临时群组、组织结构、通用动态资源以及定制化的接收人。

进一步地,所述基于云原生数仓的业务监控方法还包括:

将所述指标数据的实时显示,以及利用报表工具基于所述指标数据实时生成报表。

一种基于云原生数仓的业务监控系统,包括配置模块、云原生数仓、指标计算模块及监控模块,其中,

所述配置模块用于设定指标计算配置数据;

所述云原生数内置有多个数据同步工具,所述数据同步工具用于将各个业务领域产生的数据清洗并同步到所述云原生数仓中;

所述指标计算模块包括多个指标计算单元,每个所述指标计算单元用于执行一个或多个指标计算任务,所述指标计算任务包括:基于所述指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算,生成指标数据;

所述监控模块用于根据预设报警规则对所述指标数据进行运算,获取报警信息,并在所述报警信息达到预设的报警阈值时,通知报警接收人。

优选地,不同的指标计算单元被配置为执行不同的指标计算任务,且所述指标计算模块支持横向扩展。

较佳地,所述监控模块包括多个监控单元群组,每个监控单元群组包括一个或多个监控单元;

所述监控单元群组分别用于运算不同业务领域的指标数据,并且分别获取不同业务领域对应的报警信息。

一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,所述计算机可读程序指令用于执行上述基于云原生数仓的业务监控方法。

与现有技术相比,本发明提供的基于云原生数仓的业务监控方法及系统具有以下有益效果:

本发明提供的基于云原生数仓的业务监控方法,将各个业务领域产生的数据同步到云原生数仓中,云原生数仓采用云原生技术架构,实现了存储计算分离,计算资源与存储资源能按需动态扩缩,能解决业务增长和波动的计算存储资源瓶颈问题,同时最大限度降低成本。然后基于预先设定的指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算,生成指标数据,实时生成指标计算配置数据,可以节省运行时间,同时统一查询数据的格式、内容及基准,方便后续处理。最后根据预设报警规则对所述指标数据进行运算,获取报警信息,并在所述报警信息达到预设的报警阈值时,通知报警接收人,设置预设报警规则可以将与系统正常运行相关的数据纳入监测,设定报警阈值可以过滤一些非严重警告信息,专注于会对系统运行产生重大影响的严重警告信息,可以提高维护效率,降低维护所需的人力物力。

本发明提供的基于云原生数仓的业务监控系统,采用了上述基于云原生数仓的业务监控方法,缩短了增量指标的迭代周期,集中管理指标数据,避免形成数据孤岛,同时保证整个业务监控系统的实时性,及时地发现互联网业务问题,并且为业务痛点做复盘、分析提供实时的数据支撑。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为本发明实施例中基于云原生数仓的业务监控方法的整体流程示意图;

图2为本发明实施例中将各个业务领域产生的数据同步到云原生数仓中的过程示意图;

图3为本发明实施例中基于指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算的过程示意图;

图4为本发明实施例中指标计算单元的扩展方式示意图;

图5为本发明实施例中监控模块的工作方式示意图;

图6为本发明实施例中建议的系统模块关系图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其它实施例,均属于本发明保护的范围。

实施例一

请参阅图1,本发明实施例提供一种基于云原生数仓的业务监控方法,包括:

将各个业务领域产生的数据同步到云原生数仓中;

基于预先设定的指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算,生成指标数据;

根据预设报警规则对指标数据进行运算,获取报警信息,并在报警信息达到预设的报警阈值时,通知报警接收人。

本发明公开的监控方法基于云原生数仓的海量、实时分析能力,技术上保证了指标生产的实时性;基于云原生数仓的计算资源隔离、弹性扩缩容能力,实现了整体指标生产的扩缩容能力,以从容应对较快的业务增长;基于数仓的计算、分析能力,提供实时的监控、报表等数据服务,及时将重要报警信息通知报警接收人进行处理。

请参阅图2,上述基于云原生数仓的业务监控方法中,各个业务领域产生的数据包括但不限于日志数据和业务数据库中的数据;利用云原生数仓内置的数据同步工具,将各个业务领域产生的数据清洗并同步到云原生数仓中;其中,数据同步过程包括数据值的同步和数据结构的同步。

在具体实施中,云原生数仓例如采用AnalyticDB、MySQL等数据库实现,数据同步工具是云原生数仓生态内的工具,其具有数据清洗的功能,数据清洗主要包括对原始业务数据的裁剪、原始分库分表数据的聚合等。云原生数仓可以兼容多种数据来源,并且具有海量、高性能的实时分析能力,数据同步到云原生数仓之后,保留原来的数据结构,并且根据不同的业务领域分类存储并给出统一标准的路径,各异构数据处理汇聚至该云原生数仓,即实现了下游统一的指标生产路径,以便于数据被快速查询和调用。

请参阅图3,本实施例提供的基于云原生数仓的业务监控方法中,还包括:设定指标计算配置数据。具体地,指标计算配置数据通过系统提供的配置界面进行设定,包括指标基本属性配置和指标生产调度配置,其中指标生产调度配置用于定义数据查询逻辑、指标计算逻辑,数据查询逻辑具体包括调度周期、数据库查询等信息。在此基础上,基于指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算的方法包括:

按照指标生产调度配置所定义的数据查询逻辑,从云原生数仓中查询满足指标基本属性配置的数据;

对满足指标基本属性配置的数据,按照指标生产调度配置所定义的指标计算逻辑进行指标计算,生成指标数据。

从云原生数仓中查询满足指标基本属性配置的数据的过程为一个指标的sql查询任务,即根据指标的基本属性以及云原生数仓提供的统一的指标生产路径从云原生数仓中查询需要被处理的数据,云原生数仓的弹性扩缩容、计算资源隔离分配,为总体业务监控的指标计算提供保障,同时提供聚合、统一的指标转化、上报能力。

指标生产调度配置支持cron表达式,cron表达式是由若干数字、空格、符号按一定的规则,组成的一组字符串,从而表达时间的信息。该表达式支持通用的周期形式,例如1分钟、5分钟等,然后按配置的频率定时执行数据库查询任务,例如sql任务,以具体sql从数仓查询数据,该数据即为该时间点上的指标结果数据。

值得注意的是,本实施例提供的基于云原生数仓的业务监控方法中,指标计算能力支持无状态横向扩展,计算资源上无状态,不同领域上扩展方式相同。请参阅图4,当指标计算能力达到瓶颈,简单扩充指标计算模块资源,按指标计算任务的ID取模,重新分配指标计算任务,实现总体指标计算能力的扩展,以适应海量数据的实时运算,并且在数据量快速增长时,能迅速横向扩展整个装置的指标生产能力,保证指标数据的生产效率。

进一步地,请参阅图5,监控模块收集各个指标计算模块生产的指标数据,并下发给各个业务领域对应的监控单元群组,以根据预设报警规则对指标数据按照业务领域分类进行运算,并且分别获取不同业务领域对应的报警信息,并在报警信息达到预设的报警阈值时,通知报警接收人。

本实施例中的报警规则基于具体业务制定,例如,监控CPU的运行指标时,CPU占用率超过50%则生成报警信号并通知报警接收人;监控用户系统的指标时,用户注册数低于10000人次,则生成报警信号并通知报警接收人。上述报警规则在报警模块上配置,并同步到监控模块;报警规则的计算由监控模块实时执行计算,计算的对象为监控模块实时采集的时序性指标数据。此外,本实施例中监控模块内置的监控工具可以采用开源的Grafana实现,报警接收人包括个人、虚拟临时群组、组织结构、通用动态资源以及定制化的接收人,以方便于报警信号被及时处理,避免影响业务。

除此之外,基于云原生数仓的业务监控方法还包括:通过监控面板将指标数据的实时显示,以及利用报表工具基于指标数据实时生成报表。本方案相关的报表采用帆软等现有的报表工具实现,能基于指标模块生成的实时指标数据,达成实时生成报表的能力。

综上,本发明实施例提供的基于云原生数仓的业务监控方法,利用云原生数仓的计算资源隔离、弹性扩缩容能力,实现了整体指标生产的扩缩容能力,以从容应对较快的业务增长,同时依托于云原生数仓的计算、分析能力,提供了实时的监控、报表等数据服务。

实施例二

请参阅图6,本发明实施例提供一种基于云原生数仓的业务监控系统,包括配置模块、云原生数仓、指标计算模块及监控模块,其中,

配置模块用于设定指标计算配置数据;

云原生数内置有多个数据同步工具,数据同步工具用于将各个业务领域产生的数据清洗并同步到云原生数仓中;

指标计算模块包括多个指标计算单元,每个指标计算单元用于执行一个或多个指标计算任务,指标计算任务包括:基于指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算,生成指标数据;

监控模块用于根据预设报警规则对指标数据进行运算,获取报警信息,并在报警信息达到预设的报警阈值时,通知报警接收人。

在实际应用中,采用模块化设计可以降低系统维护成本,在某一模块出错或需要更新时只需维护目标模块即可,无需使整个系统停机,影响运行效率和客户体验。例如:在为配置模块增加更多可配置选项时,只需离线配置模块进行升级,云原生数仓等模块可以持续在线,满足下游的查询需求。

不同的指标计算单元被配置为执行不同的指标计算任务,且指标计算模块支持横向扩展。

将不同的指标计算任务分配到不同的指标计算单元,可以简化各指标计算单元的运行逻辑,在加速计算的同时减少故障。另外,指标计算模块可以轻易地被横向扩展,在需要更高计算能力时只需增添更多指标计算单元,即可随时满足算力需求。

进一步地,本发明实施例提供的基于云原生数仓的业务监控系统中,监控模块包括多个监控单元群组,每个监控单元群组包括一个或多个监控单元;

监控单元群组分别用于运算不同业务领域的指标数据,并且分别获取不同业务领域对应的报警信息。

兼容了各种异构基础数据的转化,统一以SQL形式提供友好的使用界面

监控模块采用层级化设计,既可以宏观判断整个系统是否存在报警信息,也可以在分析具体问题是方便地找到报警信息的精确来源。将各业务领域的指标数据都纳入监控范围,使监控模块能完整地反映整个系统的运行状况,不会丢失信息。将异构基础数据转化为相同的展示方式,提高用户体验,也减少在使用时因数据格式不统一浪费的时间。

本发明提供的基于云原生数仓的业务监控系统,采用上述实施例一提供的方法,相较现有业务监控系统,能够及时地发现互联网业务问题,并且为业务痛点做复盘、分析提供实时的数据支撑,同时更好地满足对实时性、数据统合性的需求。与现有技术相比,本发明实施例提供的基于云原生数仓的业务监控系统的有益效果与上述实施例一提供的基于云原生数仓的业务监控方法的有益效果相同,在此不做赘述。

实施例三

一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,计算机可读程序指令用于执行上述实施例一中的基于云原生数仓的业务监控方法,包括:将各个业务领域产生的数据同步到云原生数仓中,基于预先设定的指标计算配置数据从云原生数仓中查询对应的数据并进行指标计算,生成指标数据;根据预设报警规则对指标数据进行运算,获取报警信息,并在报警信息达到预设的报警阈值时,通知报警接收人。

本发明实施例提供的计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、系统或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、系统或者器件使用或者与其结合使用。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。

上述计算机可读存储介质可以是电子设备中所包含的;也可以是单独存在,而未装配入电子设备中。

上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被电子设备执行时,使得电子设备:获取至少两个网际协议地址;向节点评价设备发送包括所述至少两个网际协议地址的节点评价请求,其中,所述节点评价设备从所述至少两个网际协议地址中,选取网际协议地址并返回;接收所述节点评价设备返回的网际协议地址;其中,所获取的网际协议地址指示内容分发网络中的边缘节点。

或者,上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如″C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单元本身的限定,例如,指标计算模块还可以被描述为″用于执行一个或多个指标计算任务的模块″。

本发明提供的计算机可读存储介质,存储有用于执行上述分布式系统配置项的管理方法的计算机可读程序指令,解决了现有业务监控系统指标计算实时性不足、无法及时地发现互联网业务故障的问题。与现有技术相比,本发明实施例提供的计算机可读存储介质的有益效果与上述实施例一提供的基于云原生数仓的业务监控方法的有益效果相同,在此不做赘述。

应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式的描述中,具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号