一种电子评标系统中的数据存储方法和装置转让专利

申请号 : CN201510690286.5

文献号 : CN105302896B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 徐健

申请人 : 江苏国泰新点软件有限公司

摘要 :

本发明公开了一种电子评标系统中的数据存储方法和装置。方法包括:接收上传的投标数据,并保存到主数据库中;判断主数据库中的数据量是否达到预设值;当达到预设值时,创建历史数据库;将主数据库中的部分数据迁移到历史数据库中。该技术方案有效解决了当主数据库中存储数据量过多时,数据的操作效率逐步降低,甚至在进行复杂的数据处理过程中出现卡死现象的问题,具有既保证了投标数据的完整性,又大大提升了电子评标系统效率的有益效果,为评委进行电子评标提供了便利。

权利要求 :

1.一种电子评标系统中的数据存储方法,其特征在于,该方法包括:接收上传的投标数据,并保存到主数据库中;

判断主数据库中的数据量是否达到预设值;

当达到预设值时,创建历史数据库;

将主数据库中的部分数据迁移到历史数据库中;

该方法进一步包括:

在主数据库中的部分数据迁移到历史数据库后,对应修改该部分数据在查询表中的存储信息,并得到与该部分数据对应的链接字符串;

在执行查询命令时,如果查询的数据存储在所述历史数据库中,根据所述链接字符串修改查询命令。

2.如权利要求1所述的方法,其特征在于,所述创建历史数据库包括:在磁盘中新建数据库作为历史数据库;

将预设的表结构导入到所述历史数据库中。

3.如权利要求1所述的方法,其特征在于,所述将主数据库中的部分数据迁移到历史数据库中包括:根据配置文件中的迁移计划,将主数据库中的部分数据迁移到历史数据库中;

所述配置文件中存储有所述迁移计划的名称、执行时间和执行命令。

4.如权利要求1或3所述的方法,其特征在于,所述将主数据库中的部分数据迁移到历史数据库中包括:判断是否已存在可迁移的历史数据库;

如果不存在,则结束本次数据迁移操作;

如果存在,则在主数据库中查询属性为评标结束的投标数据,并得到所述投标数据的名称标识符GUID;

获取主数据库中所有包含该GUID的数据表,将所述数据表中的所有数据复制到所述历史数据库中,并在复制完成后删除主数据库中对应的数据。

5.一种电子评标系统中的数据存储装置,其特征在于,该装置包括:接收单元,用于接收上传的投标数据,并保存到主数据库中;

历史数据库创建单元,用于判断主数据库中的数据量是否达到预设值;当达到预设值时,创建历史数据库;

数据迁移单元,用于将主数据库中的部分数据迁移到历史数据库中;

该装置进一步包括:

查询单元,用于在主数据库中的部分数据迁移到历史数据库后,对应修改该部分数据在查询表中的存储信息,并得到与该部分数据对应的链接字符串;在执行查询命令时,如果查询的数据存储在所述历史数据库中,根据所述链接字符串修改查询命令。

6.如权利要求5所述的装置,其特征在于,所述历史数据库创建单元,用于在磁盘中新建数据库作为历史数据库;将预设的表结构导入到所述历史数据库中。

7.如权利要求5所述的装置,其特征在于,所述数据迁移单元,用于根据配置文件中的迁移计划,将主数据库中的部分数据迁移到历史数据库中;所述配置文件中存储有所述迁移计划的名称、执行时间和执行命令。

8.如权利要求5或7所述的装置,其特征在于,所述数据迁移单元,用于判断是否已存在可迁移的历史数据库;如果不存在,则结束本次数据迁移操作;如果存在,则在主数据库中查询属性为评标结束的投标数据,并得到所述投标数据的名称标识符GUID;获取主数据库中所有包含该GUID的数据表,将所述数据表中的所有数据复制到所述历史数据库中,并在复制完成后删除主数据库中对应的数据。

说明书 :

一种电子评标系统中的数据存储方法和装置

技术领域

[0001] 本发明涉及电子招投标领域,特别涉及一种电子评标系统中的数据存储方法和装置。

背景技术

[0002] 在电子招投标领域中,电子评标系统随着招投标项目的增多,接收到的电子投标文件也越来越多,并且在评标过程中,随着电子评标系统进行开标评标操作,评标过程产生的数据会导致数据库中存储的数据膨胀的非常厉害,一旦数据库中的数据量达到一定规模(约100G),会导致对数据库内数据的操作效率越来越低,在进行复杂的数据处理过程中甚至会出现卡死现象。
[0003] 现有技术中,解决上述问题的方法通常采用优化电子评标系统的数据库的分区表结构、更换性能更好的硬件进行实现,然而这些方法的效果不明显,且成本较高,而效率对电子评标系统来说是非常重要的。比如一个相同的电子投标文件导入10分钟和导入1分钟的差别,评委正常评标操作2小时跟5小时的差别,这些差别不仅仅体现在时间上,还对系统的优势性定义有着重要影响。

