本发明专利技术公开了一种基于大数据的数据采集方法及大数据系统,该方法包括:终端运行Java应用对应的Java虚拟机,将预先配置的埋点采集器加载至Java虚拟机,并在加载过程中创建埋点监听对象,埋点采集器中配置有埋点信息,埋点信息包括待采集业务参数的参数名称及待采集业务参数所在的参数路径;基于埋点监听对象监听Java虚拟机中当前被加载的路径是否与参数路径一致,将被加载且与参数路径一致的路径进行拦截,并作为目标路径;基于预定的字节码生成操作库及埋点采集器,采集目标路径中与参数名称一致的业务参数。名称一致的业务参数。名称一致的业务参数。
【技术实现步骤摘要】
基于大数据的数据采集方法及大数据系统
[0001]本专利技术属于信息
,具体地,涉及一种基于大数据的数据采集方法及大数据系统。
技术介绍
[0002]事件追踪(Event Tracking)也叫埋点,其技术实质是先监听软件应用运行过程中的事件,当需要关注的事件发生时进行判断和捕获,数据埋点是一种常用的数据采集的方法。
[0003]现有的一些数据采集方式包括侵入式埋点采集及无侵入式埋点采集,对于无侵入式埋点采集,常使用的技术包括Pinpoint和Skywalking。Pinpoint和Skywalking都是分布式系统的应用程序性能管理及监视工具,两者都能实现无侵入式的调用链采集及监控,两者解决的是全流程或全链路问题数据的定位及监控。目前对于涉及一些海量数据业务场景的应用,需要捕获更细粒度的数据来辅助监控及进行数据分析,如应用中的业务参数,因此自动采集软件服务中的业务数据成为有待解决的问题。
技术实现思路
[0004]本专利技术提供了一种基于大数据的数据采集方法及大数据系统,旨在实现软件服务核心环节业务数据的捕获,解决自动采集软件服务中的业务数据的问题。
[0005]为了实现上述目的,本专利技术提供了一种基于大数据的数据采集方法,所述方法包括:
[0006]终端运行Java应用对应的Java虚拟机,将预先配置的埋点采集器加载至所述Java虚拟机,并在加载过程中创建埋点监听对象,所述埋点采集器中配置有埋点信息,所述埋点信息包括待采集业务参数的参数名称及所述待采集业务参数所在的参数路径;
[0007]基于所述埋点监听对象监听所述Java虚拟机中当前被加载的路径是否与所述参数路径一致,将被加载且与所述参数路径一致的路径进行拦截,并作为目标路径;
[0008]基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数。
[0009]可选地,所述埋点采集器中还配置有预定的采集表达式,所述基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数的步骤之后,还包括:
[0010]将所采集的业务参数整理为预定格式的字符串,利用所述采集表达式获取所述预定格式的字符串中的业务参数。
[0011]可选地,所述基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数的步骤,包括:
[0012]基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径及所述目标路径中与所述参数名称一致的业务参数;
[0013]在终端运行Java应用对应的Java虚拟机的步骤之后,还包括:
[0014]若所述Java应用接收的访问请求包括多个服务,则采用异步多线程的方式处理所述多个服务,调用所述埋点采集器采集所述异步多线程的唯一标识;
[0015]关联所采集的目标路径及所述异步多线程的唯一标识。
[0016]可选地,所述异步多线程的唯一标识包括服务标识及跨度标识。
[0017]可选地,所述埋点采集器中还配置有推送地址,所述基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数的步骤之后,还包括:
[0018]将采集数据作为目标数据,所述采集数据包括业务参数、目标路径及所述异步多线程的唯一标识;
[0019]将所述目标数据处理为消息队列,并推送所述消息队列至所述推送地址所在的云服务器。
[0020]可选地,所述将预先配置的埋点采集器加载至所述Java虚拟机的步骤,包括:
[0021]向所述Java虚拟机发送下载命令,基于所述下载命令调用Java虚拟机工具接口的预定方法,通过所述预定方法加载所述埋点采集器。
[0022]可选地,所述基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数的步骤,包括:
[0023]利用所述字节码生成操作库修改所述目标路径中对应的类代码,得到字节码文件;
[0024]加载所述字节码文件,并调用所述埋点采集器采集所述字节码文件中与所述参数名称一致的业务参数。
[0025]可选地,所述终端运行Java应用对应的Java虚拟机的步骤之前,还包括:
[0026]调用Java虚拟机工具接口,对所述Java应用中预定的类文件进行加解密处理,得到解密后的类文件,将所述解密后的类文件封装成预定的文件,将所述预定的文件加载至所述Java虚拟机中运行。
[0027]本专利技术实施例还提供一种大数据系统,所述大数据系统包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机可执行指令,所述计算机可执行指令被所述处理器执行时实现上述的方法。
[0028]本专利技术实施例的方法及系统具有下列优点:
[0029]本专利技术实施例采用无侵入的方式,通过在埋点采集器配置待采集业务参数的参数名称及待采集业务参数所在的参数路径,在JVM运行过程中加载埋点采集器并进行字节码增强,使得埋点采集器能够自动、准确、针对性地采集Java应用中该参数路径中的业务参数,java应用本身不需要修改代码及配置,能够满足大批量业务数据的采集,对承载的资源占用较小,不会影响java应用本身服务。
附图说明
[0030]图1为本专利技术一个实施例中的系统架构图;
[0031]图2为本专利技术一个实施例中基于大数据的数据采集方法的流程示意图;
[0032]图3为本专利技术另一个实施例中基于大数据的数据采集方法的流程示意图;
[0033]图4为本专利技术一个实施例中大数据系统的技术框架图;
[0034]图5为本专利技术一个实施例中大数据系统的硬件组成示意图。
具体实施方式
[0035]为了使本专利技术的目的、技术方案及优点更加清楚,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。此外,下面所描述的本专利技术各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0036]图1是本专利技术实施例大数据系统的系统架构图,如图1所示,该系统架构图包括终端01、多个基站02、多个边缘计算节点MEC03及云服务器04。其中,云服务器04作为数据管理中心,通过MEC03管理的方式提供数据资源入库,将网络节点的数据资源发送到全局的应用仓库,并提供各级节点的应用服务配置、监测、管控及数据存储。
[0037]边缘计算节点MEC03在本专利技术实施例中与云服务器04配对,在配对后,主要与云服务器04进行通信,并与基站02,终端01进行数据交互,最终完成数据采集及上传的操作。边缘计算节点MEC03具备一定的计算能力和存储能力,其下沉到靠近最终终端01的一侧,因此其响应速度很快。
[0038]基站02与边缘计算节点MEC03配对,一个边缘计算节点MEC03配对有多个基站02,终端01可以是固定或移动的终端设备,具备有线及无线输入输本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于大数据的数据采集方法,其特征在于,所述方法包括:终端运行Java应用对应的Java虚拟机,将预先配置的埋点采集器加载至所述Java虚拟机,并在加载过程中创建埋点监听对象,所述埋点采集器中配置有埋点信息,所述埋点信息包括待采集业务参数的参数名称及所述待采集业务参数所在的参数路径;基于所述埋点监听对象监听所述Java虚拟机中当前被加载的路径是否与所述参数路径一致,将被加载且与所述参数路径一致的路径进行拦截,并作为目标路径;基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数。2.根据权利要求1所述的方法,其特征在于,所述埋点采集器中还配置有预定的采集表达式,所述基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数的步骤之后,还包括:将所采集的业务参数整理为预定格式的字符串,利用所述采集表达式获取所述预定格式的字符串中的业务参数。3.根据权利要求1所述的方法,其特征在于,所述基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数的步骤,包括:基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径及所述目标路径中与所述参数名称一致的业务参数;在终端运行Java应用对应的Java虚拟机的步骤之后,还包括:若所述Java应用接收的访问请求包括多个服务,则采用异步多线程的方式处理所述多个服务,调用所述埋点采集器采集所述异步多线程的唯一标识;关联所采集的目标路径及所述异步多线程的唯一标识。4.根据权利要求3所述的方法,其特征在于,所述埋点采集器中还配置有推送地址,所述基于预定的字节码生成操作库及所述埋点采集器,采集所述目标路径中与所述参数名称一致的业务参数的步骤之后,还包括:将采集数据作为目标数据,所述采集数据包括业务参数、目标路径及所述异步多线程的唯一标识;将所述目标数据处理为消息队列,并推送所述消息队列至所述推送地址所在的云服务器。5.根据权利要求3所述的方法,其特征在于,所述埋点采集器中还配置有告警规则,所述关联所采集的目标路径及所述异步多线程的唯一标识的步骤之后,还包括:调用所述埋点采集器采集所述访问请求的异常信息及所述多个服务分别对应的时间信息;基于所关联的目标路径、所述异步多线程的唯一标识及所述时间信息对所述多个服务进行异常监控;当检测到所述访...
【专利技术属性】
技术研发人员:王培博,刘英,王民,
申请(专利权)人:深圳市联合欣业科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。