CN108509658B - 一种xml文件的解析方法和装置 - Google Patents
一种xml文件的解析方法和装置 Download PDFInfo
- Publication number
- CN108509658B CN108509658B CN201810402549.1A CN201810402549A CN108509658B CN 108509658 B CN108509658 B CN 108509658B CN 201810402549 A CN201810402549 A CN 201810402549A CN 108509658 B CN108509658 B CN 108509658B
- Authority
- CN
- China
- Prior art keywords
- file
- target
- xml file
- analysis
- xml
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000004458 analytical method Methods 0.000 claims abstract description 111
- 238000012545 processing Methods 0.000 claims description 16
- 230000008676 import Effects 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 241000282813 Aepyceros melampus Species 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种XML文件的解析方法和装置,涉及文件解析领域,能够提高XML文件的解析效率。该方法包括:依据用户操作指令生成用户调度指令;根据用户调度指令中的文件查找参数从HDFS中查找目标XML文件,其中所述XML文件按照所述XML文件的文件名参数分类存储于所述HDFS中;根据目标XML文件的文件类型选取目标解析器;获取用户调度指令中设定的解析类型,根据该解析类型对应的查找字符串参数使用目标解析器对目标XML文件进行解析得到目标XML文件的解析结果;解析类型包括快速检索和全量解析;将目标XML文件的解析结果导入预设数据库。
Description
技术领域
本发明涉及文件解析领域,尤其涉及一种XML文件的解析方法和装置。
背景技术
在移动互联网时代,随着网络的发展和业务的丰富,越来越多的智能终端连接网络,进行各种各样的业务体验。与此同时,网络设备记录着用户通信中网络表现的各种信令、参数、性能等重要数据。这些数据也呈现了爆发性的增长。其中设备Counter(计数器)和MR(Measurement Report,测量报告)等数据均达到了TB级,对于用户XDR(CDR(Call DataRecord,呼叫详细记录)、TDR(Transaction Data Record,事务详细记录)和SDR(ServiceData Record,业务详细记录))数据,已经达到了PB级的水平。这些数据在不同运营商有着不同的存储格式,但通常情况下,会采用XML(Extensible Markup Language,可扩展标记语言)进行存储和传输。
传统的XML解析技术,如DOM(Document Object Model,文档对象模型)和SAX(Simple APIs for XML,XML简单应用程序接口),已经在解析技术本身达到了很高的水平。但对于运营商如此庞大的数据量和实时性的要求,无法达到快捷方便的解析目的。
发明内容
本发明的实施例提供一种XML文件的解析方法和装置,能够提高XML文件的解析效率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种XML文件的解析方法,包括:
依据用户操作指令生成用户调度指令;根据用户调度指令中的文件查找参数从分布式文件系统HDFS(Hadoop Distributed File System)中查找目标XML文件,其中XML文件按照XML文件的文件名参数分类存储于HDFS中;根据目标XML文件的文件类型选取目标解析器;获取用户调度指令中设定的解析类型,根据解析类型对应的查找字符串参数使用目标解析器对目标XML文件进行解析得到目标XML文件的解析结果;解析类型包括快速检索或全量解析;将目标XML文件的解析结果导入预设数据库。
上述实施例提供的XML文件的解析方法,在接收到用户调度指令后从HDFS中查找与用户调度指令对应的目标XML文件,并根据用户调度指令中设定的解析类型和查找字符串参数使用目标XML文件对应的目标解析器对目标XML文件进行解析,最终将解析结果分类生成预设格式的文件导入至预设数据库。因为本发明实施例提供的XML解析方法在分布式文件系统HFDS的基础上并采用与解析模型对应的查找字符串参数进行查找、解析,可以针对性的有效快速的处理海量的XML文件,避免了像现有的DOM和SAX技术对海量XML文件处理慢的问题,而且本发明实施例提供的方案可以根据用户操作输入的用户调度指令来针对性的查找XML文件并解析,更进一步提高了XML文件的解析效率。
可选的,依据用户操作指令生成用户调度指令之前还包括:
实时获取可扩展标记语言XML文件并对XML文件的文件名进行解析以获取XML文件的文件名参数;根据XML文件的文件名参数将XML文件分类存储在HDFS。
可选的,XML文件至少包括以下任一项:性能数据、配置数据、事务详细记录、业务详细记录和呼叫详细记录。
可选的,文件名参数至少包括:省简称、城市简称、网络域名、详细记录名称、数据来源、年月日和厂家原始文件名;
详细记录名称为事务详细记录或业务详细记录或呼叫详细记录。
可选的,文件查找参数包括:
文件类型、残缺文件名、时间、省简称和城市简称。
可选的,当解析类型为快速检索时,查找字符串参数为目标XML文件中部分内容的类别名称;
当解析类型为全量检索时,查找字符串参数为目标XML文件中所有内容的类别名称。
可选的,将目标XML文件的解析结果导入预设数据库包括:
依据预设分类规则将目标XML文件的解析结果分类并生成目标预设格式文件;
将目标预设格式文件导入至预设数据库。
第二方面,提供一种XML文件的解析装置,包括:作业调度指令模块、处理模块、解析模块和导入模块;
作业调度指令模块,用于依据用户操作指令生成用户调度指令;
处理模块,用于根据作业调度指令模块生成的用户调度指令中的文件查找参数查找目标XML文件,其中XML文件按照XML文件的文件名参数分类存储于分布式文件系统HDFS中;
处理模块还用于根据目标XML文件的文件类型选取目标解析器;
解析模块,用于获取作业调度指令模块生成的用户调度指令中设定的解析类型,并根据解析类型对应的查找字符串参数使用目标解析器对处理模块查找的目标XML文件进行解析得到目标XML文件的解析结果;解析类型包括快速检索和全量解析;
导入模块,用于将解析模块对目标XML文件的解析结果导入预设数据库。
可选的,还包括:获取模块和存储模块;
获取模块,用于实时获取XML文件并对XML文件的文件名进行解析以获取XML文件的文件名参数;
存储模块,用于根据获取模块获取的XML文件的文件名参数将XML文件进行分类存储在HDFS。
可选的,XML文件至少包括以下任一项:性能数据、配置数据、事务详细记录、业务详细记录和呼叫详细记录。
可选的,文件名参数至少包括:省简称、城市简称、网络域名、详细记录名称、数据来源、年月日和厂家原始文件名;
详细记录名称为事务详细记录或业务详细记录或呼叫详细记录。
可选的,文件查找参数包括:
文件类型、残缺文件名、时间、省简称和城市简称。
可选的,当解析类型为快速检索时,查找字符串参数为目标XML文件中部分内容的类别名称;
当解析类型为全量检索时,查找字符串参数为目标XML文件中所有内容的类别名称。
可选的,导入模块具体用于:依据预设分类规则将解析模块对目标XML文件的解析结果分类并生成目标预设格式文件;
将目标预设格式文件导入至预设数据库。
本发明实施例提供的XML文件的解析方法和装置,该方法包括:依据用户操作指令生成用户调度指令;根据用户调度指令中的文件查找参数从HDFS中查找目标XML文件,其中XML文件按照XML文件的文件名参数分类存储于HDFS中;根据目标XML文件的文件类型选取目标解析器;获取用户调度指令中设定的解析类型,根据解析类型对应的查找字符串参数使用目标解析器对目标XML文件进行解析得到目标XML文件的解析结果;解析类型包括快速检索或全量解析;将目标XML文件的解析结果导入预设数据库。所以本发明实施例提供的方案在对XML文件进行解析时,在接收到用户调度指令后从HDFS中查找与用户调度指令对应的目标XML文件,并根据用户调度指令中设定的解析类型和查找字符串参数使用目标XML文件对应的目标解析器对目标XML文件进行解析,最终将解析结果分类生成预设格式的文件导入至预设数据库。本发明实施例提供的XML解析方法在分布式文件系统HFDS的基础采用与解析模式对应的查找字符串参数进行查找、解析,可以有效快速的处理海量的XML文件,避免了像现有的DOM和SAX技术对海量XML文件处理慢的问题,而且本发明实施例提供的方案可以根据用户操作输入的用户调度指令来针对性的查找XML文件并解析,更进一步提高了XML文件的解析效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种XML文件的解析方法流程示意图;
图2为本发明实施例提供的一种XML文件的解析结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
还需要说明的是,本发明实施例中,“的(英文:of)”,“相应的(英文:corresponding,relevant)”和“对应的(英文:corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
传统的XML解析技术,如DOM(Document Object Model,文档对象模型)和SAX(Simple APIs for XML,XML简单应用程序接口),已经在解析技术本身达到了很高的水平。但对于运营商如此庞大的数据量和实时性的要求,无法达到快捷方便的解析目的。
针对上述问题,参照图1所示,本发明实施例提供一种XML文件的解析方法,包括:
101、实时获取XML文件并对XML文件的文件名进行解析以获取XML文件的文件名参数。
其中,XML文件至少包括以下任一项:性能数据(PM,Performance Message)、配置数据(CM,Configuration Message)、事务详细记录(TDR,Transaction Data Record)、业务详细记录(SDR,Service Data Record)和呼叫详细记录(CDR,Call Data Record);
文件名参数至少包括:省简称、城市简称、网络域名、详细记录名称、数据来源、年月日和厂家原始文件名;详细记录名称为事务详细记录或业务详细记录或呼叫详细记录;
一般来说,系统间传输的XML文件均又一定的命名规则,例如针对某种XDR(TDR、SDR和CDR的总称)数据,其标准文件名为:省简称_地市简称_厂家简称_CN域_CDR_数据来源_YYYYMMDD_厂家原始文件名(例如:BJ_BJ_BRD_PS_CDR_3RDPART_20131025_PS_SERVREQLOG)。
102、根据XML文件的文件名参数将XML文件分类存储在HDFS。
103、依据用户操作指令生成用户调度指令。
示例性的,用户一般通过操作UI(User Interface,用户界面)输入指令以生成用户调度指令;
实际中,用户调度指令中的内容具体包括:解析命令、解析类型、文件查找参数(文件类型、残缺文件名、时间、省简称和城市简称)和查找字符串;
其中,解析命令是可执行进行名,解析XML文件的装置只有在接收到解析命令后才会进行后续流程对XML文件进行解析,示例性的,解析命令具体为XmlSparkParser;
解析类型时解析作业的执行类型指示,分为快速检索和全量检索,解析类型在用户调度指令中代表的参数为parserstyle,示例性的,该参数取值为0时表示解析类型为快速检索,当取值为1时表示解析类型为全量解析;
文件类型用于标识带解析文件的类型,因为XML文件因为数据来源和数据内容的不同会存在不同的文件模板,而不同的文件模板又对应不同的解析器,所以需要在对XML文件解析时提供XML文件的文件类型,在用户调度指令中文件类型代表的参数为filestyle,示例性的,当filestyle取值为K1时,表示文件类型为1,当filestyle取值为K2时,表示文件类型为2,当filestyle取值为Kn时,表示文件类型为n;
残缺文件名为待解析的XML文件的部分文件名参数或者带通配符的字符串,常用到的通配符包括:(1)*-通配符,代表任意字符(0到多个);(2)?-通配符,代表一个字符;(3)[]-中间为字符组合;(4){}-中间为命令区块组合;
时间为待解析的XML文件生成的时刻或时间段,其在用户调度指令中代表的参数为data,表示为YYYYMMDD或YYYYMMDD-YYYYMMDD;
省简称为待解析的XML文件中数据所属的省份名称,其在用户调度指令中代表的参数为province,取值为省份简称,例如北京表示为bj,天津表示为tj等;
城市简称为待解析的XML文件中数据所述的城市名称,其在用户调度指令中代表的参数为city,取值为城市简称,例如石家庄表示为sjz,厦门表示为xm等;
查找字符串的取值和解析类型对应,当解析类型为快速检索时,查找字符串取值为XML文件中的元素属性和其叶子节点名称即部分内容的类别名称,举例如:(属性1-属性2-......-属性n/内容),(快速检索命令仅能提取带有叶子节点的元素);当解析类型为全量解析时,查找字符串取值为待解析XML文件的所有内容的类别名称,实际中,用户设定用户调度指令时,只有选择快速检索时会输入需要的查找字符串,当用户选择全量解析时并不需要输入查找字符串,解析装置会默认此时的查找字符串为待解析XML文件的所有内容的类别名称。
104、根据用户调度指令中的文件查找参数从HDFS中查找目标XML文件。
105、根据目标XML文件的文件类型选取目标解析器;获取用户调度指令中设定的解析类型。
对于移动通信、金融等领域,很多系统、设备涉及多厂家,其存储的XML文件的模板均不相同。本发明实施由于需要对不同模板均有一定的适用性,因此,针对不同模板的XML文件,需要配置不同的解析器。
106、根据解析类型对应的查找字符串参数使用目标解析器对目标XML文件进行解析得到目标XML文件的解析结果。
示例性的,以某厂家的MR(Measurement Report,测量报告)数据形成的XML文件为例:
上述XML文件表示的是LTE网络下,一个基站下各小区在不同时刻MR的采集点数据,采集指标包括RSRP(Reference Signal Receiving Power,参考信号接收功率)、RSRQ(Reference Signal Receiving Quality,参考信号接收质量)、PCI(Physical CellIdentifier,物理小区标识)等。
针对本例中的数据,当采用快速检索的方式使用对应解析器提取第一个对象object中的内容如下表1:
object Id | EventType | MmeCode | MmeGroupId | MmeUeSlapId |
655429-21 | A1 | 130 | 38657 | 385933216 |
655429-11 | A1 | 130 | 38657 | 385924862 |
655429-11 | A1 | 130 | 38657 | 385943682 |
LteScCgi | GsmNcellBcch | LteNcRSRP | LteNcRSRQ | LteNcEarfcn |
167789845 | NIL | NIL | NIL | NIL |
167789835 | NIL | NIL | NIL | NIL |
167789835 | NIL | NIL | NIL | NIL |
GsmNcellNcc | GsmNcellBcc | GsmNcellCarrierRSSI |
NIL | NIL | NIL |
NIL | NIL | NIL |
NIL | NIL | NIL |
表1
针对本例中的数据,当采用全量解析的方式使用对应解析器进行解析时,是将本例提供的XML文件中所有元素的内容全部解析出来形成XML文档二维表,全量解析得到的解析结果的内容如下表2(其中关于基站节点的内容仅展示第一个基站节点,其余基站节点的解析内容可参照第一个基站节点的解析内容同理得出):
eNB Id | userLabel | object Id | EventType | MmeCode |
655429 | userLabel | 655429-21 | A1 | 130 |
655429 | userLabel | 655429-11 | A1 | 130 |
655429 | userLabel | 655429-11 | A1 | 130 |
LteScEarfcn | LteScPci | LteScCgi | GsmNcellBcch | LteNcRSRP |
40340 | 40 | 167789845 | NIL | NIL |
40340 | 39 | 167789835 | NIL | NIL |
40340 | 39 | 167789835 | NIL | NIL |
表2
其中,上述表格中使用到的名词含义如下:
object Id:对象编号;fileFormatVersion:文件版本格式;jobid:工作代码;startTime:开始时间;endTime:结束时间;eNB id:基站编号;EventType:事件类型;MmeCode:网络节点编号;MmeGroupId:网络节点组标识;MmeUeS1apId:用户在网络节点侧S1接口上的唯一标识;TimeStamp:时间戳;LteScRSRP:LTE服务小区的参考信号接收功率;LteScRSRQ:LTE服务小区的参考信号接收质量;LteScEarfcn:LTE服务小区载波号;LteScPci:LTE服务小区的物理小区识别码;LteScCgi:LTE服务小区的全球小区识别码;LteNcRSRP:LTE已定义邻区关系和未定义邻区关系小区的参考信号接收功率;LteNcRSRQ:LTE已定义邻区关系和未定义邻区关系小区的参考信号接收质量;LteNcEarfcn:LTE已定义邻区关系和未定义邻区关系的邻区载波号;LteNcPci:LTE已定义邻区关系和未定义邻区关系的物理小区标识;UtraCellParameterId:WCDMA已定义邻区关系和未定义邻区关系的邻区主载波的小区参数编码;UtraCpichRSCP:邻近的WCDMA小区中公共控制物理信道接收信号码功率;UtraCpichEcNo:邻近的WCDMA小区中共控制物理信道信号质量;GsmNcellNcc:已定义邻区关系和未定义邻区关系的GSM邻区网络色码;GsmNcellBcc:已定义邻区关系和未定义邻区关系的GSM邻区基站色码;GsmNcellBcch:已定义邻区关系和未定义邻区关系的GSM邻区广播控制信道的信道号;GsmNcellCarrierRSSI:已定义邻区关系和未定义邻区关系的GSM邻区载波信号接收强度指示。
107、将目标XML文件的解析结果导入预设数据库。
具体的,107步骤包括:
S1、依据预设分类规则将目标XML文件的解析结果分类并生成目标预设格式文件。
具体的,预设分类规则可以是先按照解析结果所属的省简称、城市简称、厂家名称、时间和解析类型对解析结果进行命名,然后根据命名结果的不同进行分类,最后将分类好的解析结果设置为目标格式文件,目标格式文件可以是CSV文件也可以是其他类似文件。
S2、将目标预设格式文件导入至预设数据库。
示例性的,预设数据库为Hive/Impala开源数据库。
本发明实施例提供的XML文件的解析方法,该方法包括:依据用户操作指令生成用户调度指令;根据用户调度指令中的文件查找参数从HDFS中查找目标XML文件,其中XML文件按照XML文件的文件名参数分类存储于HDFS中;根据目标XML文件的文件类型选取目标解析器;获取用户调度指令中设定的解析类型,根据解析类型对应的查找字符串参数使用目标解析器对目标XML文件进行解析得到目标XML文件的解析结果;解析类型包括快速检索或全量解析;将目标XML文件的解析结果导入预设数据库。所以本发明实施例提供的方案在对XML文件进行解析时,在接收到用户调度指令后从HDFS中查找与用户调度指令对应的目标XML文件,并根据用户调度指令中设定的解析类型和查找字符串参数使用目标XML文件对应的目标解析器对目标XML文件进行解析,最终将解析结果分类生成预设格式的文件导入至预设数据库。本发明实施例提供的XML解析方法在分布式文件系统HFDS的基础采用与解析模式对应的查找字符串参数进行查找、解析,可以有效快速的处理海量的XML文件,避免了像现有的DOM和SAX技术对海量XML文件处理慢的问题,而且本发明实施例提供的方案可以根据用户操作输入的用户调度指令来针对性的查找XML文件并解析,更进一步提高了XML文件的解析效率。
参照图2所示,本发明实施例还提供一种XML文件的解析装置01,包括:作业调度指令模块21、处理模块22、解析模块23和导入模块24;
作业调度指令模块21,用于依据用户操作指令生成用户调度指令;
处理模块22,用于根据作业调度指令模块21生成的用户调度指令中的文件查找参数查找目标XML文件,其中XML文件按照XML文件的文件名参数分类存储于分布式文件系统HDFS中;
处理模块22还用于根据目标XML文件的文件类型选取目标解析器;
解析模块23,用于获取作业调度指令模块21生成的用户调度指令中设定的解析类型,并根据解析类型对应的查找字符串参数使用目标解析器对处理模块22查找的目标XML文件进行解析得到目标XML文件的解析结果;解析类型包括快速检索和全量解析;
导入模块24,用于将解析模块23对目标XML文件的解析结果导入预设数据库,示例性的,导入模块为HIVE/Impala接口。
可选的,还包括:获取模块25和存储模块26;
获取模块25,用于实时获取XML文件并对XML文件的文件名进行解析以获取XML文件的文件名参数;
存储模块26,用于根据获取模块获取的XML文件的文件名参数将XML文件进行分类存储在HDFS。
可选的,XML文件至少包括以下任一项:性能数据、配置数据、事务详细记录、业务详细记录和呼叫详细记录。
可选的,文件名参数至少包括:省简称、城市简称、网络域名、详细记录名称、数据来源、年月日和厂家原始文件名;
详细记录名称为事务详细记录或业务详细记录或呼叫详细记录。
可选的,文件查找参数包括:文件类型、残缺文件名、时间、省简称和城市简称。
可选的,当解析类型为快速检索时,查找字符串参数为目标XML文件中部分内容的类别名称;
当解析类型为全量检索时,查找字符串参数为目标XML文件中所有内容的类别名称。
可选的,导入模块24具体用于:依据预设分类规则将解析模块23对目标XML文件的解析结果分类并生成目标预设格式文件;
将目标预设格式文件导入至预设数据库。
本发明实施例提供的XML文件的解析装置,因为该装置包括:作业调度指令模块、处理模块、解析模块和导入模块;作业调度指令模块,用于依据用户操作指令生成用户调度指令;处理模块,用于根据作业调度指令模块生成的用户调度指令中的文件查找参数查找目标XML文件,其中XML文件按照XML文件的文件名参数分类存储于分布式文件系统HDFS中;处理模块还用于根据目标XML文件的文件类型选取目标解析器;解析模块,用于获取作业调度指令模块生成的用户调度指令中设定的解析类型,并根据解析类型对应的查找字符串参数使用目标解析器对处理模块查找的目标XML文件进行解析得到目标XML文件的解析结果;解析类型包括快速检索和全量解析;导入模块,用于将解析模块对目标XML文件的解析结果导入预设数据库。所以本发明实施例提供的方案在对XML文件进行解析时,在接收到用户调度指令后从HDFS中查找与用户调度指令对应的目标XML文件,并根据用户调度指令中设定的解析类型和查找字符串参数使用目标XML文件对应的目标解析器对目标XML文件进行解析,最终将解析结果分类生成预设格式的文件导入至预设数据库。本发明实施例提供的XML解析方法在分布式文件系统HFDS的基础采用与解析模式对应的查找字符串参数进行查找、解析,可以有效快速的处理海量的XML文件,避免了像现有的DOM和SAX技术对海量XML文件处理慢的问题,而且本发明实施例提供的方案可以根据用户操作输入的用户调度指令来针对性的查找XML文件并解析,更进一步提高了XML文件的解析效率。
结合本发明公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。本发明实施例还提供一种存储介质,该存储介质可以包括存储器,用于储存为解析XML文件的装置所用的计算机软件指令,其包含执行XML文件的解析方法所设计的程序代码。具体的,软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(Read Only Memory,ROM)、可擦除可编程只读存储器(Erasable Prog rammable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于核心网接口设备中。当然,处理器和存储介质也可以作为分立组件存在于核心网接口设备中。
本发明实施例还提供一种计算机程序,该计算机程序可直接加载到存储器中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述的XML文件的解析方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (12)
1.一种XML文件的解析方法,其特征在于,包括:
依据用户操作指令生成用户调度指令;
根据所述用户调度指令中的文件查找参数从分布式文件系统HDFS中查找目标可扩展标记语言XML文件,其中所述XML文件按照所述XML文件的文件名参数分类存储于所述HDFS中;
根据所述目标XML文件的文件类型选取目标解析器;
获取所述用户调度指令中设定的解析类型,根据所述解析类型对应的查找字符串参数使用所述目标解析器对所述目标XML文件进行解析得到所述目标XML文件的解析结果;所述解析类型包括快速检索或全量解析;
将所述目标XML文件的解析结果导入预设数据库;
当所述解析类型为快速检索时,所述查找字符串参数为所述目标XML文件中部分内容的类别名称;
当所述解析类型为全量检索时,所述查找字符串参数为所述目标XML文件中所有内容的类别名称。
2.根据权利要求1所述的方法,其特征在于,所述依据用户操作指令生成用户调度指令之前还包括:
实时获取XML文件并对所述XML文件的文件名进行解析以获取所述XML文件的文件名参数;
根据所述XML文件的文件名参数将所述XML文件分类存储在HDFS。
3.根据权利要求1所述的方法,其特征在于,所述XML文件至少包括以下任一项:性能数据、配置数据、事务详细记录、业务详细记录和呼叫详细记录。
4.根据权利要求1所述的方法,其特征在于,所述文件名参数至少包括:省简称、城市简称、网络域名、详细记录名称、数据来源、日期和厂家原始文件名;
所述详细记录名称为事务详细记录或业务详细记录或呼叫详细记录。
5.根据权利要求1所述的方法,其特征在于,所述文件查找参数包括:
文件类型、残缺文件名、时间、省简称和城市简称。
6.根据权利要求1所述的方法,其特征在于,所述将所述目标XML文件的解析结果导入预设数据库包括:
依据预设分类规则将所述目标XML文件的解析结果分类并生成目标预设格式文件;
将所述目标预设格式文件导入至预设数据库。
7.一种XML文件的解析装置,其特征在于,包括:作业调度指令模块、处理模块、解析模块和导入模块;
所述作业调度指令模块,用于依据用户操作指令生成用户调度指令;
所述处理模块,用于根据所述作业调度指令模块生成的用户调度指令中的文件查找参数查找目标XML文件,其中所述XML文件按照所述XML文件的文件名参数分类存储于分布式文件系统HDFS中;
所述处理模块还用于根据所述目标XML文件的文件类型选取目标解析器;
所述解析模块,用于获取所述作业调度指令模块生成的所述用户调度指令中设定的解析类型,并根据所述解析类型对应的查找字符串参数使用所述目标解析器对所述处理模块查找的目标XML文件进行解析得到所述目标XML文件的解析结果;所述解析类型包括快速检索和全量解析;
所述导入模块,用于将所述解析模块对所述目标XML文件的解析结果导入预设数据库;
当所述解析类型为快速检索时,所述查找字符串参数为所述目标XML文件中部分内容的类别名称;
当所述解析类型为全量检索时,所述查找字符串参数为所述目标XML文件中所有内容的类别名称。
8.根据权利要求7所述的装置,其特征在于,还包括:获取模块和存储模块;
所述获取模块,用于实时获取XML文件并对所述XML文件的文件名进行解析以获取所述XML文件的文件名参数;
所述存储模块,用于根据所述获取模块获取的所述XML文件的文件名参数将所述XML文件进行分类存储在HDFS。
9.根据权利要求7所述的装置,其特征在于,所述XML文件至少包括以下任一项:性能数据、配置数据、事务详细记录、业务详细记录和呼叫详细记录。
10.根据权利要求7所述的装置,其特征在于,所述文件名参数至少包括:省简称、城市简称、网络域名、详细记录名称、数据来源、年月日和厂家原始文件名;
所述详细记录名称为事务详细记录或业务详细记录或呼叫详细记录。
11.根据权利要求7所述的装置,其特征在于,所述文件查找参数包括:
文件类型、残缺文件名、时间、省简称和城市简称。
12.根据权利要求7所述的装置,其特征在于,所述导入模块具体用于:
依据预设分类规则将所述解析模块对所述目标XML文件的解析结果分类并生成目标预设格式文件;
将所述目标预设格式文件导入至预设数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810402549.1A CN108509658B (zh) | 2018-04-28 | 2018-04-28 | 一种xml文件的解析方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810402549.1A CN108509658B (zh) | 2018-04-28 | 2018-04-28 | 一种xml文件的解析方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108509658A CN108509658A (zh) | 2018-09-07 |
CN108509658B true CN108509658B (zh) | 2021-01-26 |
Family
ID=63399700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810402549.1A Active CN108509658B (zh) | 2018-04-28 | 2018-04-28 | 一种xml文件的解析方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108509658B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109542931A (zh) * | 2018-11-23 | 2019-03-29 | 四川长虹电器股份有限公司 | 一种基于正则表达式提高sql数据库精确查询效率的方法 |
CN109710808B (zh) * | 2018-12-28 | 2023-04-28 | 深圳市元征科技股份有限公司 | 一种xml文件的解析方法、系统、装置及可读存储介质 |
CN112446193A (zh) * | 2019-08-28 | 2021-03-05 | 北京国双科技有限公司 | 一种提取pptx文件内容的方法及装置 |
CN113010588B (zh) * | 2019-12-20 | 2023-07-04 | 北京国基科技股份有限公司 | 一种数据表格的处理方法 |
CN111290997B (zh) * | 2020-01-17 | 2023-06-06 | 北京轩宇信息技术有限公司 | 一种brd文件数据自动解析方法及装置 |
CN111353907A (zh) * | 2020-02-24 | 2020-06-30 | 广州兴森快捷电路科技有限公司 | 工艺规格管理方法及系统 |
CN111694797B (zh) * | 2020-06-04 | 2024-03-15 | 中国建设银行股份有限公司 | 一种文件上传及解析方法、装置、服务器及介质 |
CN111651514A (zh) * | 2020-07-09 | 2020-09-11 | 中国银行股份有限公司 | 数据导入方法及装置 |
CN112328551A (zh) * | 2020-11-09 | 2021-02-05 | 医渡云(北京)技术有限公司 | 医疗数据解析方法、装置、介质及电子设备 |
CN113504909B (zh) * | 2021-06-30 | 2022-10-14 | 中汽数据(天津)有限公司 | 工业app异构组件数据交换方法及相关设备 |
CN115269515B (zh) * | 2022-09-22 | 2022-12-09 | 泰盈科技集团股份有限公司 | 一种检索指定目标文档数据处理方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101446968B (zh) * | 2008-12-10 | 2013-07-17 | 上海闻泰电子科技有限公司 | 解析可扩展标记语言的方法 |
CN101650733B (zh) * | 2009-07-31 | 2012-10-31 | 金蝶软件(中国)有限公司 | 一种单点登录系统及其个性化数据引入方法和装置 |
CN103544281A (zh) * | 2013-10-23 | 2014-01-29 | 中安消技术有限公司 | 一种关键字检索方法、装置及系统 |
CN104767795A (zh) * | 2015-03-17 | 2015-07-08 | 浪潮通信信息系统有限公司 | 一种基于hadoop的lte mro数据统计方法及系统 |
CN105243096B (zh) * | 2015-09-11 | 2018-12-04 | 北京恒华伟业科技股份有限公司 | 一种xml文件处理方法和装置 |
-
2018
- 2018-04-28 CN CN201810402549.1A patent/CN108509658B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108509658A (zh) | 2018-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108509658B (zh) | 一种xml文件的解析方法和装置 | |
CN109739934B (zh) | 差集对账方法、介质、计算机设备及系统 | |
CN106445795B (zh) | 一种数据库sql效率检测方法及装置 | |
CN110543513B (zh) | 分布式数据库增量数据同步方法、设备及存储介质 | |
CN111666205B (zh) | 一种数据审计的方法、系统、计算机设备和存储介质 | |
US11809406B2 (en) | Event records in a log file | |
CN113704094A (zh) | 测试用例知识库构建方法、装置、电子设备及存储介质 | |
CN113868698A (zh) | 一种文件脱敏方法及设备 | |
CN114153898A (zh) | 梳理数据库表间关系的方法、装置及应用 | |
CN112882713B (zh) | 一种日志解析的方法、装置、介质及计算机设备 | |
CN112307318A (zh) | 一种内容发布方法、系统及装置 | |
Murphy | Developing process for mobile device forensics | |
CN113342647A (zh) | 一种测试数据的生成方法及装置 | |
CN117874033A (zh) | 数据库分表方法、装置、电子设备及存储介质 | |
CN115437930B (zh) | 网页应用指纹信息的识别方法及相关设备 | |
CN111143329A (zh) | 一种数据处理方法及装置 | |
CN112597179B (zh) | 日志信息解析方法及装置 | |
CN109947838A (zh) | 一种存储数据的方法及装置 | |
CN110968555A (zh) | 维度数据处理方法和装置 | |
CN110532242B (zh) | 业务消息发送方法和装置 | |
CN108521527B (zh) | 话单差异检测方法、系统、计算机存储介质及计算机设备 | |
CN116431677B (zh) | 基于内存数据库的数据路由方法、系统和可读存储介质 | |
CN113138936B (zh) | 数据处理方法、装置、存储介质及处理器 | |
CN118626359B (zh) | 一种基于大语言模型的日志分析方法及系统 | |
CN116303627B (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 |