一种清理数据库的方法及装置制造方法

文档序号:6538657阅读:141来源:国知局
一种清理数据库的方法及装置制造方法
【专利摘要】本发明实施例提供一种清理数据库的方法,包括:读取各个数据库中的配置信息,确定需要清理的数据库;根据所述配置信息,链接到所述需要清理的数据库,并映射出需要清理的表;根据所述配置信息和所述需要清理的表生成结构化查询语言SQL命令;执行所述SQL命令,清理所述需要清理的表。本发明实施例还提供了相应的清理数据库的装置。使用本发明实施例公开的清理数据库的方法和装置能够提升无效数据的清理效率,保证较好的清理效果。
【专利说明】一种清理数据库的方法及装置

【技术领域】
[0001]本发明涉及计算机【技术领域】,尤其涉及一种清理数据库的方法及装置。

【背景技术】
[0002]随着互联网技术的发展,很多行业都已经进入了海量数据时代,当前涉及到大数据的技术大多集中在数据的挖掘和利用上。大数据的挖掘必然以存在大量的数据为前提,但数据量过大显然也会对挖掘和利用带来不小的困难。在当代信息爆炸的背景下,数据量急剧增加的同时也伴随着数据的快速更新,换言之,在掌握最新数据的同时,还必须及时的清理过时或失效的数据。否则,不仅会使数据量过于庞大导致数据挖掘的难度大幅增加,更重要的是有可能直接导致数据分析的错误。
[0003]目前在清理失效数据时,常用的做法是设置一个SQL (Structured QueryLanguage,结构化查询语言)命令来定时删除。但考虑到数据库多,数据量大的情况,使用这种方法的效率不会很高,而且很可能会出现漏删数据的情况:设置一个SQL命令定时删除失效数据,不支持对多个表同时操作的需求,就需要针对多个数据库/表分别设置SQL命令,部署起来相对麻烦,而且容易出错,在把针对一个数据库的SQL命令移植到另一个数据库上时,需要根据该数据库重新设置清理逻辑,因而就需要频繁修改代码,增加了工作量。


【发明内容】

[0004]本发明实施例提供一种清理数据库的方法及装置,用以解决现有技术中存在的清理无效数据效率低,工作量大的问题。
[0005]本发明的一个方面,提供一种清理数据库的方法,包括:
[0006]读取各个数据库中的配置信息,确定需要清理的数据库;
[0007]根据所述配置信息,链接到所述需要清理的数据库,并映射出需要清理的表;
[0008]根据所述配置信息和所述需要清理的表生成结构化查询语言SQL命令;
[0009]执行所述SQL命令,清理所述需要清理的表。
[0010]本发明的另一个方面,提供一种清理数据库的装置,包括:
[0011]确定单元,用于读取各个数据库中的配置信息,确定需要清理的数据库;
[0012]映射单元,用于根据所述配置信息,链接到所述确定单元确定的需要清理的数据库,并映射出需要清理的表;
[0013]SQL命令生成单元,根据所述配置信息和所述需要清理的表生成结构化查询语言SQL命令;
[0014]清理单元,用于执行所述SQL命令生成单元生成的所述SQL命令,清理所述需要清理的表。
[0015]使用本发明实施例公开的清理数据库的方法和装置,统一配置各个数据库中数据的失效条件或时间条件,在确定了要清理的表之后能够根据配置信息和待清理的表的结构自动生成清理无效数据的SQL命令,并自动执行清理操作,能够支持多表多库多种清理逻辑,不需要对每个表重新设置清理命令,从而大大提升了无效数据的清理效率,同时也可以保证较好的清理效果,不会出现漏删的情况。

【专利附图】

【附图说明】
[0016]图1所示是本发明实施例提供的清理数据库的方法示意图;
[0017]图2所示是本发明实施例提供的清理数据库的方法流程图;
[0018]图3所示是本发明实施例提供的一种清理数据库的装置的结构示意图;
[0019]图4所示是本发明实施例提供的另一种清理数据库的装置的结构示意图;
[0020]图5所示是本发明实施例提供的另一种清理数据库的装置的结构示意图。