发明内容

[0004] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的电子评标系统中的数据存储方法和装置。
[0005] 依据本发明的一个方面,提供了一种电子评标系统中的数据存储方法,包括:接收上传的投标数据,并保存到主数据库中;判断主数据库中的数据量是否达到预设值;当达到预设值时,创建历史数据库;将主数据库中的部分数据迁移到历史数据库中。
[0006] 可选地,所述创建历史数据库包括:在磁盘中新建数据库作为历史数据库;将预设的表结构导入到所述历史数据库中。
[0007] 可选地,所述将主数据库中的部分数据迁移到历史数据库中包括:根据配置文件中的迁移计划,将主数据库中的部分数据迁移到历史数据库中;所述配置文件中存储有所述迁移计划的名称、执行时间和执行命令。
[0008] 可选地,所述将主数据库中的部分数据迁移到历史数据库中包括:判断是否已存在可迁移的历史数据库;如果不存在,则结束本次数据迁移操作;如果存在,则在主数据库中查询属性为评标结束的投标数据,并得到所述投标数据的名称标识符GUID;获取主数据库中所有包含该GUID的数据表,将所述数据表中的所有数据复制到所述历史数据库中,并在复制完成后删除主数据库中对应的数据。
[0009] 可选地,该方法进一步包括:在主数据库中的部分数据迁移到历史数据库后,对应修改该部分数据在查询表中的存储信息,并得到与该部分数据对应的链接字符串;在执行查询命令时,如果查询的数据存储在所述历史数据库中,根据所述链接字符串修改查询命令。
[0010] 依据本发明的另一方面,提供了一种电子评标系统中的数据存储装置,包括:接收单元,用于接收上传的投标数据,并保存到主数据库中;历史数据库创建单元,用于判断主数据库中的数据量是否达到预设值;当达到预设值时,创建历史数据库;数据迁移单元,用于将主数据库中的部分数据迁移到历史数据库中。
[0011] 可选地,所述历史数据库创建单元,用于在磁盘中新建数据库作为历史数据库;将预设的表结构导入到所述历史数据库中。
[0012] 可选地,所述数据迁移单元,用于根据配置文件中的迁移计划,将主数据库中的部分数据迁移到历史数据库中;所述配置文件中存储有所述迁移计划的名称、执行时间和执行命令。
[0013] 可选地,所述数据迁移单元,用于判断是否已存在可迁移的历史数据库;如果不存在,则结束本次数据迁移操作;如果存在,则在主数据库中查询属性为评标结束的投标数据,并得到所述投标数据的名称标识符GUID;获取主数据库中所有包含该GUID的数据表,将所述数据表中的所有数据复制到所述历史数据库中,,并在复制完成后删除主数据库中对应的数据。
[0014] 可选地,该装置进一步包括:查询单元,用于在主数据库中的部分数据迁移到历史数据库后,对应修改该部分数据在查询表中的存储信息,并得到与该部分数据对应的链接字符串;在执行查询命令时,如果查询的数据存储在所述历史数据库中,根据所述链接字符串修改查询命令。
[0015] 由上述可知,本发明的技术方案,将接收到的上传的投标数据保存到主数据库中,并判断主数据库中的数据量是否达到预设值,当达到预设值时,说明继续向主数据库中存储数据会降低主数据库的性能,因此创建历史数据库,将主数据库中的部分数据迁移到历史数据库中。该技术方案有效解决了当主数据库中存储数据量过多时,数据的操作效率逐步降低,甚至在进行复杂的数据处理过程中出现卡死现象的问题,具有既保证了投标数据的完整性,又大大提升了电子评标系统效率的有益效果,为评委进行电子评标提供了便利。
[0016] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

[0017] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0018] 图1示出了根据本发明一个实施例的一种电子评标系统中的数据存储方法的流程图;
[0019] 图2示出了根据本发明的一个具体实施例的创建历史数据库的界面示意图;
[0020] 图3-a、图3-b、图3-c和图3-d分别示出了根据本发明的一个具体实施例的创建配置文件进行数据迁移的界面示意图;
[0021] 图4示出了根据本发明一个实施例的又一种电子评标系统中的数据存储方法的流程图;
[0022] 图5示出了根据本发明一个实施例的一种电子评标系统中的数据存储装置的结构示意图。

具体实施方式

[0023] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0024] 图1示出了根据本发明一个实施例的一种电子评标系统中的数据存储方法的流程图,如图1所示,该方法包括:
[0025] 步骤S110,接收上传的投标数据,并保存到主数据库中。
[0026] 步骤S120,判断主数据库中的数据量是否达到预设值。例如,由于当数据库中的数据量达到约100G时,就会导致对数据库内数据的操作效率越来越低,那么可以将预设值设置为100G。
[0027] 步骤S130,当达到预设值时,创建历史数据库。
[0028] 步骤S140,将主数据库中的部分数据迁移到历史数据库中。
[0029] 可见,图1所示的方法,将接收到的上传的投标数据保存到主数据库中,并判断主数据库中的数据量是否达到预设值,当达到预设值时,说明继续向主数据库中存储数据会降低主数据库的性能,因此创建历史数据库,将主数据库中的部分数据迁移到历史数据库中。该技术方案有效解决了当主数据库中存储数据量过多时,数据的操作效率逐步降低,甚至在进行复杂的数据处理过程中出现卡死现象的问题,具有既保证了投标数据的完整性,又大大提升了电子评标系统效率的有益效果,为评委进行电子评标提供了便利。
[0030] 在本发明的一个实施例中,图1所示的方法中,创建历史数据库包括:在磁盘中新建数据库作为历史数据库;将预设的表结构导入到历史数据库中。例如,图2示出了根据本发明的一个具体实施例的创建历史数据库的界面示意图。如图2所示,在创建历史数据库的过程中,不仅要执行常规操作如设置数据库名称、数据库服务器地址,建立用户名、密码等,还需要设置数据库具体存储位置,以及向该数据库中导入表结构。表结构就是定义一个表的字段、类型、主键、外键、索引等基本的属性,因为新建数据库不包含表结构,不能直接导入主数据库的数据,因此将预设的表结构导入到新建数据库中使其可以直接导入主数据库的数据,从而作为历史数据库进行使用。
[0031] 在本发明的一个实施例中,图1所示的方法中,将主数据库中的部分数据迁移到历史数据库中包括:根据配置文件中的迁移计划,将主数据库中的部分数据迁移到历史数据库中;配置文件中存储有迁移计划的名称、执行时间和执行命令。例如,图3-a、图3-b、图3-c和图3-d分别示出了根据本发明的一个具体实施例的创建配置文件进行数据迁移的界面示意图。如图所示,可以在常用的数据库管理软件如SQL Server中建立维护计划(图3-a),定义该维护计划的名称(图3-b),设置该维护计划的执行时间(图3-c),以及该维护计划所要执行的命令(图3-d)。在具体实施中,可以根据需要设定在空闲时定期或不定期进行自动维护,也可以将其设置为手动维护。
[0032] 图4示出了根据本发明一个实施例的又一种电子评标系统中的数据存储方法的流程图。如图4所示,上述方法中,将主数据库中的部分数据迁移到历史数据库中包括:
[0033] 步骤S410,判断是否已存在可迁移的历史数据库。由于一个新建立的历史数据库的容量是很大的,因此并不是在每次执行数据迁移操作时都要建立新的历史数据库。
[0034] 步骤S420,如果不存在,则结束本次数据迁移操作。例如,创建历史数据库失败,或已有的历史数据库拒绝访问等。在具体实施过程中,可以对历史数据库进行存储数据量的限制,当已有的历史数据库存储的数据达到预设值时拒绝新的数据迁移到该历史数据库中。
[0035] 步骤S430,如果存在,则在主数据库中查询属性为评标结束的投标数据,并得到投标数据的名称标识符GUID。
[0036] 在电子评标系统中,即使是已经评标结束的投标数据依然有其价值,需要加以留存,因此不能将其删除。而评标未结束的投标数据还需要在接下来的评标过程中进行反复调用,需要将其留存在主数据库中。因此,可以进行数据迁移的数据最好为评标结束的投标数据。然而,对于一个标段,关于该标段产生的投标数据需要对其进行统一管理,因此,需要获取这些投标数据的名称标识符GUID,即该投标数据属于哪个标段,从而可以继续执行下一步骤。
[0037] 步骤S440,获取主数据库中所有包含该GUID的数据表,将数据表中的所有数据复制到历史数据库中,并在复制完成后删除主数据库中对应的数据。这样,就保证了可以将一个已经评标结束的标段的所有投标数据全部迁移到历史数据库中。
[0038] 在具体实施中,上述步骤可能会产生许多过程数据,这些数据在数据迁移结束后需要进行删除。
[0039] 在本发明的一个实施例中,上述方法进一步包括:在主数据库中的部分数据迁移到历史数据库后,对应修改该部分数据在查询表中的存储信息,并得到与该部分数据对应的链接字符串;在执行查询命令时,如果查询的数据存储在历史数据库中,根据链接字符串修改查询命令。
[0040] 具体地,可以在查询表中更改投标数据存储的数据库的字段名,即从主数据库修改为数据迁移后的历史数据库。因为在进行查询操作时,无法从主数据库查询到这些已迁移到历史数据库的数据,为解决该问题,本实施例采用了修改该部分数据在查询表中的存储信息并得到与该部分数据对应的链接字符串的方式,该链接字符串可以重新定位该部分数据的存储路径,从而在执行查询命令时,如果查询的数据存储在历史数据库中,先根据链接字符串修改查询命令再进行查询,以免出现反馈数据不存在的情况。
[0041] 图5示出了根据本发明一个实施例的一种电子评标系统中的数据存储装置的结构示意图,如图5所示,电子评标系统中的数据存储装置500包括:
[0042] 接收单元510,用于接收上传的投标数据,并保存到主数据库中。
[0043] 历史数据库创建单元520,用于判断主数据库中的数据量是否达到预设值;当达到预设值时,创建历史数据库。
[0044] 数据迁移单元530,用于将主数据库中的部分数据迁移到历史数据库中。
[0045] 可见,图5所示的装置,将接收到的上传的投标数据保存到主数据库中,并判断主数据库中的数据量是否达到预设值,当达到预设值时,说明继续向主数据库中存储数据会降低主数据库的性能,因此创建历史数据库,将主数据库中的部分数据迁移到历史数据库中。该技术方案有效解决了当主数据库中存储数据量过多时,数据的操作效率逐步降低,甚至在进行复杂的数据处理过程中出现卡死现象的问题,具有既保证了投标数据的完整性,又大大提升了电子评标系统效率的有益效果,为评委进行电子评标提供了便利。
[0046] 在本发明的一个实施例中,图5所示的装置中,历史数据库创建单元520,用于在磁盘中新建数据库作为历史数据库;将预设的表结构导入到历史数据库中。
[0047] 在本发明的一个实施例中,图5所示的装置中,数据迁移单元530,用于根据配置文件中的迁移计划,将主数据库中的部分数据迁移到历史数据库中;配置文件中存储有迁移计划的名称、执行时间和执行命令。
[0048] 在本发明的一个实施例中,上述装置中,数据迁移单元530,用于判断是否已存在可迁移的历史数据库;如果不存在,则结束本次数据迁移操作;如果存在,则在主数据库中查询属性为评标结束的标段数据,确定所有需要迁移的标段名称;根据标段名称,得到标段的名称标识符GUID,将主数据库中所有包含该GUID的数据表中的所有数据复制到历史数据库中,并在复制完成后删除主数据库中对应的数据。
[0049] 在本发明的一个实施例中,上述装置进一步包括:查询单元,用于在主数据库中的部分数据迁移到历史数据库后,对应修改该部分数据在查询表中的存储信息,并得到与该部分数据对应的链接字符串;在执行查询命令时,如果查询的数据存储在历史数据库中,根据链接字符串修改查询命令。
[0050] 需要说明的是,上述各装置实施例的具体实施方式与前述各对应方法实施例的具体实施方式相同,在此不再赘述。
[0051] 综上所述,本发明技术方案提供的电子评标系统中的数据存储方法和装置,将接收到的上传的投标数据保存到主数据库中,并判断主数据库中的数据量是否达到预设值,当达到预设值时,说明继续向主数据库中存储数据会降低主数据库的性能,因此创建历史数据库,将主数据库中的部分数据迁移到历史数据库中。为解决数据迁移后,进行数据查询可能出现的问题,还为采用了修改该部分数据在查询表中的存储信息等方式以免出现反馈数据不存在的情况。该技术方案有效解决了当主数据库中存储数据量过多时,数据的操作效率逐步降低,甚至在进行复杂的数据处理过程中出现卡死现象的问题,具有既保证了投标数据的完整性,又大大提升了电子评标系统效率的有益效果,为评委进行电子评标提供了便利。并且,该技术方案不需针对不同标段的投标数据开发数据迁移程序,具有适配性,保证了主数据库运行效率的最大化。
[0052] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
[0053] 需要说明的是:
[0054] 在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0055] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0056] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0057] 本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0058] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0059] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的电子评标系统中的数据存储装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0060] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。