一种释放数据库空间的方法和系统技术方案

技术编号:15542347 阅读:90 留言:0更新日期:2017-06-05 11:20
本发明专利技术涉及一种释放数据库空间的方法和系统,其方法包括步骤:接收待存储数据,并记录待存储数据的接收时间;根据设置的创建规则和记录的接收时间确定是否创建新数据库;根据预设的时间格式设置已创建的数据库的标签;建立数据库列表,并根据标签中的时间信息将数据库进行排序;根据预定的数据库删除参数将排序在前的n个数据库进行删除。本发明专利技术通过接收数据的时间,自动判断是否创建新数据库,并能够根据设定的数据库删除参数自行删除在前多个数据库,保持现有数据库数量处于恒定状态,并解决了原存储空间无法释放的问题,从而确保系统长期正常运行,不受存储空间限制。

Method and system for releasing database space

The invention relates to a method and system for releasing spatial database, the method comprises the following steps: receiving data to be stored, and the receiving time recording data to be stored; according to the received time settings create rules and determine whether to create a new record database; according to the preset time formatting the created database tag database; the list will be sorted according to the database, and time information label; according to the predetermined parameters will be sorted by the database to delete deleted in N before a database. The present invention by receiving data of the time, automatically determine whether to create a new database, and be able to set the database to delete delete parameters before multiple databases, to maintain the existing database number in a constant state, and solves the problem of the original storage space can not be released, to ensure long-term normal operation, without limitation of storage space.

