一种实时大数据处理系统和方法技术方案

技术编号:33426667 阅读:14 留言:0更新日期:2022-05-19 00:18
本发明专利技术涉及一种实时大数据处理系统和方法,其方法包括:采用异步数据接收组件异步接收、压缩/解压缩数据,将数据发送到多线程数据处理组件;采用多线程数据处理组件解析来自异步数据接收组件的数据报文,异步处理,并批量插入到列式存储数据库;采用角色对等的多个列式存储数据库提供物化视图功能提高存储查询性能。通过数据异步接收,并发解析处理技术,并基于列式存储及相关组件,能够在利用较少系统资源的情况下实时解析、处理、存储、分析应用性能指标数据,提高运维效率。提高运维效率。提高运维效率。

【技术实现步骤摘要】
一种实时大数据处理系统和方法


[0001]本专利技术属于应用性能监控领域,尤其是一种实时大数据处理技术,主要用于对监控数据有高吞吐、低延迟的大数据处理分析。

技术介绍

[0002]目前,应用性能监控领域,针对相关探针(agent)实时采集数据,实时高效地接收、处理、存储探针所采集的数据的技术方案,存在硬件资源消耗大、实时性差的问题,较难同时兼顾吞吐率和延迟率。一般来说,要么吞吐率高,但是数据延迟高,难以达到实时性;要么实时性强,但是数据吞吐率低。当二者兼顾时,需要消耗较高的系统资源,所以围绕传统数据接收和处理的方案已经不满足相关性能需求。
[0003]例如,传统的数据接收方案,一般采用BIO模型,即一个线程对应一个请求,这就会导致很多请求线程处于等待io资源的状态,因而无法有效利用。由于创建线程是比较昂贵的系统资源,因此,当并发量增大时,系统的资源负载较大,无法满足高吞吐的要求。另外,传统数据库的单机或主从设计模式,也无法达到对数据库高吞吐和低延迟的要求。

技术实现思路

