CN106055527B - 一种数据处理的方法及装置 - Google Patents
一种数据处理的方法及装置 Download PDFInfo
- Publication number
- CN106055527B CN106055527B CN201610349601.2A CN201610349601A CN106055527B CN 106055527 B CN106055527 B CN 106055527B CN 201610349601 A CN201610349601 A CN 201610349601A CN 106055527 B CN106055527 B CN 106055527B
- Authority
- CN
- China
- Prior art keywords
- subtree
- data
- pending data
- characteristic
- value
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 110
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000013507 mapping Methods 0.000 claims abstract description 45
- 238000004891 communication Methods 0.000 abstract description 4
- 238000004364 calculation method Methods 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 abstract description 3
- 241001269238 Data Species 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种数据处理的方法及装置,涉及通信技术领域,可以解决写入XML数据库性能差的问题。本发明实施例通过接收用户输入的需要划分的子树的数量,然后根据子树的数量为每个子树分配ID,当接收到处理请求时,根据预设的计算方法确定每个待处理数据的特征值,根据映射关系,分别确定每个待处理数据的特征值对应的子树ID,最后根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。本发明实施例提供的方案适于对DOM树中的数据处理时采用。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种数据处理的方法及装置。
背景技术
XML(Extensible Markup Language,可扩展标记语言)为一种用于标记电子文件使其具有结构性的标记语言,它可以将文档分为许多部件,并用标签对这些部件加以标识,其中,标签是指计算机可以理解的信息符号。XML文件在内存中存储时可以被解析成一个树状结构,称为DOM(Document Object Model,文档对象模型)树,例如,如图1所示,左侧为用XML文件表示的层次关系,右侧为XML文件对应的树形结构图,在左侧的XML文件中,每一对标签由起始标签(如<a>)和结束标签(如</a>)组成,每一对标签及其内容称为一个节点(如<b1>...</b1>)。外层节点为内层节点的父节点,内层节点为外层节点的子节点,如a是b1、b2、b3的父节点,b1、b2、b3是a的子节点,此外,拥有值的节点为叶子节点,例如假设存在节点<b1>10</b1>,则b1节点为叶子节点,该节点的值为10,拥有子节点的节点为容器节点,例如图1中的a、b3。
DOM树的形状会根据计算机所接收到的请求发生变化,例如当请求删除、增加或者修改文件时,DOM树也会根据请求在不同的高度上生成新的树杈、树叶或者被剪枝。以DOM树生成新的树叶为例,当有三个应用app1、app2、app3在同一时刻分别请求对图1中的b2节点增加子节点c4、c5、c6时,为了保证修改的准确性,一般会按照串行的顺序执行每个请求,例如,先执行app1的请求,然后执行app2的请求,最后执行app3的请求,执行结束后b2会有6个子节点。而如果并行执行这三个应用的请求,会导致处理速度较慢的app覆盖掉之前另外两个应用做的修改,例如app3的处理速度较慢,最后的修改结果会变为b2有c1、c2、c3、c6这4个子节点,显然会导致处理结果出现错误。
所以,如果并行处理每个应用的请求会导致处理结果出现错误,但是由于计算机所能运行的应用非常庞大,且应用可能会以很高的频率发出请求,按照串行处理的方法会导致应用所发出的请求的等待时间过长,导致XML数据库的性能差。
发明内容
本发明的实施例提供一种数据处理的方法及装置,可以解决XML数据库的性能差的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供一种数据处理的方法,所述方法应用于DOM树,所述方法包括:
接收用户输入的需要划分的子树数量;
根据所述子树数量为每个子树分配ID;
当接收到处理请求时,确定每个待处理数据的特征值,所述处理请求中包含待处理数据;
根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,所述预设映射关系为特征值与子树ID的映射关系;
根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。
对于本发明实施例,相比与现有技术中不能在保证数据处理正确性的前提下提高数据处理的效率,导致XML数据库的性能差相比,本发明实施例可以根据预设映射关系分别确定每个待处理数据的特征值对应的子树ID,每个子树ID对应一个子树,通过待处理数据的特征值与子树ID的映射关系来划分子树可以使得各子树下的数据量分布较为均匀,且各子树被访问的频度均匀,对应于不同子树ID的处理请求将会被并行执行,提高了数据处理的速度,进而提高了XML数据库的性能。
在第一方面的基础上,所述方法还包括:
将对应于同一子树ID的待处理数据,串行在所述同一子树ID所属的子树中进行处理。
结合第一方面,需要说明的是,所述方法还包括:
在数据的存储路径上预设至少一个特征位置,所述特征位置用于指示确定特征值时所采用的特征数据的位置。
结合第一方面,还需说明的是,所述当接收到处理请求时,确定每个待处理数据的特征值包括:
当接收到处理请求时,确定待处理数据的存储路径;
根据预设的所述至少一个特征位置,从所述待处理数据的存储路径中提取每个特征位置上的特征数据;
采用预设算法分别计算每个特征数据的子特征值;
根据每个特征数据的子特征值,确定所述待处理数据的特征值。
采用本发明实施例的方法相比较于将根节点下的每个子节点划分为一个子树,可以更加灵活的控制划分的子树的数量,从而调整并发执行处理请求的数量,通过预映射关系,可以使各子树下的数据量分布较为均匀且各子树被访问的频度较为均匀,从而提高XML数据库的性能。
在第一方面的基础上,可选的,所述待处理数据包括:待修改数据、待删除数据以及待写入数据。
在第一方面的基础上,可选的,所述特征位置为指定层级的标签名,或者为指定层级的标签值。
第二方面,本发明实施例提供一种数据处理的装置,包括:
接收单元,用于接收用户输入的需要划分的子树数量;
分配单元,用于根据所述子树数量为每个子树分配ID;
确定单元,用于当接收到处理请求时,确定每个待处理数据的特征值,所述处理请求中包含待处理数据;根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,所述预设映射关系为特征值与子树ID的映射关系;
处理单元,用于根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。
在第二方面的基础上,需要指出的是,所述处理单元,还用于将对应于同一子树ID的待处理数据,串行在所述同一子树ID所属的子树中进行处理。
结合第二方面,需要说明的是,所述装置还包括预设单元;
所述预设单元,用于在数据的存储路径上预设至少一个特征位置,所述特征位置用于指示确定特征值时所采用的特征数据的位置。
结合第二方面,还需说明的是,所述确定单元,还用于当接收到处理请求时,确定待处理数据的存储路径;根据预设的所述至少一个特征位置,从所述待处理数据的存储路径中提取每个特征位置上的特征数据;采用预设算法分别计算每个特征数据的子特征值;根据每个特征数据的子特征值,确定所述待处理数据的特征值。
在第二方面的基础上,可选的,所述待处理数据包括:待修改数据、待删除数据以及待写入数据。
在第二方面的基础上,可选的,所述特征位置为指定层级的标签名,或者为指定层级的标签值。
第三方面,本发明实施例还提供一种数据处理的装置,包括:
收发器,用于接收用户输入的需要划分的子树数量;
处理器,与所述收发器耦合,用于根据所述子树数量为每个子树分配ID;当接收到处理请求时,确定每个待处理数据的特征值,所述处理请求中包含待处理数据;根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,所述预设映射关系为特征值与子树ID的映射关系;根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。
在第三方面的基础上,所述处理器,还用于将对应于同一子树ID的待处理数据,串行在所述同一子树ID所属的子树中进行处理。
结合第三方面,需要说明的是,所述处理器,还用于在数据的存储路径上预设至少一个特征位置,所述特征位置用于指示确定特征值时所采用的特征数据的位置。
结合第三方面,还需说明的是,所述处理器,还用于当接收到处理请求时,确定待处理数据的存储路径;根据预设的所述至少一个特征位置,从所述待处理数据的存储路径中提取每个特征位置上的特征数据;采用预设算法分别计算每个特征数据的子特征值;根据每个特征数据的子特征值,确定所述待处理数据的特征值。
在第三方面的基础上,可选的,所述待处理数据包括:待修改数据、待删除数据以及待写入数据。
在第三方面的基础上,可选的,所述特征位置为指定层级的标签名,或者为指定层级的标签值。
本发明实施例提供的数据处理的方法及装置,首先接收用户输入的需要划分的子树的数量,然后根据子树的数量为每个子树分配ID,当接收到处理请求时,确定每个待处理数据的特征值,根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,最后根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。相比与现有技术中不能在保证数据处理正确性的前提下提高数据处理的效率,导致XML数据库的性能差相比,本发明实施例可以根据预设的特征值与子树ID的映射关系分别确定每个待处理数据的特征值对应的子树ID,每个子树ID对应一个子树,通过待处理数据的特征值与子树ID的映射关系来划分子树可以使得各子树下的数据量分布较为均匀,且各子树被访问的频度均匀,对应于不同子树ID的处理请求将会被并行执行,提高了数据处理的速度,进而提高了XML数据库的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明背景技术中提供的XML文件与DOM树的示例性示意图;
图2为本发明实施例提供的一种数据处理的方法的流程图;
图3为本发明实施例提供的另一种数据处理的方法的流程图;
图4为本发明实施例提供的另一种数据处理的方法的流程图;
图5为本发明实施例提供的一种数据处理的方法的示例性示意图;
图6为本发明实施例提供的另一种数据处理的方法的示例性示意图;
图7为本发明实施例提供的一种数据处理的装置的逻辑结构示意图;
图8为本发明实施例提供的另一种数据处理的装置的逻辑结构示意图;
图9为本发明实施例提供的数据处理的方法中用于对XML数据库中的数据进行处理的装置的逻辑结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提高XML数据库的性能,本发明实施例提供一种数据处理的方法,可以将一个DOM树划分为多个独立的子树以提高数据读写操作的响应速度,如图2所示,该方法包括:
201、接收用户输入的需要划分的子树数量。
其中,本发明的执行主体为能够对XML数据库中的数据进行处理的终端设备,例如计算机等,计算机可以接收用户输入的子树的数量,进而确定需要划分的子树数量。用户可以根据XML数据库对应的DOM树的具体情况,灵活的控制需要划分的子树数量。
202、根据子树数量为每个子树分配ID。
例如,如果子树数量为4,则可以将这4个子树的ID分别设置为0、1、2、3。子树的ID不限制于数字,可以由用户设置。
203、当接收到处理请求时,确定每个待处理数据的特征值,所述处理请求中包含待处理数据。
其中,待处理数据为待写入数据或者待删除数据或者待修改数据,一般以路径的方式表示待处理数据,例如待处理数据为\a\b2\c3,则表示待处理数据为a节点的子节点b2所包含的c3节点或者c3节点中的具体数据。
需要说明的是,当接收到多个应用发送的处理请求时,每个处理请求中都携带待处理数据,可以并行的计算每个待处理数据的特征值。
204、根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,预设映射关系为特征值与子树ID的映射关系。
其中,预设映射关系以及特征值的计算方法均已预先存储在终端设备中。
值得说明的是,确定每个待处理数据特征值对应的子树ID的过程相当于子树划分的过程,对应于同一子树ID的数据属于同一个子树。
205、根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。
需要说明的是,各个子树相互独立,即每个子树都可以独立为一个DOM树,对不同子树的处理请求可以并行执行互不影响。
本发明实施例提供的数据处理的方法,首先接收用户输入的需要划分的子树的数量,然后根据子树的数量为每个子树分配ID,当接收到处理请求时,确定每个待处理数据的特征值,根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,最后根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。相比与现有技术中不能在保证数据处理正确性的前提下提高数据处理的效率,导致XML数据库的性能差相比,本发明实施例可以根据预设的特征值与子树ID的映射关系分别确定每个待处理数据的特征值对应的子树ID,每个子树ID对应一个子树,通过待处理数据的特征值与子树ID的映射关系来划分子树可以使得各子树下的数据量分布较为均匀,且各子树被访问的频度均匀,对应于不同子树ID的处理请求将会被并行执行,提高了数据处理的速度,进而提高了XML数据库的性能。
结合图2所示的实施例,还会存在接收到的多个待处理请求所包含的待处理数据均属于同一子树的情况,所以在本发明实施例提供的另一种实现方式中,如图3所示,该方法还包括:
206、将对应于同一子树ID的待处理数据,串行在同一子树ID所属的子树中进行处理。
需要说明的是,步骤205与步骤206没有先后顺序,假设有6个处理请求:A、B、C、D、E、F,以及4个子树:子树1至子树4。A、B、C分别对应子树1至3,D、E,F均对应于子树4,则A、B、C、D并行在子树1至子树4中执行,E、F则位于子树4的等待队列中,在D执行完之后再按顺序执行E、F。
为了对确定待处理数据特征值的方法进行详细说明,在本发明实施例提供的另一种实现方式中,如图4所示,在对待处理数据进行处理之前,还需执行步骤401。
401、在数据的存储路径上预设至少一个特征位置,所述特征位置用于指示确定特征值时所采用的特征数据的位置。
其中,特征位置为DOM树中指定层级的标签名,或者为DOM树中指定层级的标签值。其中,标签值是指XML标签对应的具体值。
在本发明实施例中,以图5所示的DOM树为例进行说明,如图5所示,根节点a拥有26个子节点,它们的标签名分别为aa、bb、cc、…、zz,这些子节点全都是容器节点。其中,a节点所在的层级为第一层,aa、bb、cc、…、zz所在的层级为第二层。
例如,特征位置可以设置为第二层标签的标签名。或者,还可以设置多个特征位置,例如设置特征位置1为第二层标签的标签名,特征位置2为第三层标签的标签名,特征位置3为第三层标签的标签值。
需要说明的是,步骤401可以执行于上述步骤203之前的任意步骤,图4以步骤401执行于步骤201之前为例。
进一步的,上述步骤203、当接收到处理请求时,确定每个待处理数据的特征值具体可以实现为步骤2031至步骤2034。
2031、当接收到处理请求时,确定待处理数据的存储路径。
假设接收到4个处理请求,均为写入请求,4个待写入数据分别为:
/a/bb/c1
/a/cc/cx2
/a/dd/cyy3
/a/ee/czzz4
根据待写入数据即可确定待写入数据的存储路径,例如,上述第一条待写入数据的存储路径为a节点子节点bb的子节点的位置。
2032、根据预设的所述至少一个特征位置,从待处理数据的存储路径中提取每个特征位置上的特征数据。
仍以特征位置为第二层标签的标签名为例,则步骤2031中的4个待处理数据的在特征位置上的特征数据分别为bb、cc、dd、ee。
2033、采用预设算法分别计算每个特征数据的子特征值。
其中,预设算法可以灵活设置,例如可以将特征位置上的特征数据的第一个字符的ASCII码值作为数据的子特征值。
4个待处理数据的在特征位置上的特征数据分别为bb、cc、dd、ee,则每个特征数据的第一个字符(b、c、d、e)的ASCII码值分别为98,99,100,101。
进而可以确定每个特征数据的子特征值分别为98,99,100,101。
2034、根据每个特征数据的子特征值,确定所述待处理数据的特征值。
需要说明的是,当特征位置只有一个时,可以直接将每个特征数据的子特征值作为待处理数据的特征值,或者可以将每个子特征值进行一定的处理之后得到的值作为待处理数据的特征值。
当特征位置有多个时,例如有两个特征位置,则根据每个待处理数据可以确定出两个子特征值,待处理数据的特征值可以为对该待处理数据的两个子特征值进行一定的运算之后得到的结果,例如,将同一个待处理数据对应的两个子特征值的差值作为待处理数据的特征值。
假设本步骤中最终确定的上述4个待处理数据的特征值分别为:98,99,100,101。
然后假设上述步骤204中的预设映射关系为:特征值除以4的余数为子树ID。
则可根据上述4个待处理数据的特征值确定上述4个待处理数据的特征值对应的子树ID分别为2、3、0、1,进而可以将上述4个待处理数据并行写入子树2、子树3、子树0以及子树1中。
在上述例子的相关描述中,可以理解的是,子树的划分是根据特征位置上的特征数据的特征值确定的,按照上述例子中确定特征值的方法以及预设映射关系,可以将图5所示的DOM树分割为4个子树,分别为子树0、子树1、子树2以及子树3。
其中,子树0包括:根节点a,以及子节点dd、hh、ll、pp、tt、xx;
子树1包括:根节点a,以及子节点aa、ee、ii、mm、qq、uu、yy;
子树2包括:根节点a,以及子节点bb、ff、jj、nn、rr、vv、zz;
子树3包括:根节点a,以及子节点cc、gg、kk、oo、ss、ww。
并行将上述4个待处理数据写入上述4个子树后,这4个子树如图6所示。
需要说明的是,上述步骤2033中,计算每个特征数据的子特征值时所采用的方法不限制于上述举例中的一种,可以根据具体的XML数据库进行设置。
例如还可以取特征数据第一个字符的ASCII码的值,将这个值与57的乘积作为子特征值;或者,
累加特征数据中所有字符的ASCII码的值,将累加值乘以57再除以31,得到的结果四舍五入后作为子特征值;或者,
取特征位置1上的特征数据第一个字符的ASCII码的值,作为待处理数据的一个子特征值,称为x,再取特征位置2上的特征数据的字符串长度,作为待处理数据的另一个子特征值,称为y,将x^y*97作为待处理数据的特征值。
此外,预设映射关系也不限制于上述举例的一种,可以根据具体的XML数据库进行设置。
例如还可为数据特征值的个位数字大于等于0且小于3的,映射到0;大于等于3且小于5的,映射到1;大于等于5且小于8的,映射到2;大于等于8的,映射到3;或者,
对数据特征值求8的余数,余0、1的映射到0;余2、3的映射到1;余4、5的映射到2;余6、7的映射到3。
所以,本发明实施例可以通过改变计算待处理数据特征值的方法或者通过修改特征值与子树ID的映射关系来修改子树的划分结果。
采用本发明实施例的方法相比较于将根节点下的每个子节点划分为一个子树,可以更加灵活的控制划分的子树的数量,从而调整并发执行处理请求的数量,通过预映射关系,可以使各子树下的数据量分布较为均匀且各子树被访问的频度较为均匀,从而提高XML数据库的性能。
对应于上述方法实施例,为了提高XML数据库的性能,本发明实施例还提供一种数据处理的装置,如图7所示,该装置包括:接收单元701,分配单元702,确定单元703以及处理单元704。
接收单元701,用于接收用户输入的需要划分的子树数量;
分配单元702,用于根据子树数量为每个子树分配ID;
确定单元703,用于当接收到处理请求时,确定每个待处理数据的特征值,处理请求中包含待处理数据;根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,预设映射关系为特征值与子树ID的映射关系;
其中,待处理数据包括:待修改数据、待删除数据以及待写入数据。
处理单元704,用于根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。
在本发明另一实施例中,处理单元704,还用于将对应于同一子树ID的待处理数据,串行在同一子树ID所属的子树中进行处理。
在本发明另一实施例中,如图8所示,该装置还包括预设单元705;
预设单元705,用于在数据的存储路径上预设至少一个特征位置,特征位置用于指示确定特征值时所采用的特征数据的位置。
其中,特征位置为DOM树中指定层级的标签名,或者为DOM树中指定层级的标签值。
在本发明另一实施例中,确定单元703,还用于当接收到处理请求时,确定待处理数据的存储路径;根据预设的至少一个特征位置,从待处理数据的存储路径中提取每个特征位置上的特征数据;采用预设算法分别计算每个特征数据的子特征值;根据每个特征数据的子特征值,确定待处理数据的特征值。
本发明实施例提供的数据处理的装置,首先接收单元接收需要划分的子树的数量,然后分配单元根据子树的数量为每个子树分配ID,当接收到处理请求时,确定单元确定每个待处理数据的特征值,根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,最后处理单元根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。相比与现有技术中不能在保证数据处理正确性的前提下提高数据处理的效率,导致XML数据库的性能差相比,本发明实施例可以根据预设的特征值与子树ID的映射关系分别确定每个待处理数据的特征值对应的子树ID,每个子树ID对应一个子树,通过待处理数据的特征值与子树ID的映射关系来划分子树可以使得各子树下的数据量分布较为均匀,且各子树被访问的频度均匀,对应于不同子树ID的处理请求将会被并行执行,提高了数据处理的速度,进而提高了XML数据库的性能。
本发明实施例还提供一种数据处理的装置,如图9所示,该装置为图7和图8描述的装置的硬件结构示意图。其中,该装置可包括存储器901,处理器902,收发器903,总线904。
存储器901可以是ROM(Read Only Memory,只读存储器),静态存储设备,动态存储设备或者RAM(Random Access Memory,随机存取存储器)。存储器901可以存储操作系统和其他应用程序。在通过软件或者固件来实现本发明实施例提供的技术方案时,用于实现本发明实施例提供的技术方案的程序代码保存在存储器901中,并由处理器902来执行。
收发器903用于装置与其他设备或通信网络(例如但不限于以太网,RAN RadioAccess Network,无线接入网),WLAN(Wireless Local Area Network,无线局域网)等)之间的通信。
处理器902可以采用通用的中央处理器(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本发明实施例所提供的技术方案。
总线904可包括一通路,在装置各个部件(例如存储器901、收发器903和处理器902)之间传送信息。
应注意,尽管图9所示的硬件仅仅示出了存储器901、收发器903、和处理器902以及总线904,但是在具体实现过程中,本领域的技术人员应当明白,该装置还包含实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当明白,还可包含实现其他功能的硬件器件。
具体的,图9所示的装置用于实现图7和图8实施例所示的装置时,该装置中的收发器903,用于接收用户输入的需要划分的子树数量;
处理器902,与存储器901和收发器903耦合,用于根据子树数量为每个子树分配ID;当接收到处理请求时,确定每个待处理数据的特征值,处理请求中包含待处理数据;根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,预设映射关系为特征值与子树ID的映射关系;根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。
其中,待处理数据包括:待修改数据、待删除数据以及待写入数据。
在本发明另一实施例中,处理器902,还用于将对应于同一子树ID的待处理数据,串行在同一子树ID所属的子树中进行处理。
在本发明另一实施例中,处理器902,还用于在数据的存储路径上预设至少一个特征位置,特征位置用于指示确定特征值时所采用的特征数据的位置。
其中,特征位置为DOM树中指定层级的标签名,或为DOM树中指定层级的标签值。
在本发明另一实施例中,处理器902,还用于当接收到处理请求时,确定待处理数据的存储路径;根据预设的至少一个特征位置,从待处理数据的存储路径中提取每个特征位置上的特征数据;采用预设算法分别计算每个特征数据的子特征值;根据每个特征数据的子特征值,确定待处理数据的特征值。
本发明实施例提供的数据处理的装置,首先收发器接收需要划分的子树的数量,然后处理器根据子树的数量为每个子树分配ID,当接收到处理请求时,确定每个待处理数据的特征值,根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,最后根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理。相比与现有技术中不能在保证数据处理正确性的前提下提高数据处理的效率,导致XML数据库的性能差相比,本发明实施例可以根据预设的特征值与子树ID的映射关系分别确定每个待处理数据的特征值对应的子树ID,每个子树ID对应一个子树,通过待处理数据的特征值与子树ID的映射关系来划分子树可以使得各子树下的数据量分布较为均匀,且各子树被访问的频度均匀,对应于不同子树ID的处理请求将会被并行执行,提高了数据处理的速度,进而提高了XML数据库的性能。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种数据处理的方法,其特征在于,所述方法应用于文档对象模型DOM树,所述方法包括:
接收用户输入的需要划分的子树数量;
根据所述子树数量为每个子树分配ID;
当接收到处理请求时,确定每个待处理数据的特征值,所述处理请求中包含待处理数据;
根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,所述预设映射关系为特征值与子树ID的映射关系;
根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理;
所述方法还包括:
将对应于同一子树ID的待处理数据,串行在所述同一子树ID所属的子树中进行处理。
2.根据权利要求1所述的数据处理的方法,其特征在于,所述方法还包括:
在数据的存储路径上预设至少一个特征位置,所述特征位置用于指示确定特征值时所采用的特征数据的位置。
3.根据权利要求2所述的数据处理的方法,其特征在于,所述当接收到处理请求时,确定每个待处理数据的特征值包括:
当接收到处理请求时,确定待处理数据的存储路径;
根据预设的所述至少一个特征位置,从所述待处理数据的存储路径中提取每个特征位置上的特征数据;
采用预设算法分别计算每个特征数据的子特征值;
根据每个特征数据的子特征值,确定所述待处理数据的特征值。
4.根据权利要求2至3中任一项所述的数据处理的方法,其特征在于,所述待处理数据包括:待修改数据、待删除数据以及待写入数据。
5.根据权利要求4所述的数据处理的方法,其特征在于,所述特征位置为指定层级的标签名,或者为指定层级的标签值。
6.一种数据处理的装置,其特征在于,包括:
接收单元,用于接收用户输入的需要划分的子树数量;
分配单元,用于根据所述子树数量为每个子树分配ID;
确定单元,用于当接收到处理请求时,确定每个待处理数据的特征值,所述处理请求中包含待处理数据;根据预设映射关系,分别确定每个待处理数据的特征值对应的子树ID,所述预设映射关系为特征值与子树ID的映射关系;
处理单元,用于根据每个待处理数据的特征值对应的子树ID,将对应于不同子树ID的待处理数据,并行在各自子树ID所属的子树中进行处理;
所述处理单元,还用于将对应于同一子树ID的待处理数据,串行在所述同一子树ID所属的子树中进行处理。
7.根据权利要求6所述的数据处理的装置,其特征在于,所述装置还包括预设单元;
所述预设单元,用于在数据的存储路径上预设至少一个特征位置,所述特征位置用于指示确定特征值时所采用的特征数据的位置。
8.根据权利要求7所述的数据处理的装置,其特征在于,
所述确定单元,还用于当接收到处理请求时,确定待处理数据的存储路径;根据预设的所述至少一个特征位置,从所述待处理数据的存储路径中提取每个特征位置上的特征数据;采用预设算法分别计算每个特征数据的子特征值;根据每个特征数据的子特征值,确定所述待处理数据的特征值。
9.根据权利要求7至8中任一项所述的数据处理的装置,其特征在于,所述待处理数据包括:待修改数据、待删除数据以及待写入数据。
10.根据权利要求9所述的数据处理的装置,其特征在于,所述特征位置为指定层级的标签名,或者为指定层级的标签值。
11.一种可读存储介质,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至5中任一项所述的数据处理的方法被实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610349601.2A CN106055527B (zh) | 2016-05-24 | 2016-05-24 | 一种数据处理的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610349601.2A CN106055527B (zh) | 2016-05-24 | 2016-05-24 | 一种数据处理的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106055527A CN106055527A (zh) | 2016-10-26 |
CN106055527B true CN106055527B (zh) | 2019-11-19 |
Family
ID=57174222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610349601.2A Active CN106055527B (zh) | 2016-05-24 | 2016-05-24 | 一种数据处理的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106055527B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968298B (zh) * | 2018-09-30 | 2023-03-10 | 上海羚驭信息技术有限公司 | 一种应用于实例化需求的管理系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024046A (zh) * | 2010-12-14 | 2011-04-20 | 成都市华为赛门铁克科技有限公司 | 数据重复性校验方法和装置及系统 |
CN102306168A (zh) * | 2011-08-23 | 2012-01-04 | 成都市华为赛门铁克科技有限公司 | 日志操作方法、装置及文件系统 |
CN103631870A (zh) * | 2013-11-06 | 2014-03-12 | 广东电子工业研究院有限公司 | 一种用于大规模分布式数据处理的系统及其方法 |
CN104796345A (zh) * | 2015-03-19 | 2015-07-22 | 杭州华三通信技术有限公司 | 一种消息的发送控制方法和设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385588B (zh) * | 2010-08-31 | 2014-08-06 | 国际商业机器公司 | 用于提高数据并行插入的性能的方法和系统 |
-
2016
- 2016-05-24 CN CN201610349601.2A patent/CN106055527B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024046A (zh) * | 2010-12-14 | 2011-04-20 | 成都市华为赛门铁克科技有限公司 | 数据重复性校验方法和装置及系统 |
CN102306168A (zh) * | 2011-08-23 | 2012-01-04 | 成都市华为赛门铁克科技有限公司 | 日志操作方法、装置及文件系统 |
CN103631870A (zh) * | 2013-11-06 | 2014-03-12 | 广东电子工业研究院有限公司 | 一种用于大规模分布式数据处理的系统及其方法 |
CN104796345A (zh) * | 2015-03-19 | 2015-07-22 | 杭州华三通信技术有限公司 | 一种消息的发送控制方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106055527A (zh) | 2016-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112800095B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN106294664A (zh) | 一种生成思维导图的方法和装置 | |
US20210182259A1 (en) | Level-based hierarchies | |
CN110597900B (zh) | 一种gdb数据实时按需生成矢量切片的方法 | |
CN109359281A (zh) | 动态表单生成方法及装置 | |
CN112506486A (zh) | 搜索系统建立方法、装置、电子设备及可读存储介质 | |
CN106055527B (zh) | 一种数据处理的方法及装置 | |
US9015165B1 (en) | Text-SQL relational database | |
CN107391672A (zh) | 数据的读写方法及消息化的分布式文件系统 | |
US9189486B2 (en) | Autonomic generation of document structure in a content management system | |
CN117236236B (zh) | 一种芯片设计数据管理方法、装置、电子设备及存储介质 | |
CN113849581A (zh) | 告警信息的处理方法、装置、设备和存储介质 | |
CN109558159A (zh) | 游戏中用户界面的更新方法和装置 | |
CN109783321A (zh) | 监控数据管理方法、装置、终端设备 | |
CN107506369A (zh) | 一种数据访问方法及设备 | |
CN110659286B (zh) | 基于弱平衡空间树动态空间索引方法及其存储介质、装置 | |
CN107391044A (zh) | 一种云硬盘的创建方法及创建装置 | |
US11539594B2 (en) | Diagramming chlid nodes with multiple parent nodes | |
CN113344074B (zh) | 模型训练方法、装置、设备及存储介质 | |
CN113254455B (zh) | 数据库的动态配置方法、装置、计算机设备及存储介质 | |
CN113254215B (zh) | 数据处理方法和装置、存储介质及电子设备 | |
US20210397663A1 (en) | Data reduction in a tree data structure for a wireframe | |
CN111523290B (zh) | 一种代码转换方法、设备和存储介质 | |
CN110678856B (zh) | 调解树结构数据的副本之间的冲突 | |
CN112528613A (zh) | 一种数据表生成方法及其相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211222 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: xFusion Digital Technologies Co., Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |