CN103714137B - 一种数据文件的删除方法和系统 - Google Patents
一种数据文件的删除方法和系统 Download PDFInfo
- Publication number
- CN103714137B CN103714137B CN201310706111.XA CN201310706111A CN103714137B CN 103714137 B CN103714137 B CN 103714137B CN 201310706111 A CN201310706111 A CN 201310706111A CN 103714137 B CN103714137 B CN 103714137B
- Authority
- CN
- China
- Prior art keywords
- data file
- time
- deletion
- erasing time
- deletion condition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/162—Delete operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据文件的删除方法和系统,以解决目前的方法中在可删除的数据文件的数量过大时,无法保证删除操作的正常进行、删除效率较低的问题。其中,方法包括:确定删除条件,查找满足所述删除条件的数据文件;判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值;若是,则在增加删除条件后,返回所述查找满足所述删除条件的数据文件的步骤;若否,则删除所述数据文件。本发明可以避免在可删除的数据文件的数量过大时,无法保证删除操作的正常进行的问题,并且可以提高删除效率。
Description
技术领域
本发明涉及文件处理技术领域,特别是涉及一种数据文件的删除方法和系统。
背景技术
操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,其它软件都需要在操作系统的支持下才能运行。操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。操作系统的功能包括管理计算机系统的硬件、软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持等,使计算机系统的资源最大限度地发挥作用,其提供了各种形式的用户界面,使用户有一个良好的工作环境,为其它软件的开发提供必要的服务和相应的接口。
包括大量应用软件的应用系统需要在操作系统的支持下运行,在运行过程中,会产生大量的数据文件,这些数据文件被上传到操作系统的文件服务器中,后续其它的应用软件或系统可以根据需求对文件服务器中的数据文件进行解析。但是当数据文件的上传量和上传频率达到一定数量级后将会造成文件服务器的目录下保存大量的数据文件,从而占用大量的存储资源。
为了节省存储资源,可以对保存的数据文件进行删除。目前的技术中,提供了以下两种对数据文件进行删除的方法:
1、应用系统的程序(例如基于JAVA语言实现的程序)本身提供了相应的API(Application Programming Interface,应用程序编程接口),通过API可以调用列举方法对数据文件进行列举,并调用删除方法对数据文件进行删除。首先,可以利用“list()”方法列举可删除的数据文件(例如根据数据文件的名称列举),并利用“delete()”方法将列举的数据文件逐个删除。
但是,如果可删除的数据文件的数量在十万甚至百万级,则上述方法的删除效率较低;并且在可删除的数据文件的数量很大的情况下可能会出现程序被阻塞在“list()”方法而无法正常返回,或是“list()”的返回对象数量太多而引发内存溢出等问题。
2、操作系统(例如Solaris操作系统)本身可以提供一些操作命令以实现数据文件的删除。例如,可以在删除命令(例如“rm-f”命令)中指定可删除的数据文件的一些定制化特征(例如文件格式),利用“rm-f”命令获取到可删除的数据文件并进行删除。
但是,当可删除的数据文件的数量超过“rm-f”命令所能够支持的最大变量长度时,删除操作将无法正常执行,并提示变量长度过长的错误信息,导致删除失败。
总之,目前的方法中在可删除的数据文件的数量过大时,无法保证删除操作的正常进行、删除效率较低。
发明内容
本发明提供了一种数据文件的删除方法和系统,以解决目前的方法中在可删除的数据文件的数量过大时,无法保证删除操作的正常进行、删除效率较低的问题。
为了解决上述问题,本发明公开了一种数据文件的删除方法,其特征在于,包括:
确定删除条件,查找满足所述删除条件的数据文件;
判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值;
若是,则在增加删除条件后,返回所述查找满足所述删除条件的数据文件的步骤;
若否,则删除所述数据文件。
优选地,所述删除条件包括删除时间,所述删除时间对应的时间精度根据所述删除时间的格式确定,所述数据文件的名称包括所述数据文件的上传时间。
优选地,所述确定删除条件的步骤包括:
根据预先设置的开始删除时间对应的时间精度和结束删除时间对应的时间精度确定删除时间精度;
将位于所述开始删除时间和结束删除时间之内、对应时间精度为所述删除时间精度的删除时间确定为删除条件。
优选地,所述增加删除条件的步骤包括:
将所述删除时间对应的时间精度降低一个级别;
将位于所述删除时间之内、对应时间精度为降低级别后的时间精度的删除时间增加为删除条件。
优选地,所述查找满足所述删除条件的数据文件的步骤包括:
调用查找命令,所述查找命令包括所述删除时间;
通过所述查找命令查找上传时间中包括所述删除时间的数据文件;所述查找到的数据文件为满足所述删除条件的数据文件。
优选地,所述删除所述数据文件的步骤包括:
调用删除命令,所述删除命令包括所述删除时间;
通过所述删除命令删除上传时间中包括所述删除时间的数据文件。
优选地,所述删除阈值等于所述删除命令支持的最大变量长度。
优选地,在所述删除所述数据文件的步骤之后,还包括:
判断是否还存在未查找的删除条件;
若存在,则返回所述查找满足所述删除条件的数据文件的步骤。
根据本发明的另一方面,还公开了一种数据文件的删除系统,其特征在于,包括:
确定模块,用于确定删除条件;
查找模块,用于查找满足所述删除条件的数据文件;
第一判断模块,用于判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值;
增加模块,用于在所述第一判断模块的判断结果为是时,增加删除条件;以及在增加删除条件之后调用所述查找模块;
删除模块,用于在所述第一判断模块的判断结果为否时,删除所述数据文件。
优选地,所述删除条件包括删除时间,所述删除时间对应的时间精度根据所述删除时间的格式确定,所述数据文件的名称包括所述数据文件的上传时间。
优选地,所述确定模块包括:
精度确定子模块,用于根据预先设置的开始删除时间对应的时间精度和结束删除时间对应的时间精度确定删除时间精度;
条件确定子模块,用于将位于所述开始删除时间和结束删除时间之内、对应时间精度为所述删除时间精度的删除时间确定为删除条件。
优选地,所述增加模块包括:
精度降低子模块,用于将所述删除时间对应的时间精度降低一个级别;
条件增加子模块,用于将位于所述删除时间之内、对应时间精度为降低级别后的时间精度的删除时间增加为删除条件。
优选地,所述查找模块包括:
查找调用子模块,用于调用查找命令,所述查找命令包括所述删除时间;
文件查找子模块,用于通过所述查找命令查找上传时间中包括所述删除时间的数据文件;所述查找到的数据文件为满足所述删除条件的数据文件。
优选地,所述删除模块包括:
删除调用子模块,用于调用删除命令,所述删除命令包括所述删除时间;
文件删除子模块,用于通过所述删除命令删除上传时间中包括所述删除时间的数据文件。
优选地,所述系统还包括:
第二判断模块,用于在所述删除模块删除所述数据文件之后,判断是否还存在未查找的删除条件;以及在存在时,调用所述查找模块。
与现有技术相比,本发明包括以下优点:
本发明首先可以确定删除条件,并查找满足所述删除条件的数据文件;然后判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值;若是,则在增加所述删除条件后,返回所述查找满足所述删除条件的数据文件的步骤;若否,则删除所述数据文件。本发明中通过对可删除的数据文件的数量进行判断,在数量大于或等于预设的删除阈值时,并不执行删除数据文件的操作,而是增加删除条件,然后继续查找满足所述删除条件的数据文件并进行数量的判断,直至可删除的数据文件的数量小于删除阈值时才进行删除操作。因此可以避免在可删除的数据文件的数量过大时,无法保证删除操作的正常进行的问题,并且可以提高删除效率。
附图说明
图1是本发明实施例一的一种数据文件的删除方法的流程图;
图2是本发明实施例二的一种数据文件的删除方法的流程图;
图3是本发明实施例三的一种数据文件的删除系统的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
目前对于数据文件的删除方法主要包括:(1)通过应用系统程序本身提供的API可以调用列举方法对数据文件进行列举,并调用删除方法对数据文件进行删除;(2)通过操作系统本身提供的操作命令(例如删除命令)实现数据文件的删除。但是,这些方法在可删除的数据文件的数量过大时,存在无法保证删除操作的正常进行,删除效率较低的问题。
针对上述问题,本发明提供了一种数据文件的删除方法和系统,下面,通过以下各个实施例进行详细介绍。
实施例一:
参照图1,示出了本发明实施例一的一种数据文件的删除方法的流程图,该方法具体可以包括以下步骤:
步骤101,确定删除条件。
本发明实施例中,首先可以根据需要删除的数据文件的特征确定删除条件,以根据该删除条件查找出需要删除的数据文件。例如,如果想要删除上传时间在某一时间周期内的数据文件,则可以将位于该时间周期内的上传时间作为删除条件。当然,所述上传条件还可以依据数据文件的其他特征确定,例如依据数据文件的名称、类型等特征确定,本发明实施例对此并不加以限制。
步骤102,查找满足所述删除条件的数据文件。
在确定删除条件之后,即可依据所述删除条件查找满足删除条件的数据文件包括哪些。
步骤103,判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值。
若是,则执行步骤104;若否,则执行步骤105。
本发明实施例主要是解决在可删除的数据文件(即满足所述删除条件的数据文件)的数量过大时,无法保证删除操作的正常进行,删除效率较低的问题。因此,本发明实施例中在查找到满足所述删除条件的数据文件之后,并不直接删除所述数据文件,而是可以先判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值,根据判断的不同结果执行不同的操作。
对于所述删除阈值,本领域技术人员根据实际经验进行设定即可,本发明实施例对具体的数值并不加以限制。
步骤104,增加删除条件,并返回步骤102。
如果在步骤103中判断出所述满足所述删除条件的数据文件的数量大于或等于预设的删除阈值,则可以说明此时数据文件的数量较大,如果直接删除可能会导致删除操作无法正常进行等问题。因此,本发明实施例提出,在该种情况下,可以增加删除条件,并且在增加删除条件后,返回步骤102继续查找满足所述删除条件的数据文件,并在查找之后继续执行步骤103的判断过程。
步骤105,删除所述数据文件。
如果在步骤103中判断出所述满足所述删除条件的数据文件的数量小于预设的删除阈值,则可以说明此时数据文件的数量较小,如果直接删除可能不会导致删除操作无法正常进行等问题。因此本发明实施例提出,在该种情况下,即可以直接删除所述数据文件。
本发明中通过对可删除的数据文件的数量进行判断,在数量大于或等于预设的删除阈值时,并不执行删除数据文件的操作,而是增加删除条件,然后继续查找满足所述删除条件的数据文件并进行数量的判断,直至可删除的数据文件的数量小于删除阈值时才进行删除操作。因此可以避免在可删除的数据文件的数量过大时,无法保证删除操作的正常进行的问题,并且可以提高删除效率。
实施例二:
目前的技术中均是单独采用应用系统程序本身提供的API方法,或者,操作系统本身提供的操作命令方法实现数据文件的删除,对于数据文件的数量较大时存在各种问题。本发明实施例提出了一种结合应用系统程序本身提供的API和操作系统本身提供的操作命令删除数据文件的方法,以实现数据文件的数量较大时的删除操作。
需要说明的是,本发明实施例中,以应用系统的程序为基于JAVA语言实现的程序、操作系统为Solaris操作系统为例进行说明,但是本发明实施例中并不限定于上述应用场景,对于基于其它语言实现的应用系统程序、以及其它类型的操作系统也是适用的。
参照图2,示出了本发明实施例二的一种数据文件的删除方法的流程图,该方法具体可以包括以下步骤:
步骤201,确定删除条件。
在本发明的一种优选实施例中,可以根据数据文件的时间特征确定删除条件。因此,所述删除条件可以包括删除时间,并且根据所述删除时间的格式可以确定所述删除时间对应的时间精度。例如,所述删除时间为2013,则该删除时间对应的时间精度为“年”;所述删除时间为201301,则该删除时间对应的时间精度为“月”,等等。
为了实现根据时间判断可删除的数据文件的目的,本发明实施例中对数据文件的组织形式进行了设定,所述数据文件的名称中可以包括所述数据文件的上传时间。例如,在应用系统将数据文件上传至操作系统服务器时,可以记录该上传时间,并将该上传时间添加到所述数据文件的名称中。所述上传时间的格式可以为“年月日时分秒”,例如格式为“YYYYMMDDhhmmss”,其中Y代表年,M代表月,D代表日,h代表时,m代表分,s代表秒,例如上传时间可以为“20130501230015”(即2013年5月1日23点零分15秒)。
在本发明的一种优选实施例中,该步骤201具体可以包括以下子步骤:
子步骤a1,根据预先设置的开始删除时间对应的时间精度和结束删除时间对应的时间精度确定删除时间精度;
子步骤a2,将位于所述开始删除时间和结束删除时间之内、对应时间精度为所述删除时间精度的删除时间确定为删除条件。
首先,本发明实施例中可以预先设置删除周期(即要删除位于哪个时间周期内的数据文件),该删除周期可以包括开始删除时间和结束删除时间,并且根据所述开始删除时间的格式可以确定所述开始删除时间对应的时间精度,根据所述结束删除时间的格式可以确定所述结束删除时间对应的时间精度。然后根据所述开始删除时间对应的时间精度和结束删除时间对应的时间精度即可确定删除时间精度,因此可以将位于所述开始删除时间和结束删除时间之内、对应时间精度为所述删除时间精度的删除时间确定为删除条件。
例如,预先设置的删除周期为“2011~2013”,其中“2011”即为开始删除时间,对应的时间精度为“年”,“2013”即为结束删除时间,对应的时间精度也为“年”。此时即可确定删除时间精度为“年”,因此可以将位于“2011~2013”之内、对应的时间精度为“年”的删除时间确定为删除条件,因此确定的删除条件可以为“2011”、“2012”和“2013”三个。
再例如,预先设置的删除周期为“201301~201304”,其中“201301”即为开始删除时间,对应的时间精度为“月”,“201304”即为结束删除时间,对应的时间精度也为“月”。此时即可确定删除时间精度为“月”,因此可以将位于“201301~201304”之内、对应的时间精度为“月”的删除时间确定为删除条件,因此确定的删除条件可以为“201301”、“201302”、“201303”和“201304”四个。
步骤202,查找满足所述删除条件的数据文件。
确定删除条件之后,即可查找满足所述删除条件的数据文件。由于所述数据文件的名称中可以包括所述数据文件的上传时间,所述上传时间的格式可以为“年月日时分秒”,因此可以根据所述数据文件的上传时间查找满足所述删除条件的数据文件。
在本发明的一种优选实施例中,该步骤202具体可以包括以下子步骤:
子步骤b1,调用查找命令,所述查找命令包括所述删除时间;
子步骤b2,通过所述查找命令查找上传时间中包括所述删除时间的数据文件;所述查找到的数据文件为满足所述删除条件的数据文件。
本发明实施例中,可以通过JAVA语言本身提供的API中的“Process Builder(创建进程)”方法来调用Solaris操作系统提供的查找命令查找满足所述删除条件的数据文件。在所述查找命令中可以包括所述删除时间(即删除条件),然后即可查找上传时间中包括所述删除时间的数据文件,查找到的数据文件即为满足所述删除条件的数据文件。例如,所述查找命令可以为Solaris操作系统提供的“find-type f-name\"{0}\"|wc-l”命令,其中“\"{0}\"”是JAVA语言的一种传递替换参数的方式要求,这里的值可以为对应的删除时间。
例如,确定的删除条件为“2011”、“2012”和“2013”三个,在查找时可以依次依据这三个删除条件进行查找。在依据“2011”查找时,所述查找命令可以为“find-type f-name\"2011\"|wc–l”,则上传时间中包括“2011”的数据文件即为满足所述删除条件的数据文件,例如20110101183030、20110102183030、20110103183030等均为满足所述删除条件的数据文件。对于“2012”和“2013”两个删除条件的查找过程与上述类似,本发明实施例在此不再详细论述。
在本发明的一种优选实施例中,在查找满足所述删除条件的数据文件时,还可以首先根据要删除的数据文件所在的目录查找对应的数据文件,然后再根据删除时间从上述根据目录查找到的数据文件中查找满足删除条件的数据文件。
例如,可以通过JAVA语言本身提供的API中的“Process Builder”方法来调用Solaris操作系统提供的目录查找命令查找保存在所述目录下的数据文件。所述目录查找命令可以为Solaris操作系统提供的“find\"{目录}\"-typef-name\"{1}\"|wc-l”命令,其中“\"{目录}\"”即为所述要删除的数据文件所在的目录。
步骤203,判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值。
若是,则执行步骤204;若否,则执行步骤205。
在查找到满足所述删除条件的数据文件之后,可以统计所述数据文件的数量,然后判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值。例如,可以通过JAVA语言本身提供的API中的判断方法判断数据文件的数量。
步骤204,增加删除条件,并返回步骤102。
如果在步骤203中判断出所述满足所述删除条件的数据文件的数量大于或等于预设的删除阈值,则可以增加删除条件,并且在增加删除条件后,返回步骤202继续查找满足所述删除条件的数据文件,并在查找之后继续执行步骤203的判断过程。
在本发明的一种优选实施例中,该步骤204具体可以包括以下子步骤:
子步骤c1,将所述删除时间对应的时间精度降低一个级别;
子步骤c2,将位于所述删除时间之内、对应时间精度为降低级别后的时间精度的删除时间增加为删除条件。
本发明实施例中,所述删除时间对应有时间精度,所述时间精度具有对应的级别,例如时间精度“年”为最高级别,时间精度“月”为“年”的下一个级别,时间精度“日”为“月”的下一个级别,以此类推,时间精度为“秒”为最低级别,等等。
如果对应的时间精度降低,则根据降低时间精度后的删除时间查找到的数据文件的数量将减少。因此,本发明实施例中首先可以将所述删除时间对应的时间精度降低一个级别,然后将位于所述删除时间之内、对应时间精度为降低级别后的时间精度的删除时间增加为删除条件。
例如,在删除时间为“2011”时,根据“find-type f-name\"2011\"|wc–l”命令查找到的上传时间中包括“2011”的数据文件的数量大于或等于预设的删除阈值,则可以将“2011”对应的时间精度降低一个级别,即降低为“月”,则查找命令变为“find-type f-name\"2011MM\"|wc–l”,其中MM的取值为01~12,即增加的删除条件为位于2011年之内、对应时间精度为“月”的删除时间,即为“201101”、“201102”、......、“201112”。
在增加上述删除条件后,即可返回步骤202继续依次查找满足删除条件的数据文件。例如,在删除时间为“201101”时,根据“find-type f-name\"201101\"|wc–l”命令查找到的上传时间中包括“201101”的数据文件的数量大于或等于预设的删除阈值,则可以将“201101”对应的时间精度降低一个级别,即降低为“日”,则查找命令变为“find-type f-name\"201101DD\"|wc–l”,其中DD的取值为01~31,即增加的删除条件为位于2011年01月之内、对应时间精度为“日”的删除时间,即为“20110101”、“20110101”、......、“20110131”。
对于针对“2012”和“2013”增加删除条件过程与上述类似,本发明实施例在此不再详细论述。重复执行上述过程,逐次降低删除时间对应的时间精度的级别。
步骤205,删除所述数据文件。
如果在步骤203中判断出所述满足所述删除条件的数据文件的数量小于预设的删除阈值,则可以说明此时数据文件的数量较小,因此该种情况下可以直接删除所述数据文件。
在本发明的一种优选实施例中,该步骤204具体可以包括以下子步骤:
子步骤d1,调用删除命令,所述删除命令包括所述删除时间;
子步骤d2,通过所述删除命令删除上传时间中包括所述删除时间的数据文件。
本发明实施例中,可以通过JAVA语言本身提供的API中的“Process Builder(创建进程)”方法来调用Solaris操作系统提供的删除命令删除满足所述删除条件的数据文件。在所述删除命令中可以包括所述删除时间,然后即可删除上传时间中包括所述删除时间的数据文件。在本发明的一种优选实施例中,所述数据文件的名称中还可以包括该数据文件的格式,所述删除命令中还可以包括要删除的数据文件的格式,所述文件格式可以通过后缀名表示(例如“.xml”)。
本发明实施例中,所述删除命令可以为Solaris操作系统提供的“rm-f*删除时间*文件格式”命令,例如为“rm-f*2011*.xml”命令,依据该命令可以查找到上传时间中包括“2011”,并且格式为“.xml”的数据文件。
由于上述删除命令支持的变量长度有限,如果要删除的数据超过删除命令支持的最大变量长度,则可能导致该删除命令无法正常进行,因此,在本发明的一种优选实施例中,可以设定所述删除阈值等于所述删除命令支持的最大变量长度,例如可以设置删除阈值为20000个。
当然,所述删除阈值还可以设置为其它数值,本发明实施例对此并不加以限制。
步骤206,判断是否还存在未查找的删除条件。
在步骤205中删除所述数据文件之后,还可以判断是否还存在未查找的删除条件,如果存在,则返回步骤102继续进行查找;若不存在,则结束数据文件的删除过程。
本发明实施例中,所述开始删除时间和结束删除时间还可以为相同的时间,例如均为“2009”,此时即为要删除2009年内的数据文件,确定的删除条件即为“2009”。
删除过程具体可以包括如下步骤:
步骤1、按“年”为时间精度删除,判断2009年内的数据文件数量。如调用命令“find-type f-name\"2009\"|wc–l”判断2009年内的数据文件数量。
步骤2、如果按“年”为时间精度判断出2009年内的数据文件数量小于20000个,则直接使用“rm-f*删除时间*文件格式”命令进行删除;
如果判断出2009年内的数据文件数量大于或等于20000个,则将时间精度降低到“月”,调用命令“find-type f-name\"2009MM\"|wc–l”(MM代表月份,取值为01-12)判断每个月内的数据文件数量。
步骤3、如果按“月”为时间精度判断出2009年MM月(例如MM取值为01)内的文件数量小于20000个,则直接使用“rm-f*删除时间*文件格式”命令进行删除;
如果判断出2009年01月内的数据文件数量大于或等于20000个,则将时间精度降低到“日”,调用命令“find-type f-name\"200901DD\"|wc–l”(DD代表日,取值为01-31)判断每日内的数据文件数量。
步骤4、以此条件递归地进行判断,在数据文件数量超过20000的情况下将时间的精度逐次降低为:时→分→秒,直至查找完所有删除条件为止。
以上过程中结合solaris操作系统的操作命令和JAVA语言的API方法,通过JAVA程序来调用solaris自身的操作命令。其中,文件数量判断、删除条件和时间精度的调整均在JAVA程序侧完成,待计算出新的删除条件和时间精度后再将所得到的参数传递至Solaris的操作命令;在数据文件的数量满足条件后JAVA程序将切换到调用删除命令将满足删除条件的数据文件删除。
本发明实施例中使用JAVA程序结合Solaris操作系统命令实现了海量数据文件删除的需求,JAVA程序来进行判断和对操作系统命令的调度,并使用底层操作系统命令高效的执行删除操作。在删除海量数据文件时通过程序进行自动的算法调整,分批量删除海量数据文件,避免出错以及人工干预,提高了删除效率。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
实施例三:
参照图3,示出了本发明实施例三的一种数据文件的删除系统的结构框图,该系统具体可以包括以下模块:
确定模块301,用于确定删除条件;
查找模块302,用于查找满足所述删除条件的数据文件;
第一判断模块303,用于判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值;
增加模块304,用于在所述第一判断模块的判断结果为是时,增加删除条件;以及在增加删除条件之后调用所述查找模块;
删除模块305,用于在所述第一判断模块的判断结果为否时,删除所述数据文件。
在本发明的一种优选实施例中,所述删除条件可以包括删除时间,所述删除时间对应的时间精度根据所述删除时间的格式确定,所述数据文件的名称可以包括所述数据文件的上传时间。
所述确定模块可以包括以下子模块:
精度确定子模块,用于根据预先设置的开始删除时间对应的时间精度和结束删除时间对应的时间精度确定删除时间精度;
条件确定子模块,用于将位于所述开始删除时间和结束删除时间之内、对应时间精度为所述删除时间精度的删除时间确定为删除条件。
所述增加模块可以包括以下子模块:
精度降低子模块,用于将所述删除时间对应的时间精度降低一个级别;
条件增加子模块,用于将位于所述删除时间之内、对应时间精度为降低级别后的时间精度的删除时间增加为删除条件。
所述查找模块可以包括以下子模块:
查找调用子模块,用于调用查找命令,所述查找命令包括所述删除时间;
文件查找子模块,用于通过所述查找命令查找上传时间中包括所述删除时间的数据文件;所述查找到的数据文件为满足所述删除条件的数据文件。
所述删除模块可以包括以下子模块:
删除调用子模块,用于调用删除命令,所述删除命令包括所述删除时间;
文件删除子模块,用于通过所述删除命令删除上传时间中包括所述删除时间的数据文件。
在本发明的一种优选实施例中,所述数据文件的删除系统还可以包括以下模块:
第二判断模块,用于在所述删除模块删除所述数据文件之后,判断是否还存在未查找的删除条件;以及在存在时,调用所述查找模块。
本发明中通过对可删除的数据文件的数量进行判断,在数量大于或等于预设的删除阈值时,并不执行删除数据文件的操作,而是增加删除条件,然后继续查找满足所述删除条件的数据文件并进行数量的判断,直至可删除的数据文件的数量小于删除阈值时才进行删除操作。因此可以避免在可删除的数据文件的数量过大时,无法保证删除操作的正常进行的问题,并且可以提高删除效率。
对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种数据文件的删除方法和系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (13)
1.一种数据文件的删除方法,其特征在于,包括:
确定删除条件,查找满足所述删除条件的数据文件;所述删除条件包括删除时间;所述删除时间对应的时间精度根据所述删除时间的格式确定,所述数据文件的名称包括所述数据文件的上传时间;所述查找满足所述删除条件的数据文件包括:根据所述数据文件的上传时间查找满足所述删除条件的数据文件;
判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值;
若是,则在增加删除条件后,返回所述查找满足所述删除条件的数据文件的步骤;
若否,则删除所述数据文件。
2.根据权利要求1所述的方法,其特征在于,所述确定删除条件的步骤包括:
根据预先设置的开始删除时间对应的时间精度和结束删除时间对应的时间精度确定删除时间精度;
将位于所述开始删除时间和结束删除时间之内、对应时间精度为所述删除时间精度的删除时间确定为删除条件。
3.根据权利要求1所述的方法,其特征在于,所述增加删除条件的步骤包括:
将所述删除时间对应的时间精度降低一个级别;
将位于所述删除时间之内、对应时间精度为降低级别后的时间精度的删除时间增加为删除条件。
4.根据权利要求1所述的方法,其特征在于,所述查找满足所述删除条件的数据文件的步骤包括:
调用查找命令,所述查找命令包括所述删除时间;
通过所述查找命令查找上传时间中包括所述删除时间的数据文件;所述查找到的数据文件为满足所述删除条件的数据文件。
5.根据权利要求1所述的方法,其特征在于,所述删除所述数据文件的步骤包括:
调用删除命令,所述删除命令包括所述删除时间;
通过所述删除命令删除上传时间中包括所述删除时间的数据文件。
6.根据权利要求5所述的方法,其特征在于,所述删除阈值等于所述删除命令支持的最大变量长度。
7.根据权利要求1所述的方法,其特征在于,在所述删除所述数据文件的步骤之后,还包括:
判断是否还存在未查找的删除条件;
若存在,则返回所述查找满足所述删除条件的数据文件的步骤。
8.一种数据文件的删除系统,其特征在于,包括:
确定模块,用于确定删除条件;所述删除条件包括删除时间;所述删除时间对应的时间精度根据所述删除时间的格式确定,所述数据文件的名称包括所述数据文件的上传时间;
查找模块,用于查找满足所述删除条件的数据文件;所述查找满足所述删除条件的数据文件包括:根据所述数据文件的上传时间查找满足所述删除条件的数据文件;
第一判断模块,用于判断所述满足所述删除条件的数据文件的数量是否大于或等于预设的删除阈值;
增加模块,用于在所述第一判断模块的判断结果为是时,增加删除条件;以及在增加删除条件之后调用所述查找模块;
删除模块,用于在所述第一判断模块的判断结果为否时,删除所述数据文件。
9.根据权利要求8所述的系统,其特征在于,所述确定模块包括:
精度确定子模块,用于根据预先设置的开始删除时间对应的时间精度和结束删除时间对应的时间精度确定删除时间精度;
条件确定子模块,用于将位于所述开始删除时间和结束删除时间之内、对应时间精度为所述删除时间精度的删除时间确定为删除条件。
10.根据权利要求8所述的系统,其特征在于,所述增加模块包括:
精度降低子模块,用于将所述删除时间对应的时间精度降低一个级别;
条件增加子模块,用于将位于所述删除时间之内、对应时间精度为降低级别后的时间精度的删除时间增加为删除条件。
11.根据权利要求8所述的系统,其特征在于,所述查找模块包括:
查找调用子模块,用于调用查找命令,所述查找命令包括所述删除时间;
文件查找子模块,用于通过所述查找命令查找上传时间中包括所述删除时间的数据文件;所述查找到的数据文件为满足所述删除条件的数据文件。
12.根据权利要求8所述的系统,其特征在于,所述删除模块包括:
删除调用子模块,用于调用删除命令,所述删除命令包括所述删除时间;
文件删除子模块,用于通过所述删除命令删除上传时间中包括所述删除时间的数据文件。
13.根据权利要求8所述的系统,其特征在于,还包括:
第二判断模块,用于在所述删除模块删除所述数据文件之后,判断是否还存在未查找的删除条件;以及在存在时,调用所述查找模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310706111.XA CN103714137B (zh) | 2013-12-19 | 2013-12-19 | 一种数据文件的删除方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310706111.XA CN103714137B (zh) | 2013-12-19 | 2013-12-19 | 一种数据文件的删除方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103714137A CN103714137A (zh) | 2014-04-09 |
CN103714137B true CN103714137B (zh) | 2017-11-21 |
Family
ID=50407112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310706111.XA Active CN103714137B (zh) | 2013-12-19 | 2013-12-19 | 一种数据文件的删除方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103714137B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095107B (zh) * | 2014-05-04 | 2019-07-16 | 腾讯科技(深圳)有限公司 | 清理缓存数据的方法及装置 |
CN104462527A (zh) * | 2014-12-22 | 2015-03-25 | 龙信数据(北京)有限公司 | 一种数据去重的方法及装置 |
CN104679851B (zh) * | 2015-02-12 | 2019-02-05 | Oppo广东移动通信有限公司 | 一种数据删除方法及终端 |
CN105989102A (zh) * | 2015-02-12 | 2016-10-05 | 广东欧珀移动通信有限公司 | 一种备份数据的删除方法及装置 |
CN107870737A (zh) * | 2016-09-28 | 2018-04-03 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN106599267B (zh) * | 2016-12-22 | 2020-12-08 | 北京锐安科技有限公司 | 一种删除数据的方法及装置 |
CN107370787A (zh) * | 2017-06-05 | 2017-11-21 | 广西英伟科技有限公司 | 一种服务器管理系统 |
CN109684827A (zh) * | 2018-03-14 | 2019-04-26 | 北京微步在线科技有限公司 | 沙箱报告过滤方法和装置 |
US11262934B2 (en) | 2019-02-27 | 2022-03-01 | International Business Machines Corporation | Deletion of stored data |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03220639A (ja) * | 1990-01-25 | 1991-09-27 | Nec Software Kansai Ltd | ファイル管理方式 |
KR20050080672A (ko) * | 2004-02-10 | 2005-08-17 | 엘지전자 주식회사 | 이동 통신 단말기의 메시지 삭제 방법 |
CN100589102C (zh) * | 2007-04-17 | 2010-02-10 | 中兴通讯股份有限公司 | 一种网管历史数据的多表格处理方法 |
CN101714391A (zh) * | 2009-11-12 | 2010-05-26 | 北京东方网力科技有限公司 | 一种数据存储方法及装置 |
US7783715B2 (en) * | 2003-12-12 | 2010-08-24 | International Business Machines Corporation | Scheduled electronic mail deletions |
CN102609532A (zh) * | 2012-02-15 | 2012-07-25 | 大唐移动通信设备有限公司 | 文件目录的监控方法和装置 |
-
2013
- 2013-12-19 CN CN201310706111.XA patent/CN103714137B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03220639A (ja) * | 1990-01-25 | 1991-09-27 | Nec Software Kansai Ltd | ファイル管理方式 |
US7783715B2 (en) * | 2003-12-12 | 2010-08-24 | International Business Machines Corporation | Scheduled electronic mail deletions |
KR20050080672A (ko) * | 2004-02-10 | 2005-08-17 | 엘지전자 주식회사 | 이동 통신 단말기의 메시지 삭제 방법 |
CN100589102C (zh) * | 2007-04-17 | 2010-02-10 | 中兴通讯股份有限公司 | 一种网管历史数据的多表格处理方法 |
CN101714391A (zh) * | 2009-11-12 | 2010-05-26 | 北京东方网力科技有限公司 | 一种数据存储方法及装置 |
CN102609532A (zh) * | 2012-02-15 | 2012-07-25 | 大唐移动通信设备有限公司 | 文件目录的监控方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103714137A (zh) | 2014-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103714137B (zh) | 一种数据文件的删除方法和系统 | |
CN109271435B (zh) | 一种支持断点续传的数据抽取方法及系统 | |
CN110532247A (zh) | 数据迁移方法和数据迁移系统 | |
CN110609743A (zh) | 用于配置资源的方法、电子设备和计算机程序产品 | |
CN107463595A (zh) | 一种基于Spark的数据处理方法及系统 | |
CN107689976B (zh) | 一种文件传输方法及装置 | |
CN110221901A (zh) | 容器资源创建方法、装置、设备及计算机可读存储介质 | |
CN110427258B (zh) | 基于云平台的资源调度控制方法及装置 | |
CN111190892B (zh) | 一种数据回填中处理异常数据的方法和装置 | |
CN105718307B (zh) | 进程管理方法及进程管理装置 | |
CN105159718A (zh) | 固件升级方法及装置 | |
CN113961346A (zh) | 数据缓存的管理与调度方法、装置、电子设备和存储介质 | |
CN108829415B (zh) | 模型加载方法、服务器及计算机可读存储介质 | |
US7885906B2 (en) | Problem solving system and method | |
CN102567033A (zh) | 基于嵌入式实时Java虚拟机的预先类加载方法及装置 | |
CN111294377B (zh) | 一种依赖关系的网络请求发送方法、终端装置及存储介质 | |
CN104866951B (zh) | 业务流程中的业务信息更新方法和系统 | |
CN113742057A (zh) | 一种任务执行方法和装置 | |
CN113837870A (zh) | 金融风险数据审批方法及装置 | |
CN113986495A (zh) | 一种任务执行方法、装置、设备及存储介质 | |
CN103412743A (zh) | 一种基于xml的自动调用业务规则的方法 | |
CN115037729B (zh) | 数据汇聚方法、装置、电子设备及计算机可读介质 | |
US20230281529A1 (en) | Business behavior management system and business behavior management method | |
CN116501386B (zh) | 一种基于数据池的计算程序自动求解方法及相关装置 | |
CN114816587B (zh) | 一种基于原生通用型应用的拉起处理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |