CN111061927A - 数据处理方法、装置及电子设备 - Google Patents
数据处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111061927A CN111061927A CN201811204022.4A CN201811204022A CN111061927A CN 111061927 A CN111061927 A CN 111061927A CN 201811204022 A CN201811204022 A CN 201811204022A CN 111061927 A CN111061927 A CN 111061927A
- Authority
- CN
- China
- Prior art keywords
- byte
- value
- character string
- json file
- letter
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种数据处理方法、装置及电子设备,其中方法包括:获取待解析的JSON文件;通过并行处理方式解析所述JSON文件。本申请实施例提供的数据处理方法、装置及电子设备,可以获取待解析的JSON文件,并通过并行处理方式解析所述JSON文件,相对于现有的串行解析方式,能够有效提高解析的效率,提升JSON文件解析速度,满足业务的性能需求,保障业务的实时处理。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据处理方法、装置及电子设备。
背景技术
JSON(JavaScript Object Notation,JS对象简谱)是一种轻量级的数据交换格式,具有层次简洁、结构清晰等优势,易于用户阅读和编写,同时也便于机器解析和生成,能够有效地提升网络传输效率。
现有技术中,很多用户请求都采用JSON文件格式来表示,在接收到JSON文件后,需要对JSON文件进行解析,确定用户的请求信息,然后执行请求的内容,最后再将请求的结果返回给用户。然而,JSON文件的解析过程耗时较长,甚至解析的时间超过了处理请求的时间,解析效率较低,不能满足业务的性能需求,影响业务的实时处理。
发明内容
有鉴于此,本申请实施例提供一种数据处理方法、装置及电子设备,以提高JSON文件解析效率。
第一方面,本申请实施例提供一种数据处理方法,包括:
获取待解析的JSON文件;
通过并行处理方式解析所述JSON文件。
第二方面,本申请实施例提供一种数据处理方法,包括:
获取待解析的键值对文件;
通过并行处理方式解析所述键值对文件。
第三方面,本申请实施例提供一种数据处理装置,包括:
第一获取模块,用于获取待解析的JSON文件;
第一解析模块,用于通过并行处理方式解析所述JSON文件。
第四方面,本申请实施例提供一种数据处理装置,包括:
第二获取模块,用于获取待解析的键值对文件;
第二解析模块,用于通过并行处理方式解析所述键值对文件。
第五方面,本申请实施例提供一种电子设备,包括第一处理器和第一存储器,所述第一存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述第一处理器执行时实现上述第一方面中的数据处理方法。该电子设备还可以包括第一通信接口,用于与其它设备或通信网络通信。
第六方面,本申请实施例提供一种电子设备,包括第二处理器和第二存储器,所述第二存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述第二处理器执行时实现上述第二方面中的数据处理方法。该电子设备还可以包括第二通信接口,用于与其它设备或通信网络通信。
本申请实施例提供了一种计算机存储介质,用于储存计算机程序,所述计算机程序使计算机执行时实现上述第一方面或第二方面中的数据处理方法。
本申请实施例提供的数据处理方法、装置及电子设备,可以获取待解析的JSON文件,并通过并行处理方式解析所述JSON文件,相对于现有的串行解析方式,能够有效提高解析的效率,提升JSON文件解析速度,满足业务的性能需求,保障业务的实时处理。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的数据处理方法实施例一的流程示意图;
图2为本申请实施例提供的数据处理方法实施例二的流程示意图;
图3为本申请实施例提供的一种字符串分割的逻辑示意图;
图4为本申请实施例提供的一种字符串分割方法的流程示意图;
图5为本申请实施例提供的一种字符串匹配方法的流程示意图;
图6为本申请实施例提供的一种字符串匹配的逻辑示意图;
图7为本申请实施例提供的一种字符串标记方法的流程示意图;
图8为本申请实施例提供的一种字符串标记的逻辑示意图;
图9为本申请实施例提供的一种字符串处理的整体逻辑示意图;
图10为本申请实施例提供的数据处理方法实施例三的流程示意图;
图11为本申请实施例提供的一种数据处理装置的结构示意图;
图12为本申请实施例提供的另一种数据处理装置的结构示意图;
图13为本申请实施例提供的一种电子设备的结构示意图;
图14为本申请实施例提供的另一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
下面结合如下的方法实施例以及附图对本申请实施例提供的数据处理方法的实现过程进行介绍。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
本申请实施例提供一种数据处理方法,可以获取待解析的键值对文件,并通过并行处理方式解析所述键值对文件。其中,本申请实施例中所述的键值对文件可以为任意包含键值对的文件。为了便于描述,下面以JSON文件为例来对本申请实施例提供的方法进行说明。
图1为本申请实施例提供的数据处理方法实施例一的流程示意图。本实施例中方法的执行主体可以为任意电子设备,尤其可以为具有数据处理功能的电子设备。如图1所示,本实施例中的数据处理方法,可以包括:
步骤101、获取待解析的JSON文件。
步骤102、通过并行处理方式解析所述JSON文件。
本申请实施例用于对JSON文件进行解析。具体地,可以通过多种方式获取待解析的JSON文件,例如可以由用户输入待解析的JSON文件,或者,可以从其他设备获取待解析的JSON文件,或者,可以根据用户的操作在数据库中查找对应的JSON文件进行解析。
本申请实施例中所指的并行处理,可以是通过多线程实现并行处理,每个线程处理一个或多个字节的数据,所述线程可以是通过任意方式实现的线程,例如,可以通过SIMD(Single Instruction Multiple Data,单指令多数据流)、SIMT(Single InstructionMultiple Threads,单指令多线程)等方式实现并行处理。
可选的,可以通过异构计算架构来实现并行处理,其中,异构计算架构是指包含多种计算资源的架构,如包含CPU、GPU、FPGA、加速器等。异构计算架构能够利用多种并行方式实现计算任务,能够有效利用计算资源,满足解析需要。例如,可以利用CPU中的线程和GPU中的线程同时对数据进行并行处理。
通过并行处理方式解析JSON文件的方式可以有很多种。在一种可选的实施方式中,可以将待解析的JSON文件分割为多个部分,每个线程处理其中一个部分,然后再将各个线程得到的结果汇总起来,得到JSON文件对应的解析数据。
在另一种可选的实施方式中,可以每个线程处理JSON文件中的一个字节,一个单词可能会占用多个字节,因此,可以仅由包含单词特定位字母的字节对应的线程对单词进行处理,单词的其它字节对应的线程不对单词进行处理,这样能够有效节省资源,提高处理速度。
综上,本实施例提供的数据处理方法,可以获取待解析的JSON文件,并通过并行处理方式解析所述JSON文件,相对于现有的串行解析方式,能够有效提高解析的效率,提升JSON文件解析速度,满足业务的性能需求,保障业务的实时处理。
图2为本申请实施例提供的数据处理方法实施例二的流程示意图。本实施例是在上述实施例提供的技术方案的基础上,通过分割、匹配和标记等流程实现JSON文件的并行解析。如图2所示,本实施例中的数据处理方法,可以包括:
步骤201、获取待解析的JSON文件。
步骤202、采用并行处理方式对JSON文件分割,得到多个字符串。
步骤203、根据多个字符串,确定JSON文件中的名称、值、有效分隔符。
步骤204、根据名称确定值对应的类型。
为了便于描述,将步骤202记为分割,将步骤203记为匹配,将步骤204记为标记。
下面首先介绍分割流程。
图3为本申请实施例提供的一种字符串分割的逻辑示意图。JSON文件中的数据为(名称,值)对,表现为字节流,包含了一系列字节B0、B1、B2、……,每个并行处理线程可以处理一个字节。在对JSON文件进行解析时,首先进行字符串分割,将字节数据中的名称、值、以及有效分隔符分割为有效的字符串:W0、W1、W2、……。
图4为本申请实施例提供的一种字符串分割方法的流程示意图。如图4所示,步骤202中的采用并行处理方式对JSON文件分割,得到多个字符串,可以包括:
步骤2021、采用并行处理方式对JSON文件中的字节进行处理,确定每个字节是否为字母或者有效分隔符;
步骤2022、若字节为字母,则判断所述字节是否为单词的特定位字母:若所述字节为单词的特定位字母,则所述字节对应的字符串为所述字节所属的单词;若所述字节为字母但不为单词的特定位字母,则所述字节对应的字符串大小为零;若字节为有效分隔符,则所述字节对应的字符串为所述有效分隔符。
具体地,针对每一个字节,可以判断该字节属于字母还是属于分隔符,从而确定该字节对应的字符串。
如果字节属于字母,那么判断该字节是否为单词的特定位字母,本实施例中,所述单词的特定位字母可以为所述单词的首字母(即单词的起始字符),可以根据所述字节的前一个字节是否为字母来判断所述字节是否为单词的首字母。
如果所述字节的前一个字节是字母,则所述字节不是单词首字母,若所述字节的前一个字节是分隔符,则所述字节就是单词首字母。
如果字节是单词首字母,那么所述字节对应的字符串为所述字节所属的单词,对应的字符串大小可以为单词的大小即单词的长度,例如,一个单词有五个字母,那么对应的字符串大小为5。具体地,线程可以将后续属于该单词的有效字符全部读入,从而确定对应的单词数据,并设定单词大小。
可选的,属于单词首字母的字节可以直接读取后面的字节,获取对应的字母并存储,直至读取到的字节为分隔符则停止。
如果字节不是单词首字母,那么记所述字节对应的字符串大小为零,对应的字符串可以为任意字符串,例如可以全部为零。
如果字节为有效分隔符,那么所述字节对应的字符串为所述有效分隔符,字符串大小为所述有效分隔符的大小,一般为1(单位为字节)。
如果字节为无效分隔符,则所述字节对应的字符串大小为零,对应的字符串可以为任意字符串。
本申请实施例中,有效分隔符是指需要输出的或者结构体赋值过程中需要用到的分隔符,例如括号等。无效分隔符是指不需要输出或者不影响结构体赋值的分隔符,例如空格、tab、换行等。
表1给出了本申请实施例提供的一种字节对应的字符串及大小的示例。如表1所示,如果字节是无效分隔符,或者字节是字母但不是单词首字母,则设定对应的字符串大小为零;如果字节是有效分隔符,则设定字节对应的字符串大小为1;如果字节是单词首字母,则设定字节对应的字符串大小为所述单词的大小。
表1一种字节对应的字符串及大小的示例
字节 | 对应的字符串大小 | 对应的字符串 |
无效分隔符 | 0 | 0 |
有效分隔符 | 1 | 有效分隔符 |
单词首字母 | 单词大小 | 单词 |
单词的非首字母 | 0 | 0 |
分割流程的输出可以是每个字节对应的字符串大小以及对应的字符串。在确定每个字节对应的字符串大小和字符串后,可以存储字节对应的字符串大小和字符串,其中,每个字节对应的字符串大小占用的存储空间大小均相同,每个字节对应的字符串占用的存储空间大小也均相同。
可选的,字节对应的字符串大小可以用一个字节来存储,字节对应的字符串可以用N个字节来存储,N为JSON文件中单词的最大可能长度,例如,一般单词不会超过50个字母,那么N可以为50。
假设某一字节是单词“start”的首字母“s”,那么用一个字节存储对应的字符串大小“5”,用另外的50个字节存储单词“start”,例如可以将“start”存储在50个字节中的前5个字节,其余字节补零。在查找字节对应的单词时,根据字符串大小可以确定单词的长度为5,此时仅读取用于存储字符串的50个字节中的前5个字节即可。
如果字节对应的字符串大小为0,也需要把对应的存储空间留出来,因为并行处理时需要知道每个字节对应的数据的开始位置,所以每个字节对应的存储空间都是一样大的,这样,每个线程不需要等到前一个线程存储完毕再存储自己的数据,从而实现并行处理。
字符串大小和字符串可以分开存储,例如,各个字节对应的字符串大小存储在一个数组中,各个字节对应的字符串存储在另一个数据中。
可选的,还可以存储每个字节对应的存储空间长度,例如,将最大单词长度“50”存储起来,在分割流程和匹配、标记流程由不同的主体执行时,匹配、标记流程可以根据最大单词长度确定每个字节对应的字符串的存储空间。
以上以单词的特定位字母为单词首字母为例进行了描述。本领域技术人员可以理解的是,单词的特定位字母也可以为其它位置的字母,例如可以为所述单词的尾字母,相应的,判断所述字节是否为单词的特定位字母,可以包括:根据所述字节的后一个字节是否为字母,判断所述字节是否为单词的特定位字母。
分割完成后,可以得到多个字符串,同时可以确定各个字符串对应的字符串大小,用于后续的匹配和标记流程。下面介绍匹配流程。
匹配流程主要是判断提取出的字符串的属性,所述属性用于表示该字符串是JSON文件中哪个名称或有效分隔符,如果既不是名称也不是有效分隔符,则说明字符串为值,对应的属性为值属性。
图5为本申请实施例提供的一种字符串匹配方法的流程示意图。如图5所示,步骤203中的根据多个字符串,确定JSON文件中的名称、值、有效分隔符,可以包括:
步骤2031、采用并行处理方式对JSON文件中的字节进行处理,判断字节对应的字符串大小是否大于零;
步骤2032、若字符串大小大于零,则通过关键词判断字节对应的字符串是否为名称或者为有效分隔符;若字节对应的字符串大小大于零且字符串不为名称或有效分隔符,则所述字节对应的字符串为值。
具体地,所述关键词可以为名称和有效分隔符对应的关键词,若字节对应的字符串与名称/有效分隔符对应的关键词一致,说明该字符串为该名称/有效分隔符,例如关键词为“start”,若某一字符串为“start”,说明其属于JSON文件中的名称“start”。
如果一个字符串的大小大于0,但又不是名称或有效分隔符,则说明该字符串为JSON文件中的值。
为了避免将值误判断为名称,可以增加对字符串前一非零字节的检测:若前一非零字节为冒号,则该字符串为值;若前一非零字节不为冒号且该字符串与名称对应的关键词一致,则该字符串为名称。
其中,有效分隔符可以包括冒号,非零字节可以指对应的字符串大小不等于零的字节。在判断字符串是否为值时,可以首先确定该字符串的前一非零字节(排除了无效分隔符如空格等)是否为冒号,若否,再根据关键词确定该字符串是否为名称。若字符串的前一非零字节为冒号,或者前一非零字节不为冒号但和名称对应的关键词均不一致,则该字符串为值。
可选的,可以存储字节对应的属性,每个字节对应的属性占用的存储空间均相同;其中,若字节对应的字符串为名称或有效分隔符,则字节对应的属性表示所述名称或有效分隔符;若字节对应的字符串为值,则字节对应的属性为值属性,因为值的具体数据是不确定的,所以不能通过关键词匹配来确定其具体的属性,只能将全部的值的属性都记为值属性。
图6为本申请实施例提供的一种字符串匹配的逻辑示意图。如图6所示,每个并行处理线程可以处理一个字节,如字节有对应的字符串,则根据关键词判断其对应的属性,这样,通过对字符串W0、W1、W2、……的处理,可以确定对应的属性F0、F1、F2、……。
可选的,可以利用编码来表示字节对应的属性。例如,名称包括“start”、“end”等,有效分隔符包括“{”等,“start”、“end”、“{”和值属性可以分别用1、2、3、4代替,在存储属性时,直接存储1、2、3、4即可。
在确定每个字节对应的字符串大小和字符串时,可以按照分割流程的存储规则,通过字节的序号以及每个字符串大小占用的存储空间大小以及每个字符串占用的存储空间大小,确定所述字节对应的存储空间;根据所述字节对应的存储空间,确定所述字节对应的字符串大小和字符串。
综上所述,在进行匹配流程时,可以首先判断字节对应的字符串大小是否为零,若不为零,则将对应的字符串与关键词进行匹配,如果匹配成功,那么可以标记该字符串的属性为对应的关键词,关键词包含了括号等有效分隔符;如果没有匹配成功,则标记该字符串的属性为值属性。
匹配流程的输出可以包括三个数组,分别存储字节对应的字符串大小、字符串以及属性,相对于分割流程增加了属性这一数组。其中,每个字节对应的字符串大小占用的存储空间大小均相同,每个字节对应的字符串占用的存储空间大小均相同、每个字节对应的属性占用的存储空间大小均相同。
在以上方案中,只介绍了如何判断满足条件的字节(字符串大小大于零的字节)对应的属性,并没有介绍如何判断其他字节(字符串大小等于零的字节)对应的属性,因为对于这些字节来说,对应的属性可能并不重要。因此,对于字符串大小等于零的字节来说,可以不对其进行判断属性的处理,也不存储这些字节对应的属性,只留出相应的存储空间,这样不会影响后面的字节属性的存储,或者,可以将这些字节对应的属性存储为预先设置好的任意值,只要能够与满足条件的字节进行区分即可,例如可以将其对应的属性设置为空。
匹配完成后,可以得到多个字符串对应的属性,用于后续的标记流程。下面介绍标记流程。
标记流程主要是用于确定每个值对应的类型,所述类型可以是值的前一个名称,例如,name:zhangsan表示名称为“name”、值为“zhangsan”,说明“zhangsan”所属的类型为“name”,即表示“zhangsan”是一个“name”。
图7为本申请实施例提供的一种字符串标记方法的流程示意图。如图7所示,步骤204中的根据名称确定值对应的类型,可以包括:
步骤2041、采用并行处理方式对JSON文件中的字节进行处理,判断字节对应的属性是否为值属性;
步骤2042、若为值属性,则查找所述字节对应的值的前一个名称;
步骤2043、根据所述前一个名称确定所述值的类型。
具体地,通过字节的序号以及每个属性占用的存储空间大小,可以确定所述字节的属性对应的存储空间;根据所述字节的属性对应的存储空间,可以确定所述字节对应的属性。
字节对应的值的类型可以是值的前一个名称。在确定字节对应的值的类型后,可以存储该类型,每个字节对应的类型占用的存储空间大小均相同。
图8为本申请实施例提供的一种字符串标记的逻辑示意图。如图8所示,每个并行处理线程可以处理一个字节,若字节对应的字属性为值属性,则可以根据对应的属性确定类型,这样,根据字节对应的属性F0、F1、F2、……,可以确定值的类型C0、C1、……。
具体地,可以首先判断字节对应的属性是否为值属性,若为值属性,则向前寻找第一个有效且非值的属性,该属性应该是表示名称的属性,将该值的类型标记为该属性。
可选的,除了值以外,也可以进一步确定有效分隔符的类型。具体地,如果字符串不是值,那么判断该字符串的属性是否表示有效分隔符,如果不是则结束;如果表示有效分隔符,则设置其类型为对应的分隔符标记。
标记流程的输出也可以包括三个数组,分别存储字节对应的字符串大小、字符串以及类型,相对于分割流程增加了类型这一数组。其中,每个字节对应的字符串大小占用的存储空间大小均相同,每个字节对应的字符串占用的存储空间大小均相同,每个字节对应的类型占用的存储空间大小均相同。
与匹配流程类似,这里只介绍了如何判断满足条件的字节(值或有效分隔符)对应的类型,并没有介绍如何判断其他字节对应的类型,因为对于这些字节来说,对应的类型可能并不重要。因此,对于对应的字符串不为值或者有效分隔符的字节来说,可以不对其进行判断类型的处理,也不存储这些字节对应的类型,只留出相应的存储空间,这样不会影响后面字节类型的存储,或者,可以将这些字节对应的类型存储为预先设置好的任意值,只要能够与满足条件的字节进行区分即可,例如可以将其对应的类型设置为空。
图9为本申请实施例提供的一种字符串处理的整体逻辑示意图。如图9所示,JSON文件包含了一系列字节B0、B1、B2、……,每个并行处理线程可以处理一个字节,将字节分割为有效的字符串:W0、W1、W2、……。然后,对字符串进行匹配操作,确定其中的名称、值和有效分隔符,并记录对应的属性F0、F1、F2、……。最后,确定值和有效分隔符对应的类型C0、C1、……。属性F和类型C可以采用编码方式表示。
例如,JSON文件内容为{start:0,end:100}。那么解析出来的字符串W分别为{、start、0、end、100、},对应的属性F分别为0、2、5、3、5、1,其中0表示括号'{',1表示'}',2表示start字段,3表示end字段,5表示值属性。最后进行值的并行标记,需要输出的值为0和100,它们对应的类型C分别为C0、C1,分别表示0是第C0类,100是第C1类,而C0和C1分别对应了需要解析的start和end。
在对字符串进行标记以后,可以输出JSON文件中的值、值对应的类型以及有效分隔符,或者,根据JSON文件中的值、值对应的类型以及有效分隔符,对JSON文件对应的结构体进行赋值。
可选的,输出JSON文件中的值、值对应的类型以及有效分隔符,可以包括:判断字节对应的字符串是否为值或者有效分隔符:若为有效分隔符,则输出所述有效分隔符;若为值,则根据字节的序号,确定所述字节对应的存储空间,根据所述字节对应的存储空间,确定所述值对应的类型,输出所述值及对应的类型。
进一步地,输出的时候,不仅可以输出值、值的类型和有效分隔符,还可以输出有效分隔符对应的类型,值和有效分隔符以及对应的类型可以按照预定的存储空间大小进行存储,方便其他程序或设备读取。
相应的,输出JSON文件中的值、值对应的类型以及有效分隔符,可以包括:判断字节对应的字符串是否值或有效分隔符,若是,则根据字节的序号,确定所述字节对应的存储空间;根据所述字节对应的存储空间,确定所述字节对应的字符串以及类型;输出对应的字符串以及类型。
除了输出JSON文件中的值、值对应的类型以及有效分隔符以外,还可以根据JSON文件中的值、值对应的类型以及有效分隔符,对JSON文件对应的结构体进行赋值。
具体地,结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。对结构体进行赋值,也可以称为对结构体进行初始化。在匹配流程结束后确定的数据里,有效分隔符如括号等可以表示结构体的层次,通过值和对应的类型,可以对结构体中的成员变量赋值,从而完成JSON文件的解析。
综上,本实施例提供的数据处理方法,为每个字节设置了一个字符串大小,如果字符串大小为0则不需要进行下一步处理,如果字符串大小大于0,才进行下一步处理,并且每个字节存储字符串大小和字符串的存储空间是一样大的,能够有效实现后续流程的并行处理,有效提高了JSON文件的解析速度,提升相关业务的性能。
在上述实施例提供的技术方案中,在分割、匹配、标记流程中,均采用并行的方式处理每一个字节,针对全部字节分割完毕后进行匹配流程,针对全部字节匹配完毕后进入标记流程。
在其它可选的实施方式中,也可以其中部分流程采用串行实现,部分流程采用并行实现,例如,分割流程可以采用并行实现,匹配和标记流程可以采用串行实现,等等。
另外,在匹配和标记流程中,也可以不是针对每一个字节进行处理,而是针对每一个字符串进行处理,例如一个线程处理一个字符串。
可选的,还可以每个线程处理一个字节的分割、匹配和标记,在处理过程中,不需要理会其它字节进行到哪一个步骤。例如,A字节对应的分割流程完成后,对应的线程可以进一步对A字节进行匹配和标记,其中需要存储的数据按照规则存储在对应的存储空间内,不需要等待其它字节分割完毕才能进行下一步的匹配。
本申请实施例中,对并行处理的线程数量不作限制,可以采用任意数量的线程来实现并行处理,如果线程数量少于待处理的字节数量,那么可以先处理一部分字节,处理完成后再继续处理后面的字节。
另外,本申请实施例对字符串的属性和类型对应的编码方式也不作限制,字符串的属性和类型可以采用任意编码方式,例如属性start对应的编码可以是1,也可以是2。
图10为本申请实施例提供的数据处理方法实施例三的流程示意图。如图10所示,本实施例中的数据处理方法,可以包括:
步骤1001、获取待解析的键值对文件。
步骤1002、通过并行处理方式解析所述键值对文件。
本实施例所述的键值对文件为任意包含键值对的文件,例如可以为以上所述的JSON文件,也可以为其它类型的键值对文件。
其它类型的键值对文件的解析方法与本申请实施例中提供的JSON文件的解析方法类似。例如,对于包含[key,value]键值对集合的键值对文件,用key代替以上实施例中的名称,用value代替以上实施例中的值,即可得到该类型的键值对文件的解析方法。
本实施例提供的数据处理方法,可以获取待解析的键值对文件,并通过并行处理方式解析所述键值对文件,相对于现有的串行解析方式,能够有效提高解析的效率,提升键值对文件解析速度,满足业务的性能需求,保障业务的实时处理。
以下将详细描述本申请的一个或多个实施例的数据处理装置。本领域技术人员可以理解,这些数据处理装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
图11为本申请实施例提供的一种数据处理装置的结构示意图。如图11所示,该装置可以包括:
第一获取模块11,用于获取待解析的JSON文件;
第一解析模块12,用于通过并行处理方式解析所述JSON文件。
可选的,所述第一解析模块12可以包括:分割单元,用于通过并行处理方式对JSON文件分割,得到多个字符串;匹配单元,用于根据多个字符串,确定JSON文件中的名称、值、有效分隔符;标记单元,用于根据名称确定值对应的类型。
可选的,所述第一解析模块12还可以用于:输出JSON文件中的值、值对应的类型以及有效分隔符;或者,根据JSON文件中的值、值对应的类型以及有效分隔符,对JSON文件对应的结构体进行赋值。
可选的,所述分割单元具体可以用于:通过并行处理方式对JSON文件中的字节进行处理,确定每个字节是否为字母或者有效分隔符;若字节为字母,则判断所述字节是否为单词的特定位字母:若所述字节为单词的特定位字母,则所述字节对应的字符串为所述字节所属的单词;若所述字节为字母但不为单词的特定位字母,则所述字节对应的字符串大小为零;若字节为有效分隔符,则所述字节对应的字符串为所述有效分隔符。
可选的,所述分割单元还可以用于:存储字节对应的字符串大小和字符串,每个字节对应的字符串大小占用的存储空间大小均相同,每个字节对应的字符串占用的存储空间大小均相同。
可选的,所述分割单元还可以用于:若字节为无效分隔符,则确定所述字节对应的字符串大小为零。
可选的,所述单词的特定位字母为所述单词的首字母,所述分割单元具体可以用于:通过并行处理方式对JSON文件中的字节进行处理,确定每个字节是否为字母或者有效分隔符;若字节为字母,则根据所述字节的前一个字节是否为字母,判断所述字节是否为单词的特定位字母:若所述字节为单词的特定位字母,则所述字节对应的字符串为所述字节所属的单词;若所述字节为字母但不为单词的特定位字母,则所述字节对应的字符串大小为零;若字节为有效分隔符,则所述字节对应的字符串为所述有效分隔符。
可选的,所述单词的特定位字母为所述单词的尾字母,所述分割单元具体可以用于:通过并行处理方式对JSON文件中的字节进行处理,确定每个字节是否为字母或者有效分隔符;若字节为字母,则根据所述字节的后一个字节是否为字母,判断所述字节是否为单词的特定位字母:若所述字节为单词的特定位字母,则所述字节对应的字符串为所述字节所属的单词;若所述字节为字母但不为单词的特定位字母,则所述字节对应的字符串大小为零;若字节为有效分隔符,则所述字节对应的字符串为所述有效分隔符。
可选的,所述匹配单元具体可以用于:通过并行处理方式对JSON文件中的字节进行处理,判断字节对应的字符串大小是否大于零;若字符串大小大于零,则通过关键词判断字节对应的字符串是否为名称或者为有效分隔符;若字节对应的字符串大小大于零且字符串不为名称或有效分隔符,则所述字节对应的字符串为值。
可选的,所述匹配单元还可以用于:通过字节的序号以及每个字符串大小占用的存储空间大小以及每个字符串占用的存储空间大小,确定所述字节对应的存储空间;根据所述字节对应的存储空间,确定所述字节对应的字符串大小和字符串。
可选的,所述匹配单元还可以用于:存储字节对应的属性,每个字节对应的属性占用的存储空间大小均相同;其中,若字节对应的字符串为名称或有效分隔符,则字节对应的属性表示所述名称或有效分隔符;若字节对应的字符串为值,则字节对应的属性为值属性。
可选的,所述标记单元具体可以用于:通过并行处理方式对JSON文件中的字节进行处理,判断字节对应的属性是否为值属性;若为值属性,则查找所述字节对应的值的前一个名称;根据所述前一个名称确定所述值的类型。
可选的,所述标记单元还可以用于:通过字节的序号以及每个属性占用的存储空间大小,确定所述字节的属性对应的存储空间;根据所述字节的属性对应的存储空间,确定所述字节对应的属性。
可选的,所述标记单元还可以用于:存储字节对应的类型,每个字节对应的类型占用的存储空间大小均相同。
可选的,所述第一解析模块12还可以用于:判断字节对应的字符串是否为值或者有效分隔符:若为有效分隔符,则输出所述有效分隔符;若为值,则根据字节的序号,确定所述字节对应的存储空间,根据所述字节对应的存储空间,确定所述值对应的类型,输出所述值及对应的类型。
图11所示装置可以执行前述实施例一或二提供的数据处理方法,本实施例未详细描述的部分,可参考对前述实施例的相关说明。该技术方案的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
图12为本申请实施例提供的另一种数据处理装置的结构示意图。如图12所示,该装置可以包括:
第二获取模块13,用于获取待解析的键值对文件;
第二解析模块14,用于通过并行处理方式解析所述键值对文件。
图12所示装置可以执行前述实施例三提供的数据处理方法,本实施例未详细描述的部分,可参考对前述实施例的相关说明。该技术方案的执行过程和技术效果参见前述实施例中的描述,在此不再赘述。
以上描述了数据处理装置的内部功能和结构,在一个可能的设计中,数据处理装置的结构可实现为一电子设备。图13为本申请实施例提供的一种电子设备的结构示意图。如图13所示,该电子设备可以包括:第一处理器21和第一存储器22。其中,所述第一存储器22用于存储支持电子设备执行前述实施例一或二提供的数据处理方法的程序,所述第一处理器21被配置为用于执行所述第一存储器22中存储的程序。
所述程序包括一条或多条计算机指令,其中,所述一条或多条计算机指令被所述第一处理器21执行时能够实现如下步骤:
获取待解析的JSON文件;
通过并行处理方式解析所述JSON文件。
可选地,所述第一处理器21还用于执行前述图1-图9所示实施例中的全部或部分步骤。
其中,所述电子设备的结构中还可以包括第一通信接口23,用于电子设备与其他设备或通信网络通信。
图14为本申请实施例提供的另一种电子设备的结构示意图。如图14所示,该电子设备可以包括:第二处理器24和第二存储器25。其中,所述第二存储器25用于存储支持电子设备执行前述实施例三提供的数据处理方法的程序,所述第二处理器24被配置为用于执行所述第二存储器25中存储的程序。
所述程序包括一条或多条计算机指令,其中,所述一条或多条计算机指令被所述第二处理器24执行时能够实现如下步骤:
获取待解析的键值对文件;
通过并行处理方式解析所述键值对文件。
可选地,所述第二处理器24还用于执行前述图10所示实施例中的全部或部分步骤。
其中,所述电子设备的结构中还可以包括第二通信接口26,用于电子设备与其它设备或通信网络通信。
另外,本申请实施例提供了一种存储计算机指令的计算机可读存储介质,当所述计算机指令被处理器执行时,致使所述处理器执行包括以下的动作:
获取待解析的JSON文件;
通过并行处理方式解析所述JSON文件。
当所述计算机指令被处理器执行时,还可以致使所述处理器执行上述各实施例中的数据处理方法所涉及的全部或部分步骤。
另外,本申请实施例提供了一种存储计算机指令的计算机可读存储介质,当所述计算机指令被处理器执行时,致使所述处理器执行包括以下的动作:
获取待解析的键值对文件;
通过并行处理方式解析所述键值对文件。
当所述计算机指令被处理器执行时,还可以致使所述处理器执行上述各实施例中的数据处理方法所涉及的全部或部分步骤。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式楼层的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (19)
1.一种数据处理方法,其特征在于,包括:
获取待解析的JSON文件;
通过并行处理方式解析所述JSON文件。
2.根据权利要求1所述的方法,其特征在于,通过并行处理方式解析所述JSON文件,包括:
通过并行处理方式对JSON文件分割,得到多个字符串;
根据多个字符串,确定JSON文件中的名称、值、有效分隔符;
根据名称确定值对应的类型。
3.根据权利要求2所述的方法,其特征在于,还包括:
输出JSON文件中的值、值对应的类型以及有效分隔符;
或者,根据JSON文件中的值、值对应的类型以及有效分隔符,对JSON文件对应的结构体进行赋值。
4.根据权利要求2所述的方法,其特征在于,通过并行处理方式对JSON文件分割,得到多个字符串,包括:
通过并行处理方式对JSON文件中的字节进行处理,确定每个字节是否为字母或者有效分隔符;
若字节为字母,则判断所述字节是否为单词的特定位字母:若所述字节为单词的特定位字母,则所述字节对应的字符串为所述字节所属的单词;若所述字节为字母但不为单词的特定位字母,则所述字节对应的字符串大小为零;
若字节为有效分隔符,则所述字节对应的字符串为所述有效分隔符。
5.根据权利要求4所述的方法,其特征在于,还包括:
存储字节对应的字符串大小和字符串,每个字节对应的字符串大小占用的存储空间大小均相同,每个字节对应的字符串占用的存储空间大小均相同。
6.根据权利要求4所述的方法,其特征在于,还包括:若字节为无效分隔符,则确定所述字节对应的字符串大小为零。
7.根据权利要求4所述的方法,其特征在于,所述单词的特定位字母为所述单词的首字母;
判断所述字节是否为单词的特定位字母,包括:根据所述字节的前一个字节是否为字母,判断所述字节是否为单词的特定位字母;
或者,所述单词的特定位字母为所述单词的尾字母;
判断所述字节是否为单词的特定位字母,包括:根据所述字节的后一个字节是否为字母,判断所述字节是否为单词的特定位字母。
8.根据权利要求5所述的方法,其特征在于,根据多个字符串,确定JSON文件中的名称、值、有效分隔符,包括:
通过并行处理方式对JSON文件中的字节进行处理,判断字节对应的字符串大小是否大于零;
若字符串大小大于零,则通过关键词判断字节对应的字符串是否为名称或者为有效分隔符;
若字节对应的字符串大小大于零且字符串不为名称或有效分隔符,则所述字节对应的字符串为值。
9.根据权利要求8所述的方法,其特征在于,还包括:
通过字节的序号以及每个字符串大小占用的存储空间大小以及每个字符串占用的存储空间大小,确定所述字节对应的存储空间;
根据所述字节对应的存储空间,确定所述字节对应的字符串大小和字符串。
10.根据权利要求8所述的方法,其特征在于,还包括:
存储字节对应的属性,每个字节对应的属性占用的存储空间大小均相同;
其中,若字节对应的字符串为名称或有效分隔符,则字节对应的属性表示所述名称或有效分隔符;若字节对应的字符串为值,则字节对应的属性为值属性。
11.根据权利要求10所述的方法,其特征在于,根据名称确定值对应的类型,包括:
通过并行处理方式对JSON文件中的字节进行处理,判断字节对应的属性是否为值属性;
若为值属性,则查找所述字节对应的值的前一个名称;
根据所述前一个名称确定所述值的类型。
12.根据权利要求11所述的方法,其特征在于,还包括:
通过字节的序号以及每个属性占用的存储空间大小,确定所述字节的属性对应的存储空间;
根据所述字节的属性对应的存储空间,确定所述字节对应的属性。
13.根据权利要求11所述的方法,其特征在于,还包括:
存储字节对应的类型,每个字节对应的类型占用的存储空间大小均相同。
14.根据权利要求13所述的方法,其特征在于,输出JSON文件中的值、值对应的类型以及有效分隔符,包括:
判断字节对应的字符串是否为值或者有效分隔符:若为有效分隔符,则输出所述有效分隔符;若为值,则根据字节的序号,确定所述字节对应的存储空间,根据所述字节对应的存储空间,确定值对应的类型,输出所述值及对应的类型。
15.一种数据处理方法,其特征在于,包括:
获取待解析的键值对文件;
通过并行处理方式解析所述键值对文件。
16.一种数据处理装置,其特征在于,包括:
第一获取模块,用于获取待解析的JSON文件;
第一解析模块,用于通过并行处理方式解析所述JSON文件。
17.一种数据处理方法,其特征在于,包括:
第二获取模块,用于获取待解析的键值对文件;
第二解析模块,用于通过并行处理方式解析所述键值对文件。
18.一种电子设备,其特征在于,包括:第一存储器和第一处理器;其中,
所述第一存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述第一处理器执行时实现如权利要求1至14中任一项所述的数据处理方法。
19.一种电子设备,其特征在于,包括:第二存储器和第二处理器;其中,
所述第二存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述第二处理器执行时实现如权利要求15所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811204022.4A CN111061927B (zh) | 2018-10-16 | 2018-10-16 | 数据处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811204022.4A CN111061927B (zh) | 2018-10-16 | 2018-10-16 | 数据处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111061927A true CN111061927A (zh) | 2020-04-24 |
CN111061927B CN111061927B (zh) | 2023-06-20 |
Family
ID=70296454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811204022.4A Active CN111061927B (zh) | 2018-10-16 | 2018-10-16 | 数据处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111061927B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113128208A (zh) * | 2021-04-26 | 2021-07-16 | 浙江百应科技有限公司 | 一种json文件解析方法、装置及电子设备 |
CN116610679A (zh) * | 2023-07-17 | 2023-08-18 | 金锐同创(北京)科技股份有限公司 | json数据的解析方法、装置、计算机设备及介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140067866A1 (en) * | 2012-08-28 | 2014-03-06 | Microsoft Corporation | Javascript object notation schema definition language |
US20140214838A1 (en) * | 2013-01-30 | 2014-07-31 | Vertascale | Method and system for processing large amounts of data |
US20150128032A1 (en) * | 2013-11-06 | 2015-05-07 | Vmware, Inc. | Generating Canonical Representations of JSON Documents |
CN105447099A (zh) * | 2015-11-11 | 2016-03-30 | 中国建设银行股份有限公司 | 日志结构化信息提取方法及装置 |
CN106469152A (zh) * | 2015-08-14 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 一种基于etl的文件处理方法及系统 |
CN106970936A (zh) * | 2017-02-09 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置、数据查询方法及装置 |
US20170315970A1 (en) * | 2016-05-02 | 2017-11-02 | Fujitsu Limited | Exi grammars to represent json schemas |
CN107832443A (zh) * | 2017-11-20 | 2018-03-23 | 郑州云海信息技术有限公司 | 一种json文档数据的处理方法、装置和介质 |
CN108008936A (zh) * | 2017-12-04 | 2018-05-08 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置及电子设备 |
CN108073391A (zh) * | 2016-11-11 | 2018-05-25 | 阿里巴巴集团控股有限公司 | 一种json字符串传输、处理的方法及设备 |
US20180173812A1 (en) * | 2016-12-19 | 2018-06-21 | American Express Travel Related Services Company, Inc. | Systems and methods for parsing and ingesting data in big data environments |
CN108322497A (zh) * | 2017-01-18 | 2018-07-24 | 阿里巴巴集团控股有限公司 | 跨终端数据传输方法、装置、客户端、服务器及系统 |
CN108388547A (zh) * | 2018-02-24 | 2018-08-10 | 平安科技(深圳)有限公司 | 字符串解析方法、装置、设备及计算机可读存储介质 |
-
2018
- 2018-10-16 CN CN201811204022.4A patent/CN111061927B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140067866A1 (en) * | 2012-08-28 | 2014-03-06 | Microsoft Corporation | Javascript object notation schema definition language |
US20140214838A1 (en) * | 2013-01-30 | 2014-07-31 | Vertascale | Method and system for processing large amounts of data |
US20150128032A1 (en) * | 2013-11-06 | 2015-05-07 | Vmware, Inc. | Generating Canonical Representations of JSON Documents |
CN106469152A (zh) * | 2015-08-14 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 一种基于etl的文件处理方法及系统 |
CN105447099A (zh) * | 2015-11-11 | 2016-03-30 | 中国建设银行股份有限公司 | 日志结构化信息提取方法及装置 |
US20170315970A1 (en) * | 2016-05-02 | 2017-11-02 | Fujitsu Limited | Exi grammars to represent json schemas |
CN108073391A (zh) * | 2016-11-11 | 2018-05-25 | 阿里巴巴集团控股有限公司 | 一种json字符串传输、处理的方法及设备 |
US20180173812A1 (en) * | 2016-12-19 | 2018-06-21 | American Express Travel Related Services Company, Inc. | Systems and methods for parsing and ingesting data in big data environments |
CN108322497A (zh) * | 2017-01-18 | 2018-07-24 | 阿里巴巴集团控股有限公司 | 跨终端数据传输方法、装置、客户端、服务器及系统 |
CN106970936A (zh) * | 2017-02-09 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置、数据查询方法及装置 |
CN107832443A (zh) * | 2017-11-20 | 2018-03-23 | 郑州云海信息技术有限公司 | 一种json文档数据的处理方法、装置和介质 |
CN108008936A (zh) * | 2017-12-04 | 2018-05-08 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置及电子设备 |
CN108388547A (zh) * | 2018-02-24 | 2018-08-10 | 平安科技(深圳)有限公司 | 字符串解析方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
徐小天;王刚;: "基于JSON的电力企业业务系统非结构化数据抽取方法" * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113128208A (zh) * | 2021-04-26 | 2021-07-16 | 浙江百应科技有限公司 | 一种json文件解析方法、装置及电子设备 |
CN113128208B (zh) * | 2021-04-26 | 2024-01-05 | 浙江百应科技有限公司 | 一种json文件解析方法、装置及电子设备 |
CN116610679A (zh) * | 2023-07-17 | 2023-08-18 | 金锐同创(北京)科技股份有限公司 | json数据的解析方法、装置、计算机设备及介质 |
CN116610679B (zh) * | 2023-07-17 | 2023-10-17 | 金锐同创(北京)科技股份有限公司 | json数据的解析方法、装置、计算机设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111061927B (zh) | 2023-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9870381B2 (en) | Detecting quasi-identifiers in datasets | |
US8856183B2 (en) | Database access using partitioned data areas | |
CN108959257B (zh) | 一种自然语言解析方法、装置、服务器及存储介质 | |
US10445334B1 (en) | Query transmission in type-limited interchange formats | |
CN107038161B (zh) | 一种用于过滤数据的设备及方法 | |
WO2015009542A1 (en) | Semantics-oriented analysis of log message content | |
JP2019169126A (ja) | 人工知能に基づく三元組チェック方法、装置及びコンピュータプログラム | |
CN109460220A (zh) | 报文预定义代码生成方法、装置、电子设备和存储介质 | |
CN111435410B (zh) | 用于医疗文本的关系抽取方法及其装置 | |
JP2020119544A (ja) | 知識グラフにおけるデータモデルを取得する方法、装置、機器及び媒体 | |
CN112328732A (zh) | 敏感词检测、敏感词树构建方法及装置 | |
CN111061927B (zh) | 数据处理方法、装置及电子设备 | |
CN111563380A (zh) | 一种命名实体识别方法及其装置 | |
CN112182637A (zh) | 一种安全控制系统、方法、装置及存储介质 | |
CN115796146A (zh) | 一种文件对比方法及装置 | |
CN111160445A (zh) | 投标文件相似度计算方法及装置 | |
US9258258B2 (en) | Implementing injection of formal numerical message identifiers in cloud stacks | |
EP4024226A1 (en) | Query tree labeling and processing | |
CN109800273A (zh) | 一种数据处理的方法、装置、计算机存储介质及终端 | |
CN113177391B (zh) | 在流式界面中操作光标重定向方法、计算设备及存储介质 | |
CN110795915A (zh) | xml文件批量修改方法、系统、设备和计算机可读存储介质 | |
CN111736848B (zh) | 包冲突定位方法、装置、电子设备及可读存储介质 | |
CN109710833B (zh) | 用于确定内容节点的方法与设备 | |
CN113176877A (zh) | 实体类生成方法、装置及存储介质 | |
CN114637505A (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 |