CN110333990B - 数据处理方法以及装置 - Google Patents

数据处理方法以及装置 Download PDF

Info

Publication number
CN110333990B
CN110333990B CN201910458728.1A CN201910458728A CN110333990B CN 110333990 B CN110333990 B CN 110333990B CN 201910458728 A CN201910458728 A CN 201910458728A CN 110333990 B CN110333990 B CN 110333990B
Authority
CN
China
Prior art keywords
parameter
level
semantic
increment
path
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.)
Active
Application number
CN201910458728.1A
Other languages
English (en)
Other versions
CN110333990A (zh
Inventor
潘帅好
张蓉
何煜
杨贝贝
王国君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to CN201910458728.1A priority Critical patent/CN110333990B/zh
Publication of CN110333990A publication Critical patent/CN110333990A/zh
Application granted granted Critical
Publication of CN110333990B publication Critical patent/CN110333990B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Machine Translation (AREA)

Abstract

本说明书提供数据处理方法以及装置,其中所述数据处理方法包括:根据语义符号对获取到的离线日志进行分割,得到多层级结构数据;根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径;根据所述参数集合中的所述参数路径构建树形数据结构。所述数据处理方法能够直接对离线日志进行递归解析,因此,对业务代码没有侵入性,且具有很好的普适性。

Description

数据处理方法以及装置
技术领域
本说明书涉及数据处理技术领域,特别涉及一种数据处理方法。本说明书同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着线下支付场景的不断拓展,移动支付业务的形态也随之变化,新业务、新需求的快速接入使移动支付链路的各个业务系统之间的交互模型日益复杂且存在多层嵌套,因此,给移动支付服务端的链路带来了很大挑战。由于每天有数以千亿计的参数在移动支付链路的各个业务系统之间传递,这些参数如果出现异动,不仅会对移动支付业务产生影响,而且还会给用户带来经济损失,因此,有效地管理和监控参数成为移动支付业务的重要质量保障。然而,管理和监控参数的重要前提是如何精准地描述或定义参数的维度,即参数名、参数类型和参数值。在模型多层嵌套的场景下,出现相同参数名、相同参数值、不同参数路径的参数的概率极高,因此,参数路径也是复杂模型中的重要维度之一。
现有技术中,解析接口间请求对象的方式主要有以下两种:第一种是录制接口层的请求对象和返回对象,通过在业务代码中埋点的方式拦截当前系统与其它系统交互的所有请求对象和返回对象,这种方式对业务代码有侵入性,需要对接口配置拦截,并且由于是实时拦截,只能配置为采样方式,因此,无法获取接口的全量数据;第二种是JSON字符串反解析为对象,提取对象中属性的特征,这种方式仅针对完全JSON化的对象,通过将JSON串解析为JSON对象,遍历对象的各个属性和层级以提取参数路径、参数名和参数值,因此,只适用于JSON化打印的对象,无很好的普适性。
发明内容
有鉴于此,本说明书实施例提供了一种数据处理方法。本说明书同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种数据处理方法,包括:
根据语义符号对获取到的离线日志进行分割,得到多层级结构数据;
根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径;
根据所述参数集合中的所述参数路径构建树形数据结构。
根据本说明书实施例的第二方面,提供了一种数据处理装置,包括:
分割模块,配置为根据语义符号对获取到的离线日志进行分割,得到多层级结构数据;
解析模块,配置为根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径;
构建模块,配置为根据所述参数集合中的所述参数路径构建树形数据结构。
根据本说明书实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述数据处理方法的步骤。
根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述数据处理方法的步骤。
本说明书实施例中,通过根据语义符号对获取到的离线日志进行分割,得到多层级结构数据,根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径,根据所述参数集合中的所述参数路径构建树形数据结构,能够直接对离线日志进行递归解析,因此,对业务代码没有侵入性,且具有很好的普适性。
附图说明
图1是本申请实施例提供的计算设备的结构框图;
图2是本申请实施例提供的数据处理方法的流程图;
图3a和图3b是本申请实施例提供的数据处理方法的处理结果的界面示意图;
图4是本申请实施例提供的数据处理装置的结构示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本申请中,提供了一种数据处理方法。本说明书同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本说明书一实施例的计算设备100的结构框图。该计算设备100的部件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存数据。
计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备100的上述部件以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备100还可以是移动式或静止式的服务器。
其中,处理器120可以执行图2所示数据处理方法中的步骤。图2示出了根据本说明书一实施例的数据处理方法的流程图,包括步骤202至步骤206。
步骤202:根据语义符号对获取到的离线日志进行分割,得到多层级结构数据。
本说明书一实施例中,在对离线日志进行分割之前,首先要获取该离线日志。具体地,为了保证对业务系统的业务代码无侵入性,并且能够获取全量交互参数,可以使用诸如某金融服务集团的日志采集平台对目标系统的接口日志进行采集,并通过离线的方式将采集到的日志以“T+H”(其中,T为时间,H为小时)延时导入开放数据处理服务(Open DataProcessing Service,ODPS)表中,得到待分析的离线日志。
进一步地,根据语义符号对待分析的离线日志进行分割,得到多层级结构数据,换言之,根据语义符号将获取到的离线日志切割成字符串数组。这里,语义符号是业务系统的交互日志中明确层级语义的符号,语义符号可以包括但不限于小括号(又称圆括号)“()”、中括号(又称方括号)“[]”、大括号(又称花括号)“{}”、尖括号“<>”中的任意一种或其组合。优选地,在该实施例中,语义符号可以是中括号“[]”,也可以是大括号“{}”,或者还可以是中括号“[]”和大括号“{}”的组合;其中,中括号“[]”内的参数为数组,大括号“{}”内的参数为对象。多层级结构是采用自上而下分级的结构,多层级结构可以包括至少两个层级结构。
步骤204:根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径。
本说明书一实施例中,所述特征参数还包括参数名、参数类型和参数值,所述根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,包括:根据预设的所述参数路径、所述参数名、所述参数类型和所述参数值对所述多层级结构数据进行解析,得到所述参数集合。这里,特征参数是用于表征物质或现象特性的参数信息,以移动支付业务为例,特征参数通常由参数路径、参数名、参数类型和参数值四个维度来描述。
本说明书一实施例中,所述语义符号包括第一级递增语义符号和第一级递减语义符号,和/或第二级递增语义符号和第二级递减语义符号,所述根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,包括:根据所述预设的特征参数以递归的方式对所述多层级结构数据进行检测;当检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为当前层级的父节点;当进一步检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为所述当前层级的下一层级的子节点;将所述子节点对应的参数路径添加到所述父节点对应的参数路径中,并用分隔符将所述父节点对应的参数路径与所述子节点对应的参数路径分隔开;重复上述检测过程,直到所有的第一级递增语义符号和/或第二级递增语义符号均被检测。
本说明书一实施例中,所述根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,还包括:当检测到所述第一级递减语义符号或所述第二级递减语义符号时,删除当前参数路径中最近的父节点,并退回到上一层级;重复上述检测过程,直到所有的第一级递减语义符号和/或第二级递减语义符号均被检测。
具体地,第一级递增语义符号和第一级递减语义符号,或者第二级递增语义符号和第二级递减语义符号通常是成对出现的。当检测到第一级递增语义符号和/或第二级递增语义符号时,可以通过诸如“回车+空格”的方式在离线日志中增加新的层级,即层级递增;当检测到第一级递减语义符号和/或第二级递减语义符号时,可以通过诸如“回退”的方式在离线日志中删除相应的层级,即层级递减。进一步地,递归是指在函数的定义中使用函数自身的方法,更直接地说,递归的基本思想就是把规模大的问题转化为规模小的相似的子问题来解决。
此外,本实施例主要通过“参数路径”的方式对层级进行解析。然而,解析的方式不限于如上所述的参数路径,例如,还可以使用“层级数+父节点”的方式进行解析,即对层级进行计数,而无需将父节点添加到参数路径中。
具体地,以参数A.B.C为例,可以用参数名、父节点和层级数这三个信息来对其进行描述,即参数A.B.C的参数名为C、父节点为B、层级数为3。因此,在进行解析时,根据层级数和父节点这两个信息一样可以解析出树形数据结构,从而还原模型对象的结构。
需要说明的是,第一级递增语义符号和第二级递增语义符号可以相同,也可以不同;同样地,第一级递减语义符号和第二级递减语义符号可以相同,也可以不同,本发明对此不作限制。
此外,还需要说明的是,离线日志中可以仅包括第一级递增语义符号和/或第一级递减语义符号,也可以仅包括第二级递增语义符号和/或第二级递减语义符号,或者还可以包括上述语义符号的组合,本发明对此不作限制。
下面,将通过具体示例对如上所述的递归解析过程进行详细说明。
假设离线日志为“request=[A[B{C:8},D:5]]”,其中,A、B、C和D为参数名,参数类型为数值,8和5为参数值,左方括号“[”为第一级递增语义符号,右方括号“]”为第一级递减语义符号,左花括号“{”为第二级递增语义符号,右花括号“}”为第二级递减语义符号。
当检测到左方括号“[”时,获取与该左方括号“[”最近的参数路径A作为第一层级的父节点,即将第一层级的父节点记为A;继续执行检测操作,当检测到第二个左方括号“[”时,获取与该左方括号“[”最近的参数路径B作为第二层级的子节点,即将第二层级的子节点记为B;这时,将参数路径B拼接到参数路径A中,并用分隔符“.”将参数路径A与参数路径B分隔开,通过上述操作可以得到参数路径A.B;继续执行检测操作,当检测到左花括号“{”时,获取与该左花括号“{”最近的参数路径C作为第三层级的子节点,即将第三层级的子节点记为C,这时,将参数路径C拼接到当前参数路径A.B中,得到参数路径A.B.C;继续执行检测操作,由于在接下来的操作中并未检测到新的左方括号“[”或左花括号“{”,因此表明所有的左方括号“[”或左花括号“{”都已经被检测到,这时,将参数值8赋予当前参数路径A.B.C,得到键值对A.B.C=8。
进一步地,继续执行检测操作,当检测到右花括号“}”时,删除第三层级的参数路径A.B.C中最近的父节点C,并退回到第二层级,得到第二层级的参数路径A.B;继续执行检测操作,当检测到参数D时,可以确定参数D和参数B均处于第二层级,因此,参数D和参数B应当具有相同的父节点A,由此得到第二层级的另一个参数路径A.D;继续执行检测操作,由于在接下来的操作中并未检测到左方括号“[”或左花括号“{”,因此表明所有的左方括号“[”或左花括号“{”都已经被检测,这时,将参数值5赋予当前参数路径A.D,得到键值对A.D=5;继续执行检测操作,当检测到右方括号“]”,删除第二层级的参数路径A.B中最近的父节点B和第二层级的参数路径A.D中最近的父节点D,并退回到第一层级,得到第一层级的参数路径A。
由此可见,通过递归解析的方法能够提取出所述离线日志的所有特征参数,得到解析后的参数集合A.B.C=8和A.D=5,该参数集合中包括参数路径A.B.C和参数路径A.D。
步骤206:根据所述参数集合中的所述参数路径构建树形数据结构。
在计算机科学中,树是一种抽象数据类型或是实作这种抽象数据类型的数据结构,用来模拟具有树形结构性质的数据集合。树是由n(n>0)个有限节点组成的具有层次关系的集合。进一步地,树形数据结构是一类重要的非线性数据结构,其可以表示数据表素之间一对多的关系,其中以树与二叉树最为常用,直观看来,树是以分支关系定义的层次结构。树形数据结构在客观世界中广泛存在,例如,人类社会的族谱和各种社会组织机构都可以用树形数据结构来形象地表示。
本说明书一实施例中,所述根据所述参数集合中的所述参数路径构建树形数据结构,包括:根据所述参数集合中的所述参数路径以反向递归的方式构建所述树形数据结构。
反向递归也称逆向递归,是指从最底层的子节点开始,向上查找所有的父节点。这里,仍以如上所述的示例为例,对于递归解析得到的参数集合A.B.C=8和A.D=5,可以根据参数路径A.B.C和参数路径A.D,由子节点C开始进行反向递归以构建树形数据结构。具体地,将参数值8赋给子节点C,然后寻找子节点C的父节点B、父节点B的父节点A;进一步地,将参数值5赋给子节点D,然后寻找子节点D的父节点A,由于父节点B和子节点D的父节点均为父节点A,由此确定父节点B和子节点D处于同一层级。因此,通过反向递归可以将所述离线日志以树形结构展示。
本说明书一实施例中,所述数据处理方法还包括:根据所述参数路径对所述参数集合进行校验,并在校验未通过时剔除异常参数路径对应的节点。
一个可选的实施例中,所述数据处理方法还包括:根据所述参数路径和/或所述参数名对所述参数集合进行校验,并在校验未通过时剔除异常参数路径和/或异常参数名对应的节点。
具体地,数据校验过程也可以称为数据过滤过程,是指根据预设的校验或过滤条件剔除参数集合中的异常数据的过程。这里,校验条件例如可以为参数名中不包括中文或其它特殊字符、参数路径中不包括中文或其它特殊字符等;也就是说,如果参数名和/或参数路径中包括中文或其它特殊字符,则认为该参数名和/或参数路径异常,并将其从参数集合中剔除掉。
以参数路径和参数名为例,假设检测到的参数路径为“A.B.测试”,由于该参数路径包含的参数名中含有中文字符“测试”,可以确定该参数名必然不会是一个代码的参数名,因此,确定该参数名为异常参数名,其所在的参数路径为异常参数路径,并返回诸如“校验未通过”的提示信息;进一步地,将该异常参数路径对应的节点剔除掉。
本说明书一实施例中,通过根据语义符号对获取到的离线日志进行分割,得到多层级结构数据,根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径,根据所述参数集合中的所述参数路径构建树形数据结构,能够直接对离线日志进行递归解析,因此,对业务代码没有侵入性,且具有很好的普适性。
图3a和图3b示出了本说明书一实施例的数据处理方法的处理结果的界面示意图。
假设离线日志为:
“paramName=[systemCode,PayCommitRequest=[extParams={payAfterCardBinding,payAccessChannel={access_channel,app_type,term_equip_type},payChannel},replayMode,terminalInfo={clientlp,appTerminalInfo={wifiName,locale},tinyAppld},crderld,cashierType=MOBILE,selectedChannels,payPhase,securityCheckInfo={securitySceneParams={call_back_method,call_back_apiversion},ctuParams,nonBankUaInfo},requestContext={requestTime,hostname,appName}],serviceName]”。
根据上述离线日志中的方括号和大括号对该离线日志进行分割和解析,当检测到第一个左方括号“[”时,获取与该左方括号“[”最近的参数路径systemCode作为第一层级的父节点;继续执行检测操作,当检测到参数路径PayCommitRequest时,确定该参数路径与参数路径systemCode处于同一层级,因此,参数路径PayCommitRequest也是第一层级的父节点;当检测到第二个左方括号“[”时,获取与该左方括号“[”最近的参数路径extParams作为第二层级的子节点,这时,将参数路径extParams拼接到与该参数路径最近的参数路径PayCommitRequest中,并用分隔符“.”将二者分隔开,由此得到新的参数路径PayCommitRequest.extParams;继续执行检测操作,当检测到第一个左花括号“{”时,获取与该左花括号“{”最近的参数路径payAfterCardBinding作为第三层级的子节点,这时,将参数路径payAfterCardBinding拼接到与该参数路径最近的参数路径PayCommitRequest.extParams中,得到新的参数路径PayCommitRequest.extParams.payAfterCardBinding;以此类推,直到所有的左方括号“[”或左花括号“{”都已经被检测到。
进一步地,继续执行检测操作,当检测到第一个右花括号“}”时,删除第四层级的参数路径PayCommitRequest.extParams.payAccessChannel.access_channel中最近的父节点access_channel,并退回到第三层级,得到第三层级的参数路径PayCommitRequest.extParams.payAccessChannel;继续执行检测操作,当检测到第二个右花括号“}”时,删除第三层级的参数路径PayCommitRequest.extParams.payChannel中最近的父节点payChannel,并退回到第二层级,得到第二层级的参数路径PayCommitRequest.extParams;继续执行检测操作,当检测到第一个右方括号“]”,删除第二层级的参数路径PayCommitRequest.requestContext中最近的父节点requestContext,并退回到第一层级,得到第一层级的参数路径PayCommitRequest;以此类推,直到所有的右花括号“}”或右方括号“]”都已经被检测到。
通过递归解析的方法能够提取出上述离线日志的所有特征参数,得到解析后的参数集合。具体地,如图3a所示,经解析得到的参数名为systemCode、PayCommitRequest和serviceName,其中,PayCommitRequest带有子层级。进一步地,如图3b所示,将PayCommitRequest展开之后可以看到PayCommitRequest包括9个子层级,即,extParams、replayMode、terminalInfo、crderld、cashierType、selectedChannels、payPhase、securityCheckInfo和requestContext,其中,extParams、terminalInfo、securityCheckInfo和requestContext还带有子层级,在此不一一进行赘述。
需要说明的是,每个特征参数都有全参数路径作为前缀,例如,参数集合PayCommitRequest.extParams.payAccessChannel.access_channel、参数集合PayCommitRequest.securityCheckInfo.securitySceneParams.call_back_method、参数集合PayCommitRequest.selectedChannels等。
与上述方法实施例相对应,本说明书还提供了数据处理装置实施例,图4示出了本说明书一实施例的数据处理装置的结构示意图。如图4所示,该装置400包括:
分割模块402,配置为根据语义符号对获取到的离线日志进行分割,得到多层级结构数据;
解析模块404,配置为根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径;
构建模块406,配置为根据所述参数集合中的所述参数路径构建树形数据结构。
一个可选的实施例中,所述特征参数还包括参数名、参数类型和参数值,所述解析模块404根据预设的所述参数路径、所述参数名、所述参数类型和所述参数值对所述多层级结构数据进行解析,得到所述参数集合。
一个可选的实施例中,所述语义符号包括第一级递增语义符号和第一级递减语义符号,和/或第二级递增语义符号和第二级递减语义符号,所述解析模块404根据所述预设的特征参数以递归的方式对所述多层级结构数据进行检测,当检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为当前层级的父节点;当进一步检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为所述当前层级的下一层级的子节点,将所述子节点对应的参数路径添加到所述父节点对应的参数路径中,并用分隔符将所述父节点对应的参数路径与所述子节点对应的参数路径分隔开,以及重复上述检测过程,直到所有的第一级递增语义符号和/或第二级递增语义符号均被检测。
一个可选的实施例中,当检测到所述第一级递减语义符号或所述第二级递减语义符号时,所述解析模块404删除当前参数路径中最近的父节点,并退回到上一层级,以及重复上述检测过程,直到所有的第一级递减语义符号和/或第二级递减语义符号均被检测。
一个可选的实施例中,所述构建模块406根据所述参数集合中的所述参数路径以反向递归的方式构建所述树形数据结构。
一个可选的实施例中,该装置400还包括:
校验模块(未示出),配置为根据所述参数路径对所述参数集合进行校验,并在校验未通过时剔除异常参数路径对应的节点。
一个可选的实施例中,该装置400还包括:
校验模块(未示出),配置为根据所述参数路径和/或所述参数名对所述参数集合进行校验,并在校验未通过时剔除异常参数路径和/或异常参数名对应的节点。
一个可选的实施例中,处于同一层级的所述参数路径具有相同的父节点。
一个可选的实施例中,通过根据语义符号对获取到的离线日志进行分割,得到多层级结构数据,根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径,根据所述参数集合中的所述参数路径构建树形数据结构,能够直接对离线日志进行递归解析,因此,对业务代码没有侵入性,且具有很好的普适性。
本说明书一实施例中还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的数据处理方法的步骤。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述数据处理方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

Claims (18)

1.一种数据处理方法,其特征在于,包括:
根据语义符号对获取到的离线日志进行分割,得到多层级结构数据;
根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径;
根据所述参数集合中的所述参数路径构建树形数据结构;
所述根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,包括:
根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测;
根据检测结果确定当前层级的父节点,以及所述当前层级的下一层级的子节点,并基于所述子节点对应的参数路径和所述父节点对应的参数路径确定参数集合。
2.根据权利要求1所述的方法,其特征在于,所述特征参数还包括参数名、参数类型和参数值;
所述根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,包括:
根据预设的所述参数路径、所述参数名、所述参数类型和所述参数值对所述多层级结构数据进行解析,得到所述参数集合。
3.根据权利要求1所述的方法,其特征在于,所述语义符号包括第一级递增语义符号和第一级递减语义符号,和/或第二级递增语义符号和第二级递减语义符号;
所述根据预设的特征参数对所述多层级结构数据中的语义符号进行解析,得到参数集合,包括:
根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测;
当检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为当前层级的父节点;
当进一步检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为所述当前层级的下一层级的子节点;
将所述子节点对应的参数路径添加到所述父节点对应的参数路径中,并用分隔符将所述父节点对应的参数路径与所述子节点对应的参数路径分隔开;
重复执行所述根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测的步骤,直到所有的第一级递增语义符号和/或第二级递增语义符号均被检测。
4.根据权利要求3所述的方法,其特征在于,所述根据预设的特征参数对所述多层级结构数据中的语义符号进行解析,得到参数集合,还包括:
当检测到所述第一级递减语义符号或所述第二级递减语义符号时,删除当前参数路径中最近的父节点,并退回到上一层级;
重复执行所述根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测的步骤,直到所有的第一级递减语义符号和/或第二级递减语义符号均被检测。
5.根据权利要求3所述的方法,其特征在于,所述根据所述参数集合中的所述参数路径构建树形数据结构,包括:
根据所述参数集合中的所述参数路径以反向递归的方式构建所述树形数据结构。
6.根据权利要求1-5任意一项所述的方法,其特征在于,还包括:
根据所述参数路径对所述参数集合进行校验,并在校验未通过时剔除异常参数路径对应的节点。
7.根据权利要求2所述的方法,其特征在于,还包括:
根据所述参数路径和/或所述参数名对所述参数集合进行校验,并在校验未通过时剔除异常参数路径和/或异常参数名对应的节点。
8.根据权利要求1-5任意一项所述的方法,其特征在于,处于同一层级的所述参数路径具有相同的父节点。
9.一种数据处理装置,其特征在于,包括:
分割模块,配置为根据语义符号对获取到的离线日志进行分割,得到多层级结构数据;
解析模块,配置为根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,其中,所述特征参数包括参数路径;
构建模块,配置为根据所述参数集合中的所述参数路径构建树形数据结构;所述根据预设的特征参数对所述多层级结构数据进行解析,得到参数集合,包括:根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测;根据检测结果确定当前层级的父节点,以及所述当前层级的下一层级的子节点,并基于所述子节点对应的参数路径和所述父节点对应的参数路径确定参数集合。
10.根据权利要求9所述的装置,其特征在于,所述特征参数还包括参数名、参数类型和参数值,所述解析模块根据预设的所述参数路径、所述参数名、所述参数类型和所述参数值对所述多层级结构数据进行解析,得到所述参数集合。
11.根据权利要求9所述的装置,其特征在于,所述语义符号包括第一级递增语义符号和第一级递减语义符号,和/或第二级递增语义符号和第二级递减语义符号,所述解析模块根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测,当检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为当前层级的父节点;当进一步检测到所述第一级递增语义符号或所述第二级递增语义符号时,获取与所述第一级递增语义符号或所述第二级递增语义符号最近的参数路径作为所述当前层级的下一层级的子节点,将所述子节点对应的参数路径添加到所述父节点对应的参数路径中,并用分隔符将所述父节点对应的参数路径与所述子节点对应的参数路径分隔开,以及重复执行所述根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测的步骤,直到所有的第一级递增语义符号和/或第二级递增语义符号均被检测。
12.根据权利要求11所述的装置,其特征在于,当检测到所述第一级递减语义符号或所述第二级递减语义符号时,所述解析模块删除当前参数路径中最近的父节点,并退回到上一层级,以及重复执行所述根据所述预设的特征参数以递归的方式对所述多层级结构数据中的语义符号进行检测的步骤,直到所有的第一级递减语义符号和/或第二级递减语义符号均被检测。
13.根据权利要求11所述的装置,其特征在于,所述构建模块根据所述参数集合中的所述参数路径以反向递归的方式构建所述树形数据结构。
14.根据权利要求9-13任意一项所述的装置,其特征在于,还包括:
校验模块,配置为根据所述参数路径对所述参数集合进行校验,并在校验未通过时剔除异常参数路径对应的节点。
15.根据权利要求10所述的装置,其特征在于,还包括:
校验模块,配置为根据所述参数路径和/或所述参数名对所述参数集合进行校验,并在校验未通过时剔除异常参数路径和/或异常参数名对应的节点。
16.根据权利要求9-13任意一项所述的装置,其特征在于,处于同一层级的所述参数路径具有相同的父节点。
17.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1-8任意一项所述方法的步骤。
18.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-8任意一项所述方法的步骤。
CN201910458728.1A 2019-05-29 2019-05-29 数据处理方法以及装置 Active CN110333990B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910458728.1A CN110333990B (zh) 2019-05-29 2019-05-29 数据处理方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910458728.1A CN110333990B (zh) 2019-05-29 2019-05-29 数据处理方法以及装置

Publications (2)

Publication Number Publication Date
CN110333990A CN110333990A (zh) 2019-10-15
CN110333990B true CN110333990B (zh) 2023-06-27

Family

ID=68140537

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910458728.1A Active CN110333990B (zh) 2019-05-29 2019-05-29 数据处理方法以及装置

Country Status (1)

Country Link
CN (1) CN110333990B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124906B (zh) * 2019-12-17 2022-06-28 蚂蚁财富(上海)金融信息服务有限公司 基于动态埋点的跟踪方法、编译方法、装置和电子设备
CN111000359A (zh) * 2019-12-25 2020-04-14 李博 美甲装置及美甲机
CN113676437B (zh) * 2020-05-14 2023-08-18 中国移动通信集团云南有限公司 参数获取方法、参数设置方法以及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521411A (zh) * 2011-12-28 2012-06-27 畅捷通信息技术股份有限公司 公式及公式数据处理装置和公式及公式数据处理方法
CN105677639A (zh) * 2016-01-10 2016-06-15 齐鲁工业大学 一种基于短语结构句法树的英文词义消歧方法
CN106897198A (zh) * 2016-06-17 2017-06-27 阿里巴巴集团控股有限公司 一种日志数据的处理方法及装置
WO2018106624A1 (en) * 2016-12-08 2018-06-14 Nec Laboratories America, Inc Structure-level anomaly detection for unstructured logs
CN109032937A (zh) * 2018-07-16 2018-12-18 江苏满运软件科技有限公司 一种基于网页的数据选取方法及系统
WO2019060326A1 (en) * 2017-09-20 2019-03-28 University Of Utah Research Foundation ANALYSIS OF SYSTEM EVENT LOGS DURING CONTINUOUS TRANSMISSION

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10599689B2 (en) * 2017-10-30 2020-03-24 International Business Machines Corporation Identifying parameter values in log entries

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521411A (zh) * 2011-12-28 2012-06-27 畅捷通信息技术股份有限公司 公式及公式数据处理装置和公式及公式数据处理方法
CN105677639A (zh) * 2016-01-10 2016-06-15 齐鲁工业大学 一种基于短语结构句法树的英文词义消歧方法
CN106897198A (zh) * 2016-06-17 2017-06-27 阿里巴巴集团控股有限公司 一种日志数据的处理方法及装置
WO2018106624A1 (en) * 2016-12-08 2018-06-14 Nec Laboratories America, Inc Structure-level anomaly detection for unstructured logs
WO2019060326A1 (en) * 2017-09-20 2019-03-28 University Of Utah Research Foundation ANALYSIS OF SYSTEM EVENT LOGS DURING CONTINUOUS TRANSMISSION
CN109032937A (zh) * 2018-07-16 2018-12-18 江苏满运软件科技有限公司 一种基于网页的数据选取方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
An Early Risk Detection and Management System for the Cloud with Log Parser;N.Nagashree等;《Computers in Industry》;20180531;第24-33页 *
树形结构数据帧解析和处理;魏纪东等;《小型微型计算机系统》;20101231(第12期);第2352-2354页 *

Also Published As

Publication number Publication date
CN110333990A (zh) 2019-10-15

Similar Documents

Publication Publication Date Title
US11068439B2 (en) Unsupervised method for enriching RDF data sources from denormalized data
CN110333990B (zh) 数据处理方法以及装置
US10078802B2 (en) Method and system of discovering and analyzing structures of user groups in microblog
KR102103902B1 (ko) 컴포넌트 기반의 머신러닝 자동화 예측 장치 및 방법
US10404731B2 (en) Method and device for detecting website attack
CN107341399B (zh) 评估代码文件安全性的方法及装置
KR20190060725A (ko) Sql 검토 방법, 장치, 서버 및 저장 매체
CN102647414B (zh) 协议解析方法、设备及系统
CN113965389B (zh) 一种基于防火墙日志的网络安全管理方法、设备及介质
CN109325232A (zh) 一种基于lda的用户行为异常分析方法、系统及存储介质
CN104102701A (zh) 一种基于hive的历史数据存档与查询方法
CN110263104A (zh) Json字符串处理方法及装置
CN115333966A (zh) 一种基于拓扑的Nginx日志分析方法、系统及设备
CN115189914A (zh) 网络流量的应用程序编程接口api识别方法和装置
CN108876314B (zh) 一种职业生涯专业能力可追溯方法及平台
CN110008462A (zh) 一种命令序列检测方法及命令序列处理方法
WO2016093839A1 (en) Structuring of semi-structured log messages
CN112069305B (zh) 数据筛选方法、装置及电子设备
CN106844553B (zh) 基于样本数据的数据探测和扩充方法及装置
CN116821903A (zh) 检测规则确定及恶意二进制文件检测方法、设备及介质
CN115470489A (zh) 检测模型训练方法、检测方法、设备以及计算机可读介质
CN113783862B (zh) 一种边云协同过程中进行数据校验的方法及装置
CN115766258A (zh) 一种基于因果关系图的多阶段攻击趋势预测方法、设备及存储介质
CN115629945A (zh) 告警处理方法、装置以及电子设备
CN113536762A (zh) Json文本的比对方法及装置

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201009

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

Effective date of registration: 20201009

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant