数据的操作处理方法、系统及调度服务器
技术领域
本申请属于数据的存储及操作管理领域,尤其涉及一种数据的操作处理方法、系统及调度服务器。
背景技术
当今互联网已进入万兆互联网/5G网络时代,其中,移动互联网在生活中起到了重要作用,随着用户终端(手机、平板、笔记本电脑)通信带宽高速互联技术的实现,通信后端数据存储技术也亟需创新,唯有后端存储网络高速响应前端指令,快速准确地从指定数据库中提取相应信息返回给前端,才能更好地在用户使用终端设备时,为用户的信息检索、页面刷新带来优质体验。
互联网用户在使用终端设备的过程中,都是以可视化人文方式(世界各国语言的文字、语音)进行操作,而机器内部处理器则是以机器码、二进制码、指令字符形式处理前端提交的一系列任务。在机器接受前端进程进而转换为指令字符机器语言时,机器如何使用这些指令更高速地从数据库服务器中读写并准确无误地提取相应数据返回前端,是其高速响应前端指令的关键所在,然而目前传统的基于顺序存储与顺序检索的数据库操作模式难以实现对数据库服务器的快速读写,相应难以满足高速响应前端指令的需求,由此,提供一种面向数据库的快速高效的数据操作处理方案以高速响应前端指令,成为本领域亟需解决的技术问题。
发明内容
有鉴于此,本申请提供了一种数据的操作处理方法、系统及调度服务器,用于通过标签指令式目录树索引方式加速后端数据库操作数据的响应时间,进而满足高速响应前端指令的需求。
本申请公开的技术方案如下:
一种数据的操作处理方法,包括:
获得终端设备对目标文件的操作指令;
确定所述操作指令对应的至少一个目标节点标签指令,每个目标节点标签指令用于指向目录树中的一个目标节点;所述目录树包括以树型结构组织的至少一个用于进行数据库数据存储的节点,每个节点存储有节点标签指令及数据,所述节点标签指令至少包括所处的该节点的节点位置信息;
基于所述至少一个目标节点标签指令中的节点位置信息,在所述目录树中进行目标节点的位置定位;
基于在目录树中定位的节点位置,执行与所述操作指令相匹配的数据操作,以响应所述操作指令。
上述方法,优选的,所述获得终端设备对目标文件的操作指令,包括:
利用调度服务器中的驻留检索进程接收终端设备发出的对目标文件的操作指令;其中,所述驻留检索进程在数据存储中心的数据库服务器开机时自启动,所述目录树存储在数据存储中心的数据库服务器集群中。
上述方法,优选的,所述操作指令为对目标文件的增、删、改、查指令中的任意一种;
所述确定所述操作指令对应的至少一个目标节点标签指令,包括:
若所述操作指令为对目标文件的增指令,则:确定所述增指令对应的待写入数据的数据量;根据所述待写入数据的数据量将所述待写入数据拆分为至少一个数据块;在标签目录薄中为每个数据块创建一目标节点标签指令,所述目标节点标签指令中至少包括为所对应数据块分配的节点位置信息;
若所述操作指令为对目标文件的删指令或改指令或查指令,则:在标签目录薄中检索目标文件对应的至少一个目标节点标签指令;所述标签目录薄中记录有文件与节点标签指令的对应关系信息。
上述方法,优选的,所述基于在目录树中定位的节点位置,执行与所述操作指令相匹配的数据操作,包括:
若所述操作指令为对目标文件的增指令,则:向创建的每个目标节点标签指令赋予数据块;向数据存储中心的目录树中每个目标节点标签指令定位的节点位置处存入所对应的目标节点标签指令及数据块,以形成目录树的新增目标节点;其中,同一文件的数据存储至所述目录树中具有上下级关系的级联节点中;
若所述操作指令为对目标文件的删指令,则:若目标节点标签指令在目录树中定位的目标节点处于目录树末端位置,则删除目标节点标签指令在目录树中定位的目标节点;若目标节点标签指令在目录树中对应的目标节点处于目录树非末端位置,则删除目标节点标签指令在目录树中定位的目标节点,并拼接所删除节点的上下级节点;删除节点后同步调整标签目录薄的节点信息;
若所述操作指令为对目标文件的改指令,则:对所述至少一个目标节点标签指令在目录树中定位的至少一个目标节点进行由数据删除操作与数据写操作构成的修改操作,并在因修改操作导致需删除节点或新增节点时,按以上的删指令或增指令对应的删除节点或新增节点处理过程删除目录树相应节点或向目录树增添相应节点,并同步调整标签目录薄的节点信息;
若所述操作指令为对目标文件的查指令,则:获取目录树中对应于所述至少一个目标节点标签指令的至少一个目标节点的完整节点数据;根据各个目标节点的节点标签指令中的节点位置信息对各个目标节点进行数据重组,将重组数据构成的目标文件返回终端设备。
上述方法,优选的,在进行数据重组后,所述方法还包括:根据各个目标节点的节点标签指令中的节点位置信息验证重组数据的完整性;
所述根据各个目标节点的节点标签指令中的节点位置信息验证重组数据的完整性,包括:
验证各个目标节点的节点标签指令中的节点位置信息是否能实现将各个目标节点进行上下级节点的级联节点拼接;
若是,则通过数据完整性验证;
若否,则未通过数据完整性验证。
上述方法,优选的,所述节点标签指令中还包括对节点的数据块进行签名处理所得的签名信息;
在响应于所述增指令或所述改指令需向目录树新增节点时,所述方法还包括:利用预定算法为每个需写入目录树的数据块生成一对公钥私钥,利用数据块的私钥对数据块进行签名处理,得到数据块的签名信息,并将数据块的签名写入数据块对应的节点标签指令中,以使得在目录树的节点中一并存入数据块数据及数据块对应的包括节点位置信息和签名信息的节点标签指令。
在响应于所述查指令,获得目录树中至少一个目标节点的完整节点数据并重组后,所述方法还包括:利用每个目标节点对应的公钥对所对应目标节点中的签名信息进行签名验证,若签名验证通过,则向终端设备返回基于数据重组所得的目标文件,若签名验证未通过,则响应失败。
上述方法,优选的,节点标签指令的前8n位为节点的节点位置信息,所述前8n位除外的其他信息位为节点数据块的签名信息;所述n为非0自然数;
所述前8n位中的不同位按先后顺序分别与目录树中从根节点至叶节点的不同层一一对应;节点标签指令前8n位中相应位的取值,用于表示节点在目录树中对应于该位的相应层中的位置;
所述根据所述待写入数据的数据量将所述待写入数据拆分为至少一个数据块,包括:
根据公式N=D/(C-8n-S),将所述待写入数据拆分为至少一个数据块;
其中,N表示需将待写入数据拆分成的数据块总数目,D表示待写入数据的总数据量大小、C表示目录树中的单个树节点可存储的最大数据量,8n表示标签前半段节点位置信息占用的数据量大小,S表示标签后半段签名信息所占用数据量的大小。
上述方法,优选的,所述基于所述至少一个目标节点标签指令中的节点位置信息,在所述目录树中进行目标节点的位置定位,包括:
对于每个目标节点标签指令,执行以下的定位操作:
基于目标节点标签指令的前8n位中的各个位的取值,从目录树的树根开始进行逐层定位,直至定位至前8n位中最后一位有效取值在相应层对应的节点位置,得到目标节点;
9、一种调度服务器,包括:
存储器,用于至少存储一计算机程序流;
处理器,用于调用并执行所述存储器中的所述计算机程序流,通过执行所述计算机程序流执行如上任一项所述的方法。
一种数据的操作处理系统,包括:多个终端设备,如上所述的调度服务器,以及数据存储中心;其中:
所述数据存储中心的数据库服务器集群中存储有目录树,所述目录树包括以树型结构组织的至少一个用于进行数据存储的节点,每个节点存储有节点标签指令及数据,所述节点标签指令至少包括所处的该节点的节点位置信息;
所述调度服务器用于获得终端设备对目标文件的操作指令,并通过执行如权利要求1-8任一项所述的方法对所述数据存储中心的目标节点执行与所述操作指令相匹配的操作,以响应所述操作指令。
综上,本申请涉及一种数据的操作处理方法、系统及调度服务器,在本申请方案中,提供了一种利用树型结构的目录树对数据进行组织与存储的数据库存储模型,在该基于目录树的树型存储模型中,为目录树的每个节点设计了一至少包括节点位置信息的节点标签指令,并同时将目录树的树节点设计为存储“节点标签指令”及“数据”两部分内容;这样,当需要对目录树的数据进行操作(如增删改查)时,可基于节点标签指令中携带的节点位置信息,从目录树一步到位地进行节点定位,无需像传统数据库检索模式中按顺序方式对数据库进行存储或检索,从而节省了后端数据库系统对用户操作指令的响应时间,可进一步满足高速响应前端指令的需求。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本申请实施例提供的数据的操作处理方法的流程示意图;
图2是本申请实施例提供的数据库应用架构示意图;
图3是本申请实施例提供的目录树的逻辑体系结构图;
图4是本申请实施例提供的节点标签指令的标签图例;
图5是传统数据库操作的操作模式示意图;
图6是本申请实施例提供的标签指令式目录树数据库操作的操作模式示意图;
图7是本申请实施例提供的标签指令式目录树的增删查改操作的处理逻辑示意图;
图8是本申请实施例提供的节点标签指令的标签格式示例;
图9是本申请实施例提供的基于节点标签指令首尾匹配校验的数据传输示意图;
图10是本申请实施例提供的调度服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供了一种数据的操作处理方法、系统及调度服务器,可通过标签指令式目录树索引方式加速后端数据库操作数据的响应时间,进而满足高速响应前端指令的需求。以下将通过具体实施例对本申请提供的数据的操作处理方法、系统及调度服务器进行详述。
参阅图1,示出了本实施例中数据的操作处理方法的处理流程,该数据的操作处理方法可以应用于如图2示出的数据库应用架构中,更具体地,可应用于该架构中的调度服务器中,该调度服务器可以是进程调度服务器,如具体可以是但不限于双机热备进程调度服务器中等,该调度服务器可通过进程调度实现对数据存储中心的数据进行相应的增删改查等数据操作,数据存储中心由包括多个数据库服务器的服务器集群构成。
如图1所示,本实施例中,所述数据的操作处理方法包括:
步骤101、获得终端设备对目标文件的操作指令。
本申请中,对文件的操作指令,可以包括对数据库中文件数据的增、删、改、查等操作指令。
用户比如互联网用户在使用终端设备的过程中,可根据实际的操作需求触发对数据库目标文件数据的增、删、改、查等操作指令。
进程调度服务器相应可接收到终端设备发出的对目标文件的上述操作指令。为了进一步加速后端服务器系统对前端数据操作指令的响应,本实施例在进程调度服务器中设计了一存储系统驻留检索进程,即SSP,全程Standby Searching Process。该驻留检索进程随数据库服务器开机即自启动,并一直处于待命状态,而不是前端指令发来,才新建检索进程去进行数据库的读写。该驻留检索进程的重要作用是,一旦有前端任务指令发来,即刻执行相应处理、检索数据库,节省不必要的时间开支。
步骤102、确定所述操作指令对应的至少一个目标节点标签指令,每个目标节点标签指令用于指向目录树中的一个目标节点;所述目录树包括以树型结构组织的至少一个用于进行数据存储的节点,每个节点存储有节点标签指令及数据,所述节点标签指令至少包括所处的该节点的节点位置信息。
另外,为了进一步提升后端数据库操作数据的响应速率,本申请还提出了利用树型结构的目录树对数据库数据进行组织与存储的技术构思,如图3所示,为目录树的逻辑体系结构。在利用目录树结构对数据库数据进行存储时,为每个节点设计了一携带节点位置信息的节点标签指令,节点标签指令中的节点位置信息主要用于对节点进行查询定位及节点间的匹配校验(节点间的匹配校验部分将在后文说明),并在目录树的每个节点中对应存储节点标签指令与数据(如文件数据块)两部分内容,也即,通过在相应节点位置处存储节点标签指令和数据这两部分内容来形成目录树的节点。
节点标签指令中节点位置信息的位数为8n,其中,n为非0自然数,实际应用中,可将8n位的节点位置信息设置在节点标签指令的前半段,而后半段预留为用作其他信息的填充,示例性地,如可将后半段设计为128位;且在此设计格式中,节点标签指令前8n位中的不同位按先后顺序分别与目录树中从根节点至叶节点的不同层一一对应,节点标签指令前8n位中相应位的取值,用于表示节点在目录树中对应于该位的相应层中的位置,对于节点处于目录树中非末端节点(非叶节点)的情形,其标签指令前8n位中相应后几位(或一位)的取值可采用空值或预定的非有效字符表示。考虑数据库规模或目录树的数据容量,实际应用中,可对节点标签指令中n的数值进行动态扩展,相应使得在针对中型或大型数据库场景时,可将节点位置信息动态扩展为16位/32位/64位/128位+,以达到扩展目录树的规模与数据容量的目的。
参阅图4的图示,示出了n=1情况下节点标签指令的标签图例,其中,前八位为节点位置信息,每位的取值为阿拉伯数字0~9或非有效取值(如空值或预定字符),代表节点在目录树相对应层中的节点位置,举例来说,假设节点标签指令前8位的取值为“02159326”,则表示节点在目录树中的位置为“根节点R→根节点R的编号为2的子节点C1→C1的编号为1的子节点C2→C2的编号为5的子节点C3→…→第8位数值“6”在第8层中对应的相应位置”。
实施本申请时,具体可将目录树结构形式的数据库数据存储于数据存储中心的服务器集群中。
同时,调度服务器中还维护有与目录树的节点状态相同步的标签目录薄,该标签目录薄中记录有文件(如文件名称或数据库中数据表的表编号等)与节点标签指令的对应关系信息,每向目录树新增或删除一节点,则需要在标签目录薄中同步创建或删除节点的节点标签指令,并相应维护节点标签指令与文件的对应关系信息。可选地,本实施例中,预先规定了目标树中单个树节点的数据量上限,在具体的数据存储中,可根据文件的实际数据量及单个树节点的数据量上限将文件存储为一个或多个节点。这样在标签目录薄中记录的文件与节点标签指令的对应关系信息中,每个文件则对应有一个或多个节点标签指令。
“驻留检索进程”收到前端设备用户发来的数据库操作指令之后,使用驻留检索进程的目录树指针,检索标签目录薄和数据库目录树,并将查询到的数据或者可用存储空间进行读取、更改、写入、删除操作。以下将详细说明。
其中,若获得的前端指令为对目标文件的增指令,则“驻留检索进程”确定所述增指令对应的待写入数据的数据量,根据所述待写入数据的数据量及单个树节点的数据量上限将所述待写入数据拆分为至少一个数据块,并在标签目录薄中为每个数据块创建一目标节点标签指令,同时记录目标文件与创建的至少一个目标节点标签指令的对应关系信息,为数据块创建的目标节点标签指令中至少包括为该数据块分配的节点位置信息。
具体地,本实施例给出自定义公式N=D/(C-8n-S),其中,N表示向目录树写入数据时需将待写入数据(如增操作中需写入的数据)拆分成的数据块(数据段)总数目,D表示待写入数据的总数据量大小、C是一个常量,表示目录树中的单个树节点可存储的最大数据量,可根据数据库集群磁盘阵列所使用的磁盘参数来定义,8n表示标签前半段节点位置信息占用的数据量大小(n取非0的自然数,即1、2、3、……),S表示标签后半段信息所占用数据量的大小,如S可取值128。
进程调度服务器对待写入数据按公式进行拆分,形成一个(D≤(C-8n-S))或多个(D>(C-8n-S))独立的数据块,并针对每个数据块,利用“指针”进程在标签目录薄中为每个数据块创建一目标节点标签指令(也可简称为新建标签),并逐个赋予数据块;创建的目标节点标签指令的前8n位记录了该数据块在目录树中所对应节点的位置信息,同时在标签目录薄中记录目标文件与创建的至少一个目标节点标签指令的对应关系信息。
若获得的前端指令为对目标文件的删指令或改指令或查指令,则进程调度服务器可使用指针在标签目录薄中进行检索,根据检索结果,获知目标文件对应的至少一个目标节点标签指令,进而根据检索的至少一个目标节点标签指令统计目标文件的数据在数据库集群目录树中的节点位置。
步骤103、基于所述至少一个目标节点标签指令中的节点位置信息,在所述目录树中进行目标节点的位置定位。
在为前端操作指令确定出其所对应的至少一个目标节点标签指令后,可利用该至少一个目标节点标签指令中携带的至少一个节点位置信息进行节点位置定位,以使得将所定位到的节点位置的数据或者可用存储空间进行读取、更改、写入、删除操作。
具体地,对于从标签目录薄中检索到的与操作指令(的目标文件)对应的每个目标节点标签指令,可在目录树中执行以下的定位操作:
基于目标节点标签指令的前8n位中的各个位的取值,从目录树的树根开始进行逐层定位,直至定位至前8n位中最后一位有效取值在相应层对应的节点位置,得到目标节点的节点位置。
对于增指令来说,所定位的节点位置为未存有数据的可用存储空间,对于删、改、查指令,所定位的目标节点的节点位置上则已存储有相应数据;也就是说,对于增指令来说,通过在目录树进行节点位置定位,可定位到相应的可用存储空间以用作新节点的创建,而对于删、改、查指令,则可定位到目录树中的已有节点,以用作进行数据查询或删除或修改等操作。
与传统的数据库操作中,需基于从左到右、从上到下的顺序检索方式对数据库数据进行“增、删、改、查”的操作模式不同,本申请实施例提供的标签指令式目录树数据库操作,可基于节点标签指令中的节点位置信息,从树根到用户需要操作的数据所处的节点树枝一步到位地进行节点定位,无需像传统数据库检索模式中按顺序方式对数据库进行检索,节省了后端数据库系统对用户操作指令的响应时间。
参阅图5与图6,分别示出了传统数据库操作与本申请实施例的标签指令式目录树数据库操作的操作模式示意图。
步骤104、基于在目录树中定位的节点位置,执行与所述操作指令相匹配的数据操作,以响应所述操作指令。
在根据从标签目录薄检索出的至少一个目标节点标签指令,在目录树中进行节点位置定位后,可进一步在所定位的节点位置(如针对增指令的可用存储空间或针对其他操作指令的已有节点)执行与所述操作指令相匹配的增、删、查、改数据操作。
参阅图7,针对操作指令的不同指令类型,所执行的相应数据操作如下:
一、增操作
若所述操作指令为对目标文件的增指令,则:向创建的每个目标节点标签指令赋予数据块;向数据存储中心的目录树中每个目标节点标签指令定位的节点位置处存入所对应的目标节点标签指令及数据块,以形成目录树的新增目标节点;其中,同一文件的数据存储至所述目录树中具有上下级关系的级联节点中。
二、删操作
若所述操作指令为对目标文件的删指令,则:若目标节点标签指令在目录树中定位的目标节点处于目录树末端位置,则删除目标节点标签指令在目录树中定位的目标节点;若目标节点标签指令在目录树中对应的目标节点处于目录树非末端位置,则删除目标节点标签指令在目录树中定位的目标节点,并拼接所删除节点的上下级节点;删除节点后同步调整标签目录薄的节点信息。
三、改操作
若所述操作指令为对目标文件的改指令,则:对所述至少一个目标节点标签指令在目录树中定位的至少一个目标节点进行由数据删除操作与数据写操作构成的修改操作,并在因修改操作导致需删除节点或新增节点时,按以上的删指令或增指令对应的删除节点或新增节点处理过程删除目录树相应节点或向目录树增添相应节点,并同步调整标签目录薄的节点信息。
四、查操作
若所述操作指令为对目标文件的查指令,则:获取目录树中对应于所述至少一个目标节点标签指令的至少一个目标节点的完整节点数据;根据各个目标节点的节点标签指令中的节点位置信息对各个目标节点进行数据重组,将重组数据构成的目标文件返回终端设备。
在实际实施中,可将目录树中对应于所述至少一个目标节点标签指令的至少一个目标节点的完整节点数据进行复制(查询数据不需要改动原有目录树结构),移至集群高级缓存中,并根据节点数据块标签的左边节点位置信息对节点进行重组,参阅图2的201,即示出了重组后的节点数据的示意图,需要说明的是,这里,重组后的数据是包括各目标节点中的标签的,之后,可在对重组数据执行去标签化处理后(去标签后的重组数据如图2的202所示),将去标签后的重组数据(构成目标文件)返回到用户前端设备。
本申请中,基于上述的目录树结构进行数据库数据的组织与存储,可支持前端多用户同时对数据库进行操作,数据库后端系统可以实现多线程迸发进行数据检索,因为目录树的每个树枝都是相互独立的线路,不会影响其他进程进行独立检索的任务,不冲突、不延迟,可有效解决程序队列排队等候问题,从而提高数据存储处理能力。
综上,在本申请方案中,提供了一种利用树型结构的目录树对数据进行组织与存储的数据库存储模型,在该基于目录树的树型存储模型中,为目录树的每个节点设计了一至少包括节点位置信息的节点标签指令,并同时将目录树的树节点设计为存储“节点标签指令”及“数据”两部分内容;这样,当需要对目录树的数据进行操作(如增删改查)时,可基于节点标签指令中携带的节点位置信息,从目录树一步到位地进行节点定位,无需像传统数据库检索模式中按顺序方式对数据库进行存储或检索,从而节省了后端数据库系统对用户操作指令的响应时间,可进一步满足高速响应前端指令的需求。
针对目录树的管理,本申请实施例还提出了一种数据库目录树的快速收敛方式:在没有任何前端任务指令发来的情况下,数据库系统根据目录树节点现有的数据表自动创建一张类似于图书馆书籍分类的目录表,以形成所述标签目录薄。基于该快速收敛方式,一方面,可实现快速收敛(快速根据数据库数据表名称进行向上收敛);另一方面,可实现断点续联功能,在收敛过程中,一旦有前端的操作指令发来,可优先处理用户的操作请求以给予用户优质体验,处理完毕之后,进程自动延续收敛过程中的节点,继续进行目录树收敛工作。
目录树通过增、删、改、查之后,目录树收敛算法具备了均衡节点功能,能够让数据库目录树各个子节点的多级节点数据在一个平衡的状态抖动。不会造成目录树某一/些条分支的节点数过多,而另一/些分支的节点数过少的情形,如不会造成目录树某一/些条分支的节点节点数多达1000,而另一/些分支的节点数只有个位数或十位数的情形等。
在本申请一可选实施例中,目录树中节点的节点标签指令除了包括节点位置信息,还包括对节点的数据块进行签名处理所得的签名信息。
如图8所示,作为一个示例,本实施例具体在节点标签指令的前8位中写入节点的位置信息,在后128位中写入对节点的数据块进行签名处理所得的签名信息。
基于节点标签指令的上述设计格式,进程调度服务器在响应于前端的增指令或改指令需向目录树新增节点时,参阅图2,所述数据的操作处理方法还包括:
在响应于前端的增指令或改指令需向目录树新增节点时,进程调度服务器利用预定算法为每个需写入目录树的数据块生成一对公钥私钥,利用数据块的私钥对数据块进行签名处理,得到数据块的签名信息,并将数据块的签名信息写入数据块对应的节点标签指令中,以使得在目录树的节点中一并存入数据块数据及数据块对应的包括节点位置信息和签名信息的节点标签指令。
在响应于前端的查指令,获得目录树中至少一个目标节点的完整节点数据并重组后,进程调度服务器利用每个目标节点对应的公钥对所对应目标节点中的签名信息进行签名验证,若签名验证通过,则向终端设备返回基于数据重组所得的目标文件,若签名验证未通过,则响应失败。
具体地,可以但不限于采用MD5信息摘要算法(MD5 Message-Digest Algorithm)或AES(Advanced Encryption Standard)等算法对数据块进行签名处理,并将所得的一串签名信息作为目录树节点标签的后半段写入节点标签指令。
本实施例通过对数据块进行签名及验证处理,可有效防止数据传输过程中被截取、篡改,增加了数据的安全性;且具体地,本实施例在进程调度服务器对数据块进行签名,并将签名信息作为节点标签指令的后半段写入节点标签指令进而随节点标签指令存储进数据存储中心的目录树节点中,可使得后续进程调度服务器从节点调取节点数据时保证调取的节点数据中除了包括数据块数据还包括签名信息,从而为进程调度服务器同时对调取的节点数据进行签名验证提供了支持,使得进程调度服务器能有效验证所调取的数据是否为其之前写入(存储入)数据存储中心的数据且未经篡改,确保了数据的安全性。
在本申请一可选实施例中,在响应于前端的查指令,从数据存储中心查询到至少一个目标节点的完整节点数据,并进行数据重组后,本申请提供的数据的操作处理方法还可以包括以下处理:
根据各个目标节点的节点标签指令中的节点位置信息验证重组数据的完整性。
本实施例提供了一种基于数据完整性验证的数据传输协议,在从数据存储中心查询至少一个目标节点的完整节点数据,并对各目标节点的完整节点数据进行数据重组后,利用该基于数据完整性验证的数据传输协议进行数据传输处理。在基于该协议的传输处理过程中,当从数据存储中心查询到至少一个目标节点的完整节点数据,并进行数据重组后,通过验证所查询的各个目标节点的节点标签指令中的节点位置信息是否能实现将各个目标节点进行上下级节点的级联节点拼接,来对数据进行完整性验证,若能够实现将各个目标节点进行上下级节点的级联节点拼接,则重组数据通过数据的完整性验证,反之,则重组数据未通过数据的完整性验证。
具体地,如图9所示,由于在进行目录树节点的数据组织与存储时,目录树上每一个节点都有一个携带节点位置信息的标签指令,且将同一文件的数据内容存储于目录树的具有上下级关系的级联节点中,从而,在响应于文件数据的查指令对目录树进行节点查询而得到的各个目标节点中,其节点标签指令中的节点位置信息应是首尾相接的,由此,无论增删改查,数据传输过程中,每个节点标签指令都是前8n位可以与目录树的上级节点、下级节点相互匹配成功进行唯一拼接,即形成首尾相接。从而,只有本节点标签指令首部与目录树上一节点标签指令首部形成唯一拼接、本节点标签指令首部与目录树下一节点标签指令首部形成唯一拼接,如此匹配校验成功,系统才能确认数据的完整性。
在重组数据通过完整性验证之后,可进一步对重组数据中的各目标节点的数据块进行签名验证及去标签化处理(去掉重组数据中各个目标节点的节点标签指令),这样即可得到用户所需的目标文件,进而可将数据重组所得的目标文件返回前端用户的终端界面上;反之,若重组数据未通过完整性验证,则拒绝向前端的数据传输,可进一步通过数据的纠错、重传实现数据的完整性。
本实施例在从数据库目录树进行节点数据查询时,通过对节点数据进行基于节点标签指令的完整性验证,可有效确保向前端返回的数据的完整性与正确性,进一步提升了用户体验。
与上述各实施例提供的数据的操作处理方法相对应,本申请还提供了一种调度服务器,该调度服务器可以是进程调度服务器,更具体地,如可以是但不限于双机热备进程调度服务器。
参阅图10示出的调度服务器的结构示意图,该调度服务器可以包括:
存储器1001,用于至少存储一计算机程序流;
处理器1002,用于调用并执行所述存储器中的所述计算机程序流,通过执行所述计算机程序流执行如以上任一实施例所述的数据的操作处理方法。
其中,对于调度服务器的具体功能可参阅上文实施例中对本申请提供的数据的操作处理方法的相关说明或描述,这里不再赘述。
另外,本申请实施例还提供了一种数据的操作处理系统,该系统包括:多个终端设备,如上一实施例所述的调度服务器,以及数据存储中心;
其中,所述数据存储中心的数据库服务器集群中存储有目录树,所述目录树包括以树型结构组织的至少一个用于进行数据存储的节点,每个节点存储有节点标签指令及数据,所述节点标签指令至少包括所处的该节点的节点位置信息;
所述调度服务器用于获得终端设备对目标文件的操作指令,并通过执行如上文实施例所述的数据的操作处理方法对所述数据存储中心的目标节点执行与所述操作指令相匹配的操作,以响应所述操作指令。
对于调度服务器获得终端设备对目标文件的操作指令,并对所述数据存储中心的目标节点执行与所述操作指令相匹配的操作以响应所述操作指令的处理过程,可参阅上文实施例中对本申请提供的数据的操作处理方法的相关说明或描述,这里不再赘述。
综上所述,本申请实施例提供的数据的操作处理方法、系统及调度服务器,与传统技术中基于顺序存储与顺序检索的数据库操作模式相比,可具有以下的技术优势:
1)通过标签指令式目录树索引方式加速了后端数据库操作数据的响应速度;
2)分段存储签名过的数据有效提高了数据安全性;
3)基于目录树状分布式数据存储,可支持前端多用户同时对数据库进行操作,数据库后端系统可以实现多线程迸发进行数据检索,因为每个树枝都是相互独立的线路,不会影响其他进程进行独立检索的任务,不冲突、不延迟,有效解决了程序队列排队等候问题,从而提高数据存储处理能力;
4)同等硬件资源下,单位时间内可迸发处理更多的数据库“增删改查”任务,因为数据库是树状,各个分支增删改查线程不会冲突,可以同时进行;
5)所提供的基于数据完整性验证的数据存储传输协议,完全避免了用户进行增删改查数据递归传输过程中出错的情况。因为在数据回传、或者标签创建过程中,已经进行目录树相邻节点标签指令首尾纠错匹配,唯有比对成功的才进行传输。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
为了描述的方便,描述以上系统或装置时以功能分为各种模块或单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
最后,还需要说明的是,在本文中,诸如术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。