【技术实现步骤摘要】
一种释放数据库空间的方法和系统
本专利技术主要涉及数据库处理
,具体涉及一种释放数据库空间的方法和系统。
技术介绍
系统中对数据库增加及删除的设计方案直接关系到整个系统存储容量空间是否能正常的运行,例如,车辆卡口的应用系统,用于记录过车图片,采用mongoDB块文件存储机制,每天卡口过车总量约8-15万不等,每条过车记录产生的过车图片、车牌图片大小为0.3M,3个月的记录大约在1100万左右,合计图片大小约3.3T。出于磁盘空间的限制,只保存数据3个月,超过3个月的数据和图片需要清理,清除历史数据后,但mongoDB数据文件依然占据原来存储空间的大小,导致数据磁盘空间无法被释放,从而新数据无法继续存储,影响到系统正常使用。
技术实现思路
本专利技术所要解决的技术问题是提供一种释放数据库空间的方法和系统,能够根据设定的时间要求自行删除在前的数据库,解决了原存储空间无法释放的问题,从而确保系统长期正常运行。本专利技术解决上述技术问题的技术方案如下:一种释放数据库空间的方法,包括如下步骤:步骤S1:接收待存储数据,并记录待存储数据的接收时间;步骤S2:根据设置的创建规则和记录的接收时间确定是否创建新数据库,如果创建新数据库,则将待存储数据存入新数据库,否则存入原数据库;步骤S3:根据预设的时间格式设置已创建的数据库的标签;步骤S4:建立数据库列表,并根据标签中的时间信息将数据库进行排序;步骤S5:根据预定的数据库删除参数将排序在前的n个数据库进行删除,来释放数据库存储空间,其中n为正整数。本专利技术的有益效果是:通过接收数据的时间,自动判断是否创建新数据库,并能够根据设定的数据库删除参数自行删除在前多个数据库,保持现有数据库数量处于恒定状态,并解决了原存储空间无法释放的问题,从而确保应用系统长期正常运行,不受存储空间限制。在上述技术方案的基础上,本专利技术还可以做如下改进。进一步,所述步骤S2包括:步骤S201:设置创建规则,所述创建规则为属于同一接收数据周期内可创建x个数据库,其中x为预设的数据库创建数量,x为正整数;步骤S202:根据创建规则和本次待存储数据的接收时间来判断是否创建新数据库,如果本次接收时间与最近一次接收数据的时间属于所述设定的同一接收数据周期内,则不创建数据库,将待存储数据存入原数据库,否则创建新数据库,将待存储数据存入新数据库。采用上述进一步方案的有益效果是:能够根据需要来设定某个周期内是否创建新数据库以及创建数据库的数量。进一步,所述步骤S3中,所述标签的格式为“数据库名_年月日”。采用上述进一步方案的有益效果是:该标签的格式便于后期对标签排序和管理数据库。进一步,所述步骤S4中,根据标签中的时间信息将数据库进行升序排序。采用上述进一步方案的有益效果是:可将创建的日期较早的数据库排序在前面,便于后期对数据库进行删除。进一步,所述步骤S5包括:步骤S501:对数据库删除参数进行设定,所述数据库删除参数包括预定时间期限和预定剩余数据库数量;步骤S502:在排序后的数据库列表中筛选符合预定时间期限的数据库的标签;步骤S503:根据预定剩余数据库数量计算出删除数量n,并根据删除数量n从符合预定时间期限的数据库的标签中找到排序在前的n个数据库的标签,并将所述标签对应的数据库进行删除,来释放数据库存储空间。采用上述进一步方案的有益效果是:根据预定剩余数据库数量,将日期在前的不需要的数据库进行删除,从而保持现有数据库数量处于恒定状态,利于系统长期运行,不受存储空间限制。进一步,所述步骤S503中,根据预定剩余数据库数量计算出删除数量n的具体方法为:统计数据库列表中所有数据库的数量a,并根据公式a-b=n,得到需删除数据库的删除数量n,其中,b表示预定剩余数据库数量。采用上述进一步方案的有益效果是:能够快速的计算出需删除数据库数量。本专利技术解决上述技术问题的另一技术方案如下:一种释放数据库空间的系统,包括:时间记录模块,用于接收待存储数据,并记录待存储数据的接收时间;数据库创建模块,用于根据设置的创建规则和记录的接收时间确定是否创建新数据库,如果创建新数据库,则将待存储数据存入新数据库,否则存入原数据库;标签设置模块,用于根据预设的时间格式设置已创建的数据库的标签;排序模块,用于建立数据库列表,并根据标签中的时间信息将数据库进行排序;数据库删除模块,用于根据预定的数据库删除参数将排序在前的n个数据库进行删除,来释放数据库存储空间,其中n为正整数。在上述技术方案的基础上,本专利技术还可以做如下改进。进一步,所述数据库创建模块包括:规则创建单元,用于设置创建规则,所述创建规则为属于同一接收数据周期内可创建x个数据库,其中x为预设的数据库创建数量,x为正整数;数据库创建单元,用于根据创建规则和本次待存储数据的接收时间来判断是否创建新数据库,如果本次接收时间与最近一次接收数据的时间属于所述设定的同一接收数据周期内,则不创建数据库,将待存储数据存入原数据库,否则创建新数据库,将待存储数据存入新数据库。进一步,所述数据库删除模块包括:参数设定单元,用于对数据库删除参数进行设定,所述数据库删除参数包括预定时间期限和预定剩余数据库数量;筛选单元,用于在排序后的数据库列表中筛选符合预定时间期限的数据库的标签;数据库删除单元,用于根据预定剩余数据库数量计算出删除数量n,并根据删除数量n从符合预定时间期限的数据库的标签中找到排序在前的n个数据库的标签,并将所述标签对应的数据库进行删除,来释放数据库存储空间。进一步,所述数据库删除单元中,根据预定剩余数据库数量计算出删除数量n的具体方法为:统计数据库列表中所有数据库的数量a,并根据公式a-b=n,得到需删除数据库的删除数量n,其中,b表示预定剩余数据库数量。附图说明图1为本专利技术实施例提供的释放数据库空间的方法实施例的方法流程图;图2为本专利技术实施例提供的释放数据库空间的系统实施例的模块框图;图3为本专利技术一实施例中数据库创建模块的模块框图;图4为本专利技术一实施例中数据库删除模块的模块框图。具体实施方式以下结合附图对本专利技术的原理和特征进行描述,所举实例只用于解释本专利技术,并非用于限定本专利技术的范围。数据库增加与删除在应用系统中起着关键的作用,特别是一种车辆卡口的应用系统,其用于记录过车图片,每天存储上万条过车图片,目前采用mongoDB块文件存储机制。mongoDB块文件存储机制为:mongoDB数据库在数据存储时为避免产生过多磁盘碎片,采用块存储的机制,即预先在硬盘中申请一个文件块用于存储数据(默认2G大小,如启动参数中加入-smallfile则为500M左右),随着存储的数据量的递增原有的数据文件块使用完后再重新向磁盘申请空间,创建新的数据文件块,当MongoDB数据库对存储的数据进行删除操作时,相应的被删除的数据在文件块中会被MongoDB数据库服务做已删除的标记,而新的数据写入以后,必须完全跟数据文件块中原有被删除数据所占用的空间一样大小才能复用,否则,新插入的一条数据,跟原来被删除的任何一条历史数据所占空间不一样时,新插入数据会占据数据文件块中新的存储空间,由于新数据或者车辆图片大小,无法确保跟历史数据一样大,结果就导致新插入的数据和图片不断申请并占用新的文件块,当硬盘空间不足时,就本文档来自技高网...
一种释放数据库空间的方法和系统

【技术保护点】
一种释放数据库空间的方法,其特征在于,包括如下步骤:步骤S1:接收待存储数据,并记录待存储数据的接收时间;步骤S2:根据设置的创建规则和记录的接收时间确定是否创建新数据库,如果创建新数据库,则将待存储数据存入新数据库,否则存入原数据库;步骤S3:根据预设的时间格式设置已创建的数据库的标签;步骤S4:建立数据库列表,并根据标签中的时间信息将数据库进行排序;步骤S5:根据预定的数据库删除参数将排序在前的n个数据库进行删除,来释放数据库存储空间,其中n为正整数。

【技术特征摘要】
1.一种释放数据库空间的方法,其特征在于,包括如下步骤:步骤S1:接收待存储数据,并记录待存储数据的接收时间;步骤S2:根据设置的创建规则和记录的接收时间确定是否创建新数据库,如果创建新数据库,则将待存储数据存入新数据库,否则存入原数据库;步骤S3:根据预设的时间格式设置已创建的数据库的标签;步骤S4:建立数据库列表,并根据标签中的时间信息将数据库进行排序;步骤S5:根据预定的数据库删除参数将排序在前的n个数据库进行删除,来释放数据库存储空间,其中n为正整数。2.根据权利要求1所述的释放数据库空间的方法,其特征在于,所述步骤S2包括:步骤S201:设置创建规则,所述创建规则为属于同一接收数据周期内可创建x个数据库,其中x为预设的数据库创建数量,x为正整数;步骤S202:根据创建规则和本次待存储数据的接收时间来判断是否创建新数据库,如果本次接收时间与最近一次接收数据的时间属于所述设定的同一接收数据周期内,则不创建数据库,将待存储数据存入原数据库,否则创建新数据库,将待存储数据存入新数据库。3.根据权利要求1所述的释放数据库空间的方法,其特征在于,所述步骤S3中,所述标签的格式为“数据库名_年月日”。4.根据权利要求1所述的释放数据库空间的方法,其特征在于,所述步骤S4中,根据标签中的时间信息将数据库进行升序排序。5.根据权利要求1-4任一项所述的释放数据库空间的方法,其特征在于,所述步骤S5包括:步骤S501:对数据库删除参数进行设定,所述数据库删除参数包括预定时间期限和预定剩余数据库数量;步骤S502:在排序后的数据库列表中筛选符合预定时间期限的数据库的标签;步骤S503:根据预定剩余数据库数量计算出删除数量n,并根据删除数量n从符合预定时间期限的数据库的标签中找到排序在前的n个数据库的标签,并将所述标签对应的数据库进行删除,来释放数据库存储空间。6.根据权利要求5所述的释放数据库空间的方法,其特征在于,所述步骤S503中,根据预定剩余数据库数量计算出删除数量n的具体方法为:统计数据库列表中所有数据库的数量a,...

【专利技术属性】
技术研发人员:蔡晓东周夏鹏
申请(专利权)人:桂林远望智能通信科技有限公司
类型:发明
国别省市:广西,45

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1