[0004]为了克服现有技术的上述缺陷,本专利技术一个目的在于提供一种实时大数据处理技术,其基于异步事件模型的异步数据接收,可以实现消耗较小的线程资源,达到较高的数据接收能力。
[0005]本专利技术又一个目的在于提供一种实时大数据处理技术,其列式数据库提供的物化视图功能,可以减少数据条数,提高查询性能。
[0006]本专利技术一个目的在于提供一种实时大数据处理技术,其基于异步事件模型的异步数据接收结合列式数据库提供的物化视图功能,不仅可以消耗较小的线程资源,达到较高的数据接收能力,还可以减少数据条数,提高查询性能,从而同时实现数据延迟低、吞吐率高、资源消耗少的目的。
[0007]为了达到上述目的,本专利技术提供的主要技术方案包括:
[0008]一种实时大数据处理系统,其包括:
[0009]异步数据接收组件,用于异步接收、压缩/解压缩数据,将数据发送到多线程数据处理组件,即分布式数据解析服务组件;
[0010]多线程数据处理组件,即分布式数据解析服务组件,用于解析来自异步数据接收组件的数据报文,异步处理,并批量插入到列式存储数据库;
[0011]多个列式存储数据库,各列式存储数据库角色对等,提供物化视图功能。
[0012]本专利技术的实时大数据处理技术,通过数据异步接收,并发解析处理技术,并基于列式存储及相关组件,能够在利用较少系统资源的情况下实时解析、处理、存储、分析应用性能指标数据,提高运维效率。
[0013]本专利技术一个实施例的实时大数据处理系统,其中,所述异步数据接收组件利用nio
(non

bloking io非阻塞io)技术异步接收、压缩数据,提高了数据接收能力,提高了数据在分布式系统中的传输效率。
[0014]本专利技术一个实施例的实时大数据处理系统,其中,所述异步数据接收组件包括基于异步事件模型,通过提供一个EventLoop组件来统一协调,基于事件驱动,当收到一个事件时,会提供一个线程来处理,当该线程等待io时,该线程可以处理别的任务。这样单个服务可以达到10000+/秒的数据接收能力。
[0015]本专利技术一个实施例的实时大数据处理系统,其中,多线程数据处理组件为分布式数据解析服务组件,采用分布式解析处理,能够大批量实时解析处理数据。
[0016]本专利技术一个实施例的实时大数据处理系统,其中,多台列式存储数据库角色对等,每一台都可以写入,能够充分利用服务器的资源。当数据量较大时,可以横向扩展列式存储数据库,分摊压力,同时,每台列式存储数据库提供备份机制,保障数据的高可用。较佳的,列式数据库提供物化视图功能,以空间换时间,提高了查询性能,其中,当数据写入原始表时,会根据数据特征,提前聚合,这样极大的减少了数据条数,提高了查询性能。
[0017]本专利技术一个较佳实施例的实时大数据处理技术,其中,数据写入原始表的写入机制具体为:
[0018]通过标准的jdbc规范实现数据库驱动,通过http方式和数据建立连接,写入方式上,采用低频率、大批量写入策略,针对单个数据库实例,写入频率不超过1秒每次。单次批量写入数万条。数据写入数据库临时磁盘目录,数据库进行后台合并。
[0019]本专利技术一个较佳实施例的实时大数据处理技术,其中,提前聚合的合并机制具体为:
[0020]采用LSM算法(Log Structured Merge Trees的简称),每次数据库写入,都会在相关目录形成一个对应编号的数据文件。当数据目录存在多个数据文件,后台线程会进行合并,将多次写入的多个数据文件合并为一个数据文件,该过程伴随着压缩过程从而达到提前聚合合并的效果。
[0021]本专利技术还提供一种实时大数据处理方法,其包括步骤:
[0022]S1、采用异步数据接收组件异步接收、压缩/解压缩数据,将数据发送到多线程数据处理组件;
[0023]S2、采用多线程数据处理组件解析来自异步数据接收组件的数据报文,异步处理,并批量插入到列式存储数据库;
[0024]S3、采用角色对等的多个列式存储数据库提供物化视图功能提高存储查询性能。
[0025]本专利技术一个实施例的实时大数据处理方法,其步骤S1中利用nio技术异步接收、压缩数据,具体的,异步数据接收组件基于异步事件模型,通过提供一个EventLoop组件来统一协调,基于事件驱动,当收到一个事件时,会提供一个线程来处理,当该线程等待io时,该线程可以处理别的任务。
[0026]本专利技术一个实施例的实时大数据处理方法,其列式存储数据库的物化视图功能,以空间换时间,提高查询性能,当数据写入原始表,会根据数据特征,提前聚合。通过在底层使用列式存储组件,在查询方面,通过自定义函数优化分析查询性能,而数据压缩后又降低总体磁盘I/O,并减少需从磁盘加载的数据量,所以整体具备高吞吐低延迟的能力,最终能够多维度分析展示运维信息。
[0027]本专利技术一个实施例的实时大数据处理方法,其中,数据写入原始表的写入机制具体为:
[0028]数据写入原始表的写入机制具体为:通过标准的jdbc规范实现数据库驱动,通过http方式和数据建立连接,数据写入数据库临时磁盘目录,数据库进行后台合并。
[0029]本专利技术一个实施例的实时大数据处理方法,其中,提前聚合的合并机制具体为:
[0030]采用LSM算法,每次数据库写入,都会在相关目录形成一个对应编号的数据文件。当数据目录存在多个数据文件,后台线程会进行合并,将多次写入的多个数据文件合并为一个数据文件,该过程伴随着压缩过程从而达到提前聚合合并的效果。
[0031]本专利技术的有益效果是:
[0032]本专利技术通过数据异步接收,并发解析处理技术,并基于列式存储及相关组件,能够在利用较少系统资源的情况下实时解析、处理、存储,分析应用性能指标数据,提高运维效率。其中,基于列式存储的大数据实时处理分析技术,结合异步多线程接收解析本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实时大数据处理系统,其特征在于,其包括:异步数据接收组件,用于异步接收、压缩/解压缩数据,将数据发送到多线程数据处理组件,即分布式数据解析服务组件;多线程数据处理组件,即分布式数据解析服务组件,用于解析来自异步数据接收组件的数据报文,异步处理,并批量插入到列式存储数据库;多个列式存储数据库,各列式存储数据库角色对等,提供物化视图功能。2.如权利要求1所述的实时大数据处理系统,其特征在于,所述异步数据接收组件利用nio技术异步接收、压缩数据。3.如权利要求2所述的实时大数据处理系统,其特征在于,所述异步数据接收组件包括基于异步事件模型,通过提供一个EventLoop组件来统一协调,基于事件驱动,当收到一个事件时,会提供一个线程来处理。4.如权利要求3所述的实时大数据处理系统,其特征在于,当该线程等待io时,该线程可以处理别的任务。5.如权利要求1至4中任一项所述的实时大数据处理系统,其特征在于,多线程数据处理组件为分布式数据解析服务组件。6.如权利要求5所述的实时大数据处理系统,其特征在于,列式存储数据库的物化视图功能包括:当数据写入原始表,会根据数据特征,提前聚合。7.一种实时大数据处理方法,其特征在于,其包括步骤:S1、采用异步数据接收组件异步接...

【专利技术属性】
技术研发人员:赖彩林韩成冰
申请(专利权)人:云智慧北京科技有限公司
类型:发明
国别省市:

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

1