【具体实施方式】
[0021 ] 在本发明实施例中,统一配置各个数据库中数据的失效条件或时间条件,在确定了要清理的表之后能够根据配置信息和待清理的表的结构自动生成清理无效数据的SQL命令,并自动执行清理操作。
[0022]以下详细说明本发明实施例提供的清理数据库的方法。
[0023]图1所示为本发明一个实施例提供的清理数据库的方法示意图,根据该图,详述各步骤如下:
[0024]步骤101、读取各个数据库中的配置信息,确定需要清理的数据库;
[0025]在本发明另一个实施例中,在本步骤读取各个数据库中的配置信息之前,还包括:设置各个数据库中的配置信息;
[0026]其中,所述配置信息为失效条件,满足失效条件的数据为失效数据;或者所述配置信息为时间条件,数据存储时间超过所述时间条件的数据为旧数据。
[0027]所述确定需要清理的数据库,包括:
[0028]根据所述各个数据库中配置的所述失效条件或者时间条件,查找是否存在失效数据或者旧数据;
[0029]将存在失效数据或者旧数据的数据库确定为需要清理的数据库。
[0030]步骤102、根据所述配置信息,链接到所述需要清理的数据库,并映射出需要清理的表;
[0031]其中,映射出需要清理的表,包括:
[0032]查找所述失效数据或者旧数据所在的表,将所述失效数据或者旧数据所在的表确定为需要清理的表。
[0033]步骤103、根据所述配置信息和所述需要清理的表生成结构化查询语言SQL命令;
[0034]其中,该步骤包括:
[0035]根据所述需要清理的表的结构,生成清理所述失效数据或者旧数据的SQL命令。
[0036]步骤104、执行所述SQL命令,清理所述需要清理的表。
[0037]其中,该步骤包括:
[0038]执行所述SQL命令,清理所述需要清理的表中的失效数据或者旧数据。
[0039]在本发明另一个实施例中,在所述读取各个数据库中的配置信息,确定需要清理的数据库之前,还包括:
[0040]设置定时器,在所述定时器中设定清理数据库的时间。
[0041]使用本发明实施例公开的清理数据库的方法,统一配置各个数据库中数据的失效条件或时间条件,在确定了要清理的表之后能够根据配置信息和待清理的表的结构自动生成清理无效数据的SQL命令,并自动执行清理操作,能够支持多表多库多种清理逻辑,不需要对每个表重新设置清理命令,从而大大提升了无效数据的清理效率,同时也可以保证较好的清理效果,不会出现漏删的情况。
[0042]图2为本发明一个实施例提供的清理数据库的方法流程图。根据该图,详述清理数据库的方法流程如下:
[0043]步骤201:设置各个数据库中的配置信息,读取数据库中配置的信息,来获取需要清理的数据库和表信息;
[0044]步骤202:设置定时器,根据定时器设置的时间定时执行清理数据库的任务;
[0045]假设根据配置零点执行清理数据库的任务,到零点时执行该任务,不满足时等待;
[0046]步骤203:根据步骤201中的配置信息,链接到需要清理的数据库;
[0047]步骤204:根据步骤201和203映射出每个数据库中需要清理的表信息;
[0048]步骤205:根据步骤201中的配置信息和步骤204中需要清理的表自动生产SQL命令;
[0049]步骤206:执行步骤205生成的SQL命令;
[0050]步骤207:根据步骤206返回的信息,如果成功则执行步骤210 ;
[0051]步骤208:根据步骤206返回的信息,如果失败,则执行步骤209 ;
[0052]步骤210:清理任务完成,等待第二天的零点执行步骤202。
[0053]使用本发明实施例公开的清理数据库的方法,统一配置各个数据库中数据的失效条件或时间条件,在确定了要清理的表之后能够根据配置信息和待清理的表的结构自动生成清理无效数据的SQL命令,并自动执行清理操作,能够支持多表多库多种清理逻辑,不需要对每个表重新设置清理命令,从而大大提升了无效数据的清理效率,同时也可以保证较好的清理效果,不会出现漏删的情况。
[0054]以下介绍一种清理数据库的装置,用以实施前述实施例中公开的清理数据库的方法。
[0055]图3所示为本发明一个实施例提供的一种清理数据库的装置的结构示意图。依据该图,详述该装置的结构如下:
[0056]确定单元301,用于读取各个数据库中的配置信息,确定需要清理的数据库;
[0057]其中,所述确定单元301确定需要清理的数据库,包括:
[0058]根据所述各个数据库中配置的所述失效条件或者时间条件,查找是否存在失效数据或者旧数据;
[0059]将存在失效数据或者旧数据的数据库确定为需要清理的数据库。
[0060]如图4所示,在本发明另一个实施例中,清理数据库的装置还包括设置单元305,用于设置各个数据库中的配置信息;
[0061]所述配置信息为失效条件,满足失效条件的数据为失效数据;或者所述配置信息为时间条件,数据存储时间超过所述时间条件的数据为旧数据。
[0062]映射单元302,用于根据所述配置信息,链接到所述确定单元301确定的需要清理的数据库,并映射出需要清理的表;
[0063]其中,所述映射单元302映射出需要清理的表,包括:
[0064]查找所述失效数据或者旧数据所在的表,将所述失效数据或者旧数据所在的表确定为需要清理的表。
[0065]SQL命令生成单元303,根据所述配置信息和所述需要清理的表生成结构化查询语目SQL命令;
[0066]其中,所述SQL命令生成单元303根据所述配置信息和所述需要清理的表生成SQL命令,包括:
[0067]根据所述需要清理的表的结构,生成清理所述失效数据或者旧数据的SQL命令。
[0068]清理单元304,用于执行所述SQL命令生成单元303生成的所述SQL命令,清理所述需要清理的表。
[0069]其中,所述清理单元304执行所述SQL命令,清理所述需要清理的表,包括:
[0070]执行所述SQL命令,清理所述需要清理的表中的失效数据或者旧数据。
[0071]图5为本发明另一个实施例提供的一种清理数据库的装置,在此实施例中,该装置还包括了定时单元306,用于设置定时器,在所述定时器中设定清理数据库的时间。
[0072]使用本发明实施例公开的清理数据库的装置,统一配置各个数据库中数据的失效条件或时间条件,在确定了要清理的表之后能够根据配置信息和待清理的表的结构自动生成清理无效数据的SQL命令,并自动执行清理操作,能够支持多表多库多种清理逻辑,不需要对每个表重新设置清理命令,从而大大提升了无效数据的清理效率,同时也可以保证较好的清理效果,不会出现漏删的情况。
[0073]本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟、光盘、网络节点、调度器等各种可以存储程序代码的介质。
[0074]最后应说明的是:以上仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种清理数据库的方法,其特征在于,包括: 读取各个数据库中的配置信息,确定需要清理的数据库; 根据所述配置信息,链接到所述需要清理的数据库,并映射出需要清理的表; 根据所述配置信息和所述需要清理的表生成结构化查询语言SQL命令; 执行所述SQL命令,清理所述需要清理的表。
2.根据权利要求1所述的方法,其特征在于,在所述读取各个数据库中的配置信息之前,还包括:设置各个数据库中的配置信息; 所述配置信息为失效条件,满足失效条件的数据为失效数据;或者所述配置信息为时间条件,数据存储时间超过所述时间条件的数据为旧数据。
3.根据权利要求2所述的方法,其特征在于,所述确定需要清理的数据库,包括: 根据所述各个数据库中配置的所述失效条件或者时间条件,查找是否存在失效数据或者旧数据; 将存在失效数据或者旧数据的数据库确定为需要清理的数据库。
4.根据权利要求3所述的方法,其特征在于,所述映射出需要清理的表,包括: 查找所述失效数据或者旧数据所在的表,将所述失效数据或者旧数据所在的表确定为需要清理的表。
5.根据权利要求4所述的方法,其特征在于,所述根据所述配置信息和所述需要清理的表生成SQL命令,包括: 根据所述需要清理的表的结构,生成清理所述失效数据或者旧数据的SQL命令。
6.根据权利要求5所述的方法,其特征在于,所述执行所述SQL命令,清理所述需要清理的表,包括: 执行所述SQL命令,清理所述需要清理的表中的失效数据或者旧数据。
7.根据权利要求1-6中任一项所述的方法,其特征在于,在所述读取各个数据库中的配置信息,确定需要清理的数据库之前,还包括: 设置定时器,在所述定时器中设定清理数据库的时间。
8.—种清理数据库的装置,其特征在于,包括: 确定单元,用于读取各个数据库中的配置信息,确定需要清理的数据库; 映射单元,用于根据所述配置信息,链接到所述确定单元确定的需要清理的数据库,并映射出需要清理的表; SQL命令生成单元,根据所述配置信息和所述需要清理的表生成结构化查询语言SQL命令; 清理单元,用于执行所述SQL命令生成单元生成的所述SQL命令,清理所述需要清理的表。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括: 设置单元,用于设置各个数据库中的配置信息; 所述配置信息为失效条件,满足失效条件的数据为失效数据;或者所述配置信息为时间条件,数据存储时间超过所述时间条件的数据为旧数据。
10.根据权利要求9所述的装置,其特征在于,所述确定单元确定需要清理的数据库,包括: 根据所述各个数据库中配置的所述失效条件或者时间条件,查找是否存在失效数据或者旧数据; 将存在失效数据或者旧数据的数据库确定为需要清理的数据库。
11.根据权利要求10所述的装置,其特征在于,所述映射单元映射出需要清理的表,包括: 查找所述失效数据或者旧数据所在的表,将所述失效数据或者旧数据所在的表确定为需要清理的表。
12.根据权利要求11所述的装置,其特征在于,所述SQL命令生成单元根据所述配置信息和所述需要清理的表生成SQL命令,包括: 根据所述需要清理的表的结构,生成清理所述失效数据或者旧数据的SQL命令。
13.根据权利要求12所述的装置,其特征在于,所述清理单元执行所述SQL命令,清理所述需要清理的表,包括: 执行所述SQL命令,清理所述需要清理的表中的失效数据或者旧数据。
14.根据权利要求8-13中任一项所述的装置,其特征在于,所述装置还包括: 定时单元,用于设置定时器,在所述定时器中设定清理数据库的时间。
【文档编号】G06F17/30GK104182436SQ201410063156
【公开日】2014年12月3日 申请日期:2014年2月25日 优先权日:2014年2月25日
【发明者】沈镇, 张芳芳, 吴承丞, 任野飞, 杨贺, 郑凤娟 申请人:无锡天脉聚源传媒科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1