一种数据资源的调整装置及其调整方法与流程

文档序号:11848288阅读:214来源:国知局
一种数据资源的调整装置及其调整方法与流程

本发明涉及移动应用后台数据资源管理领域,尤其涉及一种运营数据资源的调整装置及其调整方法。



背景技术:

对于资源后台,特别是应用商店等需要APP、服务测API和后台管理系统的项目,后台资源的运营排序占有重要的位置。但是通常这种后台系统管理的数据量是巨大的,如果按照常规方法,将原本第十万位的数据运营到第一位,那么需要数据库处理十万条数据;通常情况下运营不会只有一次,频繁的运营修改,使得数据库需要处理的数据量成倍增加,这会大大加重数据库的负担,轻则响应速度大幅度下降,重则数据库直接崩溃。更重要的,应用商店API需要及时的读取运营后的数据。

所以,如何保证应用商店API在大数据量下运营结果的及时性,以及同时又要保证更改运营的数据库正常工作,提高数据库处理能力,是一个技术难题。



技术实现要素:

本发明的主要目的在于提出一种大数据量下的数据资源的调整方案,旨在解决大数据量下调整运营数据资源,提高数据库处理能力,保证数据库的正常工作,运营结果的及时更新。

为实现上述目的,本发明提供的一种数据资源的调整装置,所述装置包括:数据库模块、数据调整记录模块、条件设置模块和数据调整模块,其中:

所述数据库模块,用于存储数据表,所述数据表具有用于标识数据属性的标识位;

所述数据调整记录模块,用于记录所述数据库模块的数据表中需要调整的数据及调整的排序位置;

所述条件设置模块,用于设置触发数据调整的条件;

所述数据调整模块,用于在满足所述条件设置模块设置的触发数据调整的条件时根据所述数据调整记录模块记录的数据对所述数据库模块数据表的数据进行调整。

进一步,所述数据表数据包括运营数据和非运营数据;所述标识位,用于标识数据属性,分别用第一标识符来标识所述数据是非运营数据,第二标识符来标识所述数据是运营数据。

进一步,所述数据调整记录模块在进行数据属性调整时,将需调整的数据的运营标识位由第一标识符修改为第二标识符,序号更改为指定的序号,采用静态全局变量集合记录待调整的数据表名;

相应地,所述数据调整模块进行数据表数据调整的具体过程为:

读取所述静态全局变量集合中的记录的数据表名;

从所述数据库模块读取对应的数据表中运营标识位为第一标识符的非运营数据,并按照设定方式自动在临时表中进行排序,其中,所述临时表存储在所述数据库模块,所述临时表的格式与数据表的数据格式是一致的;

从所述数据库模块读取数据表中运营标识为第二标识符的运营数据,按其指定序号位置插入到临时表中指定序号的位置中;

清空数据表中的数据,复制临时表中的数据到数据表中,清空临时表中的数据。

进一步,当同一个数据表中有多个数据属性要变更时,所述数据调整记录模块逐个将需要变更的非运营数据的运营标识位由第一标识符修改为第二标识符,序号变更为指定的序号,直至所有需要变更的数据完成变更为止,采用静态全局变量集合记录待调整的数据表名;

相应地,所述数据调整模块进行数据表数据调整的具体过程为:

读取所述静态全局变量集合中的记录的数据表名;

从所述数据库模块读取对应的数据表中运营标识位为第一标识符的非运营数据,并按照设定方式自动在临时表中进行排序,其中,所述临时表存储在所述数据库模块,所述临时表的格式与数据表的数据格式是一致的;

从所述数据库模块读取数据表中所有运营标识为第二标识符的运营数据;

从所述数据库模块读取数据表中所有运营标识为第二标识符的运营数据并进行比较,按序号从小到大的顺序进行排序;

按排序好的顺序逐个将运营数据分别插入到临时表中指定序号的位置中,插入一个运营数据后数据序号自动加1;

当数据表中所有的数据插入完成后,清空数据表中的数据、复制临时表中的数据到数据表中,清空临时表中的数据。

进一步,当有多个不同数据表的数据属性要变更时,所述数据调整记录模块先处理同一个数据表中的数据属性变更,逐个将需要变更的非运营数据的运营标识位由第一标识符修改为第二标识符,序号变更为指定的序号,直至该数据表中的所有需要变更的数据完成变更为止;然后再用同样方法处理另外一个数据表,直至所有需要变更的数据表处理完成为止,采用静态全局变量集合记录待调整的数据表名;

相应地,所述数据调整模块进行数据表数据调整的具体过程为:

a、从存储模块读取静态全局变量集合中的记录的一个数据表;

b、从数据库模块读取数据表中运营标识位为第一标识符的非运营数据,并按照设定方式自动在临时表中进行排序,其中,所述临时表存储在所述数据库模块,所述临时表的格式与数据表的数据格式是一致的;

c、从数据库模块读取数据表中运营标识为第二标识符的运营数据并进行比较,按序号从小到大的顺序进行排序;

d、按排序好的顺序逐个将运营数据分别插入到临时表中指定序号的位置中,插入一个运营数据后数据序号自动加1;

e、清空数据表中的数据、复制临时表中的数据到数据表中,清空临时表中的数据;

重复以上a到e操作过程,直至静态全局变量集合中记录的数据表为空时结束本次操作。

一种数据资源的调整方法,所述方法包括:

步骤1、设置触发数据调整的条件;

步骤2、记录数据库的数据表中需要调整的数据及调整的排序位置;

步骤3、在满足触发数据调整的条件时根据需要调整的数据及调整的排序位置对数据表的数据进行调整。

进一步,,所述数据表数据包括运营数据和非运营数据;所述运营标识位,用于标识数据属性,分别用第一标识符来标识所述数据是非运营数据,第二标识符来标识所述数据是运营数据。

进一步,所述步骤2中,所述数据调整记录模块在进行数据属性变更时,将需变更的数据的运营标识位由第一标识符修改为第二标识符,序号更改为指定的序号,采用静态全局变量集合记录待调整的数据表名;

相应地,所述步骤3中、调整数据的具体过程为:

读取所述静态全局变量集合中的记录的数据表名;

从数据库中读取对应的数据表中运营标识位为第一标识符的非运营数据,并按照设定方式自动在临时表中进行排序,其中,所述临时表的格式与数据表的数据格式是一致的;

从数据库中读取数据表中运营标识为第二标识符的运营数据,按其指定序号位置插入到临时表中指定序号的位置中;

清空数据表中的数据,复制临时表中的数据到数据表中,清空临时表中的数据。

进一步,所述步骤2中,当同一个数据表中有多个数据属性要变更时,所述数据调整记录模块逐个将需要变更的非运营数据的运营标识位由第一标识符修改为第二标识符,序号变更为指定的序号,直至所有需要变更的数据完成变更为止,采用静态全局变量集合记录待调整的数据表名;

相应地,所述步骤3中、调整数据的具体过程为:

读取所述静态全局变量集合中的记录的数据表名;

从数据库中读取对应的数据表中运营标识位为第一标识符的非运营数据,并按照设定方式自动在临时表中进行排序,其中,所述临时表的格式与数据表的数据格式是一致的;

从数据库中读取数据表中所有运营标识为第二标识符的运营数据;

从数据库中读取数据表中所有运营标识为第二标识符的运营数据并进行比较,按序号从小到大的顺序进行排序;

按排序好的顺序逐个将运营数据分别插入到临时表中指定序号的位置中,插入一个运营数据后数据序号自动加1;

当数据表中所有的数据插入完成后,清空数据表中的数据、复制临时表中的数据到数据表中,清空临时表中的数据。

进一步,所述步骤2中,当有多个不同数据表的数据属性要变更时,所述数据调整记录模块先处理同一个数据表中的数据变更,逐个将需要变更的非运营数据的运营标识位由第一标识符修改为第二标识符,序号变更为指定的序号,直至该数据表中的所有需要变更的数据完成变更为止;然后再用同样方法处理另外一个数据表,直至所有需要变更的数据表处理完成为止,采用静态全局变量集合一一记录所有待调整数据表名;

相应地,所述步骤3中、调整数据的具体过程为:

a、读取所述静态全局变量集合中的记录的一个数据表;

b、从数据库中读取数据表中运营标识位为第一标识符的非运营数据,并按照设定方式自动在临时表中进行排序,其中,所述临时表的格式与数据表的数据格式是一致的;

c、从数据库中读取数据表中运营标识为第二标识符的运营数据并进行比较,按序号从小到大的顺序进行排序;

d、按排序好的顺序逐个将运营数据分别插入到临时表中指定序号的位置中,插入一个运营数据后数据序号自动加1;

e、清空数据表中的数据、复制临时表中的数据到数据表中,清空临时表中的数据;

重复以上a到e操作过程,直至静态全局变量集合中记录的数据表为空时结束本次操作。

与现有技术相比,本发明提出的一种大数据量下的数据资源的调整方案,采用在后台资源数据库的数据表中添加一位运营标识字段来标识数据表中某个数据是否为运营数据,在程序中用静态全局变量Set集合记录要调整的数据表名,并设置一个定时任务来触发数据库数据表数据的调整,并在在进行具体调整操作时,采用临时表来进行运营数据调整的操作,等调整完成后清空数据表中的数据,再将临时表中的数据复制到数据表中,最后清空临时表中的数据的技术手段,能够及时的通知API运营更新的位置,将频繁的运营操作造成的数据量更新累计到一起,通过定时任务定时地进行数据更新排序。这样避免频繁的更新造成数据库性能下降或崩溃;同时,采用临时表来缓存需要更新的数据不会对原数据表产生影响。所以,采用本发明的技术方案,可以解决大数据量下调整资源运营数据,提高数据库处理能力,保证数据库的正常工作,运营结果的及时更新。

附图说明

图1为本发明第一实施例提供的一种数据资源的调整方法的流程图;

图2为本发明第一实施例提供的变更数据资源的示意图;

图3为本发明第一实施例提供的静态全局变量集合记录待调整的数据表名的示意图;

图4为本发明第一实施例提供的数据资源调整示意图;

图5为本发明第二实施例提供的一种数据资源的调整方法的流程图;

图6为本发明第三实施例提供的一种数据资源的调整方法的流程图;

图7为本发明第四实施例提供的一种数据资源的调整装置的结构示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供了一种大数据量下的数据资源的调整方法。在本发明中,在后台资源数据库的数据包括运营数据和非运营数据,数据表中添加用于标识数据属性的运营标识位,用于标识数据表中某个数据是否为运营数据,分别用第一标识符来标识所述数据是非运营数据,第二标识符来标识所述数据是运营数据,在以下叙述提到的各个实施例中,第一标识符为0,第二标识符为1,即如果运营标识位是0,表示该数据是非运营数据,如果运营标识位是1,表示该数据是运营数据;设置一个定时任务来触发数据库数据表数据的调整,在进行具体调整操作时,在程序中用静态全局变量Set集合记录要调整的数据表名;采用一个数据格式与上述数据表格式一致的临时表来进行运营数据调整的操作,等调整完成后清空数据表中的数据,再将临时表中的数据复制到数据表中,最后清空临时表中的数据。

基于本发明上述资源运营数据的调整方法,提出本发明方法各个实施例。

请参照图1至图4。本发明第一实施例提供了一种大数据量下的数据资源的调整方法,该方法包括:

步骤1、在数据库数据表中添加用于标识数据属性的运营标识位,并利用运营标识位变更数据表数据的属性。包括:

步骤1.1、在数据表中添加用于标识数据属性的运营标识位。包括:

所述数据表具有数据表名,数据包括运营数据和非运营数据;在数据表中添加运营标识位,用于标识数据属性,运营标识位为1表示数据为运营数据,运营标识位为0表示数据为非运营数据。

步骤1.2、利用运营标识位变更数据表数据的属性。包括:

将需要变更的非运营数据的运营标识位由0更改为1,将数据表中的非运营数据变更为运营数据。例如,要将数据表a中的非运营数据A(运营标识位为0,序号为m)变更为序号为n的运营数据(通常运营数据默认是按照下载量或其他属性排序的),具体操作过程是:将数据A的运营标识位从0修改为1,序号由m更改为n,即可完成数据A从非运营数据变更为运营数据。如图2所示。

步骤2、设置定时任务触发数据库数据表数据的调整,从而达成数据库运营资源的调整。包括:

在进行数据调整之前设置定时任务。数据库数据表数据的调整时机由预设的定时任务触发(例如每隔30分钟进行数据库运营资源调整),触发后开始根据进行调整数据表中的数据。其调整过程如下(如图4所示):

步骤1.1、记录待调整数据表名。采用静态全局变量集合记录待调整的数据表名,静态全局变量集合一般是采用Set集合。如图3所示。

例如,待调整数据表名为数据表a,则用Set集合来记录数据表a。

步骤1.2、读取静态全局变量集合(Set集合)中的记录的数据表并进行数据调整。包括:

读取静态全局变量集合(Set集合)中的记录的数据表,例如:数据表a;

读取数据表a中运营标识位为0的非运营数据,并按照设定方式(例如默认方式)自动在临时表b中进行排序;

读取数据表a中运营标识为1的运营数据,按其指定序号位置插入到临时表b中指定序号的位置中;例如,本实施例中,将运营数据A插入到临时表b中指定序号为n的位置,n+1位以后的数据序号自动加1;

清空待调整的数据表a中的数据;

复制临时表b中的数据到数据表a中;

清空临时表b中的数据。

参照图5。本发明第二实施例提供了一种大数据量下的数据资源的调整方法,适用于同一个数据表中有多个非运营数据要变更为运营数据时,该方法包括:

步骤S1、将待调整数据表中的非运营数据变更为运营数据。

要将数据表a中的多个非运营数据A、B、C(运营标识位为0,序号分别为m-1、m、m+1)变更为序号为n-1、n、n+1的运营数据,具体操作过程是:将数据A、B、C的运营标识位由0修改为1,序号由m更改为指定的n-1、n、n+1,即可完成数据A、B、C从非运营数据变更为运营数据。

步骤S2、用静态全局变量Set集合记录待调整的数据表a名称;

步骤S3、读取静态全局变量Set集合中的记录的数据表a;

步骤S4、读取数据表a中的数据,并按照设定方式在临时表b中对数据进行重新调整;具体过程是:

读取数据表a中运营标识位为0的非运营数据,并按照设定方式自动在临时表b中进行排序;

读取数据表a中运营标识为1的运营数据并进行比较,按序号从小到大的顺序进行排序;

按排序好的顺序逐个将运营数据分别插入到临时表b中指定序号的位置中,插入一个运营数据后数据序号自动加1;

步骤S5、当数据表a中所有的运营数据插入完成后,清空待调整的数据表a中的数据、复制临时表b中的数据到数据表a中,清空临时表b中的数据。

参照图6。本发明第三实施例提供了一种大数据量下的数据资源的调整方法,适用于有多个不同的数据表中的一个或多个非运营数据要变更为运营数据时,该方法包括:

步骤B1、将待调整数据表中的非运营数据变更为运营数据。

想要将数据表的非运营数据A(运营标识位为0,序号为m)变更为序号为n的运营数据,具体操作过程是:将数据A的运营标识位从0修改为1,序号由m更改为指定的n,即可完成数据A从非运营数据变更为运营数据。

步骤B2、用静态全局变量Set集合记录待调整的数据表名。

步骤B3、读取静态全局变量Set集合中的记录的数据表;

步骤B4、判断静态全局变量集合Set是否为空。如果集合Set为空,则结束本次调整流程,若集合Set不为空,则转入步骤B5。

步骤B5、读取数据表中的数据,并按照设定方式在临时表中对数据进行重新调整;具体过程是:

读取静态全局变量Set集合中的记录的数据表;

读取数据表中运营标识位为0的非运营数据,并按照设定方式自动在临时表b中进行排序;

读取数据表中运营标识为1的运营数据并进行比较,按序号从小到大的顺序进行排序;

按排序好的顺序逐个将运营数据分别插入到临时表中指定序号的位置中,插入一个运营数据后数据序号自动加1;例如,本实施例中,将运营数据A插入到临时表中指定序号为n的位置,n+1位以后的数据序号自动加1;

步骤B6、清空数据表中的数据、复制临时表中的数据到数据表中,清空临时表中的数据。

重复步骤B3至步骤B6,直至静态全局变量Set集合中记录的数据表为空时结束本次调整流程。

参照图7。本发明第四实施例提供了一种大数据量下的数据资源的调整装置,该装置包括:数据库模块10、数据调整记录模块20、条件设置模块30和数据调整模块40,其中:

数据库模块10,用于存储后台资源数据表和临时表;该数据表具有用于标识数据属性的运营标识位;

数据调整记录模块20,用于利用运营标识位变更所述数据库模块10的数据表的数据属性;

条件设置模块30,用于设置定时任务。

数据调整模块40,用于根据条件设置模块30设置的定时任务触发数据库数据表数据的调整。

数据库模块10,用于存储后台资源数据表和临时表;所述数据表具有数据表名,数据包括运营数据和非运营数据;在数据表中具有运营标识位,用于标识数据属性,即用于标识所述数据表中某个数据是否为运营数据,分别用第一标识符来标识所述数据是非运营数据,第二标识符来标识所述数据是运营数据;所述临时表的格式与数据表的数据格式是一致的。具体来说,运营标识位为1表示数据为运营数据,运营标识位为0表示数据为非运营数据。

数据调整记录模块20,用于利用运营标识位变更所述数据库模块10的数据表的数据属性,即用于将数据库模块10待调整的数据表中的非运营数据变更为运营数据。在进行数据数据属性时,将需变更的数据的运营标识位由0修改为1,序号更改为指定的序号即可完成数据和序号的更改。例如,要将数据表a中的非运营数据A(运营标识位为0,序号为m)变更为序号为n的运营数据,则将数据A的运营标识位从0修改为1,序号由m更改为n,即可完成数据A从非运营数据变更为运营数据。

进一步地,当同一个数据表中有多个非运营数据要变更为运营数据时,逐个将需要变更的非运营数据的运营标识位由0变更为1,序号变更为指定的序号,直至所有需要变更的数据完成变更为止。

进一步地,当有多个不同数据表中的一个或多个非运营数据要变更为运营数据时,可以参照以上单个数据表变更的方法来处理,即:先处理同一个数据表中的一个或多个非运营数据变更,即:逐个将需要变更的非运营数据的运营标识位由0变更为1,序号变更为指定的序号,直至该数据表中的所有需要变更的数据完成变更为止;然后再用同样方法处理另外一个数据表,直至所有需要变更的数据表处理完成为止。

数据调整模块40,用于根据条件设置模块30设置的定时任务触发数据库数据表数据的调整。

数据表数据的调整时机由定时任务触发(例如每隔30分钟进行数据库运营资源调整),触发后开始进行数据库数据调整。具体调整过程如下:

采用静态全局变量集合记录待调整的数据表名,静态全局变量集合一般是采用Set集合。当存在有多个不同待调整的数据表时,用Set集合一一记录所有待调整数据表名。

读取静态全局变量Set集合中的记录的待调整的数据表名;

从数据库模块10读取对应的数据表中运营标识位为0的非运营数据,并按照设定方式(例如默认方式)自动在临时表中进行排序;

从数据库模块10读取数据表中运营标识为1的运营数据,按其指定序号位置插入到临时表中指定序号的位置中;例如,将运营数据A插入到临时表b中指定序号为n的位置,n+1位以后的数据序号自动加1;

清空待调整的数据表中的数据,复制临时表中的数据到数据表中,清空临时表中的数据。

进一步地,当同一个数据表中有多个非运营数据要变更为运营数据时,例如,数据表a有A、B、C这几个非运营数据需要变更为运营数据,且都已经按以上的方法将运营标识位由0变更为1且都指定了序号位置。此时,在上述“从数据库模块10读取数据表中运营标识为1的运营数据,按其指定序号位置插入到临时表b中指定序号的位置中”的操作中,采用按序号从小到大的顺序来进行插入,即具体操作是:

从数据库模块10读取数据表a中所有运营标识为1的运营数据;

从数据库模块10读取数据表中所有运营标识为1的运营数据并进行比较,按序号从小到大的顺序进行排序;

按排序好的顺序逐个将运营数据分别插入到临时表中指定序号的位置中,插入一个运营数据后数据序号自动加1;

当数据表中所有的运营数据插入完成后,清空待调整的数据表中的数据、复制临时表b中的数据到数据表a中,清空临时表b中的数据。

进一步地,当有多个不同的数据表中的一个或多个非运营数据要变更为运营数据,操作方式如下:先按以上调整同一数据表的运营数据资源的方法处理完成一个数据表中的运营数据资源的调整,然后再用同样的方法处理其它待调整的数据表中的运营数据资源的调整,直至所有需要调整运营数据资源的数据表调整为止。具体操作过程是:

a、采用静态全局变量集合一一记录所有待调整数据表名,静态全局变量集合一般是采用Set集合。

b、读取静态全局变量Set集合中的记录的一个数据表;

c、从数据库模块10读取数据表中运营标识位为0的非运营数据,并按照设定方式自动在临时表中进行排序;

d、从数据库模块10读取数据表中运营标识为1的运营数据并进行比较,按序号从小到大的顺序进行排序;

e、按排序好的顺序逐个将运营数据分别插入到临时表中指定序号的位置中,插入一个运营数据后数据序号自动加1;

f、清空数据表中的数据、复制临时表中的数据到数据表中,清空临时表中的数据。

重复以上b到f操作过程,直至静态全局变量Set集合中记录的数据表为空时结束本次操作。

本发明提出的一种大数据量下的数据资源的调整方案,采用在后台资源数据库的数据表中添加一位运营标识字段来标识数据表中某个数据是否为运营数据,在程序中用静态全局变量Set集合记录要调整的数据表名,并设置一个定时任务来触发数据库数据表数据的调整,并在在进行具体调整操作时,采用临时表来进行运营数据调整的操作,等调整完成后清空数据表中的数据,再将临时表中的数据复制到数据表中,最后清空临时表中的数据的技术手段,能够及时的通知API运营更新的位置,将频繁的运营操作造成的数据量更新累计到一起,通过定时任务定时地进行数据更新排序。这样避免频繁的更新造成数据库性能下降或崩溃;同时,采用临时表来缓存需要更新的数据不会对原数据表产生影响。所以,采用本发明的技术方案,可以解决大数据量下调整资源运营数据,提高数据库处理能力,保证数据库的正常工作,运营结果的及时更新。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1