CN109284066B - 一种数据处理方法、装置、设备及系统 - Google Patents
一种数据处理方法、装置、设备及系统 Download PDFInfo
- Publication number
- CN109284066B CN109284066B CN201710589060.5A CN201710589060A CN109284066B CN 109284066 B CN109284066 B CN 109284066B CN 201710589060 A CN201710589060 A CN 201710589060A CN 109284066 B CN109284066 B CN 109284066B
- Authority
- CN
- China
- Prior art keywords
- operation log
- data
- target data
- deletion operation
- deleting
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例公开了一种数据处理方法、装置、设备及系统,该方法应用于包含缓存设备和存储设备的存储系统,包括:根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志;存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效;删除所述存储设备中的所述目标数据。利用本申请实施例,可以通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,可以在设备宕机重启时,通过删除操作日志防止缓存设备中的目标数据被重新写回存储设备,防止用户通过终端设备读取到旧数据。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置、设备及系统。
背景技术
在存储系统中,数据的读写性能是衡量存储系统整体性能的重要指标。为了提高数据的读写性能,通常会使用读写性能优异的设备作为存储设备(如机械硬盘,即硬盘驱动器磁盘HDD(Hard Disk Drive))的缓存设备,如固态硬盘(SSD,Solid State Drives)等,在应用中,将存储设备中的数据缓存到缓存设备中,利用缓存设备完成后续对该数据的读写操作。
具体的,在计算机存储系统中,缓存设备的数据读写速度要比存储设备的数据读写速度快,为了加快数据处理速度,对于用户对存储系统中的某数据发起的读操作,通常需要先将所需读取的数据缓存到缓存设备中,然后再将该数据反馈给用户;对于用户对存储系统中的某数据发起的写操作,通常也需要先将所需写入存储设备中的数据缓存到缓存设备中,然后再将缓存设备中的该数据写入到存储设备的预定位置。但是,在实际进行数据操作过程中,数据操作处理的对象是存储设备中的数据,而不会对缓存设备中保存的该数据进行操作处理,而且缓存设备也无法感知用户对该数据进行的操作。因此,当用户删除存储设备中的某数据时,由于无法及时删除缓存设备中的缓存的该数据,导致该数据将被回写到存储设备中,为此,通常采用将缓存设备中的该数据的属性设置为无效的方式来防止该数据被重新回写到存储设备中。
但是,对于存储设备中,用户已执行删除操作的某数据,如果通过将缓存设备中的该数据设置为无效的方式防止被重新回写到存储设备中,则当本地设备宕机重启时,之前缓存设备中该数据的无效属性可能会被消除,从而使得文件删除操作删去的数据重新写入存储设备,导致用户通过终端设备仍然会读取到旧数据。
发明内容
本申请实施例的目的是提供一种数据处理方法、装置、设备及系统,以通过删除操作日志防止缓存设备中的目标数据被重新写回存储设备,防止用户通过终端设备读取到旧数据。
为解决上述技术问题,本申请实施例是这样实现的:
本申请实施例提供的一种数据处理方法,应用于包含缓存设备和存储设备的存储系统,所述方法包括:
根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志;
存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效;
删除所述存储设备中的所述目标数据。
本申请实施例提供的一种数据处理方法,应用于包含缓存设备和存储设备的存储系统,所述方法包括:
在本地设备宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据;
根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的目标数据设置为无效;
删除所述存储设备中的所述目标数据。
本申请实施例提供的一种数据处理装置,应用于包含缓存设备和存储设备的存储系统,所述装置包括:
日志生成模块,用于根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志;
日志存储模块,用于存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效;
数据删除模块,用于删除所述存储设备中的所述目标数据。
本申请实施例提供的一种数据处理装置,应用于包含缓存设备和存储设备的存储系统,所述装置包括:
日志获取模块,用于在所述数据处理装置宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据;
数据设置模块,用于根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的数据设置为无效;
数据删除模块,用于删除所述存储设备中的所述目标数据。
本申请实施例还提供的一种数据处理系统,所述系统包括主副本服务器和备副本服务器,所述备副本服务器与所述主副本服务器相连接,其中:
所述主副本服务器根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,存储所述删除操作日志,并将所述主副本服务器的缓存设备中的所述目标数据设置为无效,删除所述主副本服务器的存储设备中的所述目标数据;
所述备副本服务器接收所述主副本服务器发送的所述删除操作日志,存储所述删除操作日志,将所述备副本服务器的缓存设备中的所述目标数据设置为无效,删除所述备副本服务器的存储设备中的所述目标数据。
本申请实施例另提供的一种数据处理设备,所述数据处理设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志;
存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效;
删除所述存储设备中的所述目标数据。
本申请实施例另提供的一种数据处理设备,所述数据处理设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在所述数据处理设备宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据;
根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的目标数据设置为无效;
删除所述存储设备中的所述目标数据。
由以上本申请实施例提供的技术方案可见,本申请实施例通过根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,然后,存储该删除操作日志,并将缓存设备中的目标数据设置为无效,然后,删除存储设备中的目标数据,这样,通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,由于删除操作日志是一条存储的数据,而不是预先设置的数据的属性等附加信息,因此,删除操作日志即使在设备异常,甚至宕机重启时仍然存在,从而有效防止缓存设备中的目标数据被重新写回存储设备,导致用户通过终端设备仍然读取到旧数据。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一种数据处理方法实施例;
图2为本申请另一种数据处理方法实施例;
图3为本申请又一种数据处理方法实施例;
图4为本申请又一种数据处理方法实施例;
图5为本申请又一种数据处理方法实施例;
图6为本申请一种数据处理系统的结构示意图;
图7为本申请一种数据处理装置实施例;
图8为本申请另一种数据处理装置实施例;
图9为本申请一种数据处理设备实施例;
图10为本申请另一种数据处理设备实施例。
具体实施方式
本申请实施例提供一种数据处理方法、装置、设备及系统。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
实施例一
如图1所示,本申请实施例提供一种数据处理方法,该方法的执行主体可以为包含缓存设备和存储设备的存储系统的终端设备或服务器。该方法具体可以包括以下步骤:
在步骤S101中,根据删除预定存储系统中的目标数据的操作请求,生成相应的删除操作日志。
其中,存储系统可以是包含缓存设备和存储设备的系统,缓存设备可以是处于CPU(中央处理器)与存储设备之间的、存储速度大于存储设备的存储速度的设备,例如,SRAM(Static Random Access Memory,静态随机存取存储)设备、固态硬盘(SSD)等。由于固态硬盘的广泛应用,固态硬盘也被应用在存储系统中作为缓存设备。存储设备可以是对数据进行永久性存储的设备,例如,机械硬盘(HDD)等。目标数据可以是任意数据,例如,某音频的数据、某视频的数据或某文本文档的数据等。
在实施中,由于固态硬盘的存储速度相对于存储设备的存储速度快,因此,在存储系统中可以使用固态硬盘作为缓存设备,这样,存储系统在存储数据时,可以将该数据写入到缓存设备中,然后,再将缓存设备中缓存的该数据存储到存储设备中,存储完成后,可以对缓存设备中存储的该数据进行计时,当达到预定时长时,可以将该数据从缓存设备中删除,或者,当缓存设备中缓存的数据达到缓存设备的存储极限时,可以将缓存设备中的数据执行清理操作。存储系统可以是云存储系统,也可以是本地服务器或终端设备的存储系统等。删除操作日志可以是用于记录某一数据的删除操作的日志文件,也可以是记录在预先生成的日志文件中一条日志内容。
在存储设备中存储完成某数据(即目标数据),并且缓存设备中仍然存储有该目标数据的情况下,如果用户需要删除目标数据,则用户可以通过终端设备(如个人计算机、手机或平板电脑等)根据目标数据的存储路径查找到目标数据,选择该目标数据后,可以点击相应的删除按键,此时,终端设备生成删除存储系统中的目标数据的操作请求,可以将该操作请求发送给存储系统。存储系统接收到该操作请求后,可以分析该操作请求,在确定该操作请求为删除目标数据的操作请求后,可以根据该操作请求的内容生成相应的删除操作日志。例如,基于该操作请求的内容生成一条删除操作日志,可以将该删除操作日志的内容写入到预先设置的日志文件中,或者,基于该操作请求的内容生成一个日志文件(即删除操作日志),该日志文件中记录有该操作请求的相关内容。其中,该操作请求的内容中可以包括目标数据的标识、删除类型(如逻辑删除或物理删除等)等,相应的,该删除操作日志中也可以包括目标数据的标识、删除类型和操作优先级等。目标数据的标识可以是目标数据的名称或编码等。该删除操作日志中除了可以包括上述信息外,还可以包括多种信息,具体可以根据实际情况设定,本申请实施例对此不做限定。
在步骤S102中,存储上述删除操作日志,将缓存设备中的上述目标数据设置为无效。
在实施中,可以将生成的删除操作日志存储到缓存设备中,用以记录用户的删除操作请求,同时,可以在缓存设备中查找目标数据,如果查找到该目标数据,则可以将该目标数据的属性设置为无效,从而以标记缓存设备中的目标数据是用户已经进行删除操作的数据,防止目标数据在存储系统故障时被重新写回存储设备中。
如果没有查找到缓存设备中缓存有目标数据,则可以只将生成的删除操作日志写入到删除操作日志的文件中,并存储该删除操作日志的文件,然后执行下述步骤S103的处理。
在步骤S103中,删除存储设备中的上述目标数据。
在实施中,可以从上述删除操作日志中提取待删除的目标数据的数据标识,然后,可以在存储设备中根据该数据标识查找目标数据。如果查找到该目标数据,则可以将该目标数据删除,如果没有查找到目标数据,则表示该目标数据已经被删除,此时可以将目标数据的残留的相关数据删除,例如将目标数据存储的注册表中的相关数据删除等。
本申请实施例提供一种数据处理方法,通过根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,然后,存储该删除操作日志,并将缓存设备中的目标数据设置为无效,然后,删除存储设备中的目标数据,这样,通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,由于删除操作日志是一条存储的数据,而不是预先设置的数据的属性等附加信息,因此,删除操作日志即使在设备异常,甚至宕机重启时仍然存在,从而有效防止缓存设备中的目标数据被重新写回存储设备,导致用户通过终端设备仍然读取到旧数据。
实施例二
如图2所示,本申请实施例提供了一种数据处理方法,该方法的执行主体可以为包含缓存设备和存储设备的存储系统的终端设备、服务器或服务器集群,具体包括如下步骤:
在步骤S201中,根据删除预定存储系统中的目标数据的操作请求,生成相应的删除操作日志。
其中,删除操作日志中包括删除类型和/或删除操作优先级和/或目标数据的标识,删除类型可以用于表示删除存储设备中的数据,或删除缓存设备中的数据等;删除操作优先级可以用于表示发起的删除操作执行的优先等级,删除操作优先级可以包括多个等级,具体可以根据实际情况确定;目标数据的标识可以是目标数据的名称、代码或哈希值等用于标记目标文件身份的字符串。
在实施中,存储系统可以分为集中存储系统和分布式存储系统,不同的存储系统的数据存储方式不同,而通常存储系统都会包括存储设备和缓存设备,存储系统都可以通过存储设备存储用户需要的数据。在向存储设备中存入数据的过程中,可以先将该数据缓存到缓存设备中,然后,再将缓存的数据转存到存储设备中。本实施例中的缓存设备可以是SSD,存储设备可以为HDD。当用户需要对存储设备中的某数据(即目标数据)进行操作时,可以根据目标数据的存储路径查找到存储于HDD中的目标数据,然后,可以选择该目标数据,并对目标数据进行相应操作,例如,查看目标数据、修改目标数据或删除目标数据等。缓存设备中包含有缓存控制器,可以为该缓存控制器预先指定需要监听的数据以及对数据进行操作的操作类型,然后,该缓存控制器可以监听对上述指定的数据进行的操作,当监听到对上述目标数据的删除操作时,可以获取目标数据的数据标识、操作类型等信息,可以通过上述信息生成删除存储系统中的目标数据的操作请求。可以提取操作请求中的相关信息,并可以通过提取的信息生成删除操作日志。
在实际应用中,删除操作日志可以是针对目标数据独立生成的一个日志文件,每当某数据被执行删除操作时,可以生成该数据的一个日志文件,该日志文件中可以记录有该数据的数据标识、删除时间、删除优先级等。删除操作日志还可以是一条数据,对于此种情况,可以预先生成用于记录数据的删除操作的日志文件,每当某数据被执行删除操作时,可以生成该数据的一条记录数据(即删除操作日志),可以将该记录数据写入到上述日志文件中。
在步骤S202中,将上述删除操作日志存储于缓存设备中。
在实施中,由于生成删除操作日志的目的主要是防止缓存设备(即SSD)中存储的目标数据在用户已将存储设备(即HDD)中的目标数据删除的情况下,重新写回存储设备中,又考虑到缓存设备中缓存的数据通常具有一定的时效性,当达到预定时长时,缓存的数据将会从缓存设备中删除,而此时,删除操作日志也就失去了意义。也就是说,缓存设备中缓存的数据与其对应的删除操作日志具有相同的时效性,而且,为了可以快速读取删除缓存日志的内容,可以将删除操作日志存储于缓存设备中。
在步骤S203中,将缓存设备中的上述目标数据设置为无效。
在实施中,每当数据缓存到SSD中时,SSD可以为该数据设置是否有效的属性,并在存储了该数据后,可以将该数据的上述属性设置为有效。当SSD获取到删除目标数据的操作请求时,可以将目标数据的上述属性由有效设置为无效。此时,目标数据将无法回写到HDD中。
将目标数据设置为无效的处理方式,除了可以采用上述方式外,还可以通过多种方式实现,例如,可以通过设置标签或标识的方式实现,在此情况下,当SSD获取到删除目标数据的操作请求时,可以生成用于表示目标数据无效的标签或标识,可以将生成的标签或标识与目标数据相对应,例如,建立生成的标签或标识与目标数据的数据标识的对应关系,当需要将某数据设置为无效时,可以生成相应的标签或标识,并可以将该标签或标识与目标数据的数据标识对应存储,从而防止目标数据被回写到HDD中。
在步骤S204中,删除存储设备中的上述目标数据。
在实施中,完成上述步骤S201~步骤S203的处理后,可以依据目标文件的存储路径和目标数据的数据标识,在HDD中查找到目标数据,并将目标数据从HDD中删除。如果存储系统中还存在用于数据备份的存储空间或存储设备,且目标数据也备份在该存储空间或存储设备中,则还可以将该存储空间或存储设备中备份的目标数据删除,以达到数据同步的目的。
通过上述步骤S201~步骤S204的处理,本地设备可以删除存储设备中的目标数据,并将缓存设备中的目标数据设置为无效,然而,缓存设备中设置为无效的目标数据在某些情况下其无效状态会发生变化,比如本地设备宕机重启时,因此,如果在执行上述步骤S201~步骤S204的处理过程中,本地设备发生宕机重启,则为了防止无效的目标数据被重新写回存储设备,可以在宕机重启时执行下述步骤S205和步骤S206的处理。
在步骤S205中,在本地设备宕机重启后,获取预先存储的上述删除操作日志。
在实施中,由于SSD中缓存的目标数据存在一定的时效性,当目标数据缓存的时长还未超过预定时长时,如果本地设备由于操作系统崩溃、同一时间访问量巨大或设备硬件损坏等原因造成宕机重启,此时,对于之前将目标数据设置为无效的处理可能不再有效,即目标数据恢复成为有效的状态。此时,可以从SSD中读取预先存储的删除操作日志,确定SSD中缓存的各个数据是否是用户已经删除的数据,如果SSD中没有存储某数据的删除操作日志,则可以确定SSD中存储的该数据需要写入HDD中,此时,SSD可以与HDD对比该数据的各个数据块的标识(如哈希值等),并将SSD中存储有的而在HDD中未存储的数据块发送给HDD存储。如果SSD中存储的某数据对应有删除操作日志,则可以执行以下步骤S206的处理。
在步骤S206中,根据上述删除操作日志,将缓存设备中与该删除操作日志相对应的数据设置为无效。
在实施中,如果SSD中存储的某数据对应有删除操作日志,则可以获取SSD中与该删除操作日志相对应的数据,并可以将该数据设置为无效,具体设置无效的处理方式可以参见上述相关内容,在此不再赘述。
本申请实施例提供一种数据处理方法,通过根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,然后,存储该删除操作日志,并将缓存设备中的目标数据设置为无效,然后,删除存储设备中的目标数据,这样,通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,可以在设备宕机重启时,通过删除操作日志防止缓存设备中的目标数据被重新写回存储设备,防止用户通过终端设备读取到旧数据。
实施例三
如图3所示,本申请实施例提供一种数据处理方法,该方法的执行主体可以为包含缓存设备和存储设备的存储系统的终端设备或服务器。该方法具体可以包括以下步骤:
在步骤S301中,在本地设备宕机重启时,获取预先存储的删除操作日志,该删除操作日志用于删除存储系统中的目标数据。
其中,本地设备可以是作为执行主体终端设备或服务器。删除操作日志可以是对某数据执行删除操作时生成的一条记录,其中记录了该数据执行了删除操作、记录时间和该数据的标识等。
在实施中,本地设备会由于很多原因造成宕机,例如,操作系统崩溃、同一时间访问量巨大或设备硬件损坏等原因造成本地设备宕机。在本地设备宕机重启后,为了继续处理本地设备未宕机之前执行的操作,可以继续执行未完成的操作,尤其是未删除完成的数据等,此时,本地设备可以从SSD中读取预先存储的删除操作日志,确定SSD中缓存的各个数据是否是用户已经删除的数据,如果SSD中没有存储某数据的删除操作日志,则可以确定SSD中存储的该数据需要写入HDD中,此时,SSD可以与HDD对比该数据的各个数据块的标识(如哈希值等),并将SSD中存储有的而在HDD中未存储的数据块发送给HDD存储。如果SSD中存储的某数据对应有删除操作日志,则可以执行以下步骤S302的处理。
在步骤S302中,根据上述删除操作日志,将上述缓存设备中与该删除操作日志相对应的目标数据设置为无效。
上述步骤S302的步骤内容与上述实施例二中的步骤S206的步骤内容相同,步骤S302的具体处理过程可以参见步骤S206,在此不再赘述。
在步骤S303中,删除上述存储设备中的目标数据。
上述步骤S303的具体处理过程可以参见步骤S204,在此不再赘述。
本申请实施例提供一种数据处理方法,通过在本地设备宕机重启时,获取预先存储的用于删除存储系统中的目标数据的删除操作日志,进而根据该删除操作日志,将缓存设备中与删除操作日志相对应的目标数据设置为无效,并删除存储设备中的目标数据,这样,在设备宕机重启时,通过删除操作日志可以将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,可以防止缓存设备中的目标数据被重新写回存储设备,防止用户通过终端设备读取到旧数据。
实施例四
如图4所示,本申请实施例提供一种数据处理方法,该方法的执行主体可以为包含缓存设备和存储设备的存储系统的终端设备或服务器。该方法具体可以包括以下步骤:
在步骤S401中,根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志。
其中,该删除操作日志中包括删除类型和/或删除操作优先级和/或所述目标数据的标识。
在步骤S402中,将上述删除操作日志存储于缓存设备中。
上述步骤S401和步骤S402的具体处理过程可以分别参见实施例二中的步骤S201和步骤S202,在此不再赘述。
在步骤S403中,在本地设备宕机重启后,获取预先存储的上述删除操作日志。
上述步骤S403的处理除了可以是在删除操作日志生成并存储后执行,也可以是如上述实施例二中在本地设备将缓存设备中的目标数据设置为无效,并将存储设备中的目标数据删除后执行,步骤S403的具体处理过程可以参见上述实施例三中的步骤S301,在此不再赘述。
在步骤S404中,根据上述删除操作日志,将缓存设备中与该删除操作日志相对应的数据设置为无效。
在步骤S405中,删除上述存储设备中的目标数据。
上述步骤S404和步骤S405的具体处理过程可以分别参见步骤S302和步骤S303,在此不再赘述。
本申请实施例提供一种数据处理方法,通过在本地设备宕机重启时,获取预先存储的用于删除存储系统中的目标数据的删除操作日志,进而根据该删除操作日志,将缓存设备中与删除操作日志相对应的目标数据设置为无效,并删除存储设备中的目标数据,这样,在设备宕机重启时,通过删除操作日志可以将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,可以防止缓存设备中的目标数据被重新写回存储设备,防止用户通过终端设备读取到旧数据。
实施例五
如图5所示,本申请实施例提供了一种数据处理方法,该方法可以由分布式存储系统中的主副本服务器(或主服务器)和备副本服务器(或备份服务器)共同完成。本申请实施例中,分布式存储系统可以包括主副本服务器和一个或多个备副本服务器。其中,主副本服务器可以用于管理数据块的本地副本,并提供对所管理数据块副本的读写操作。备副本服务器可以用于管理数据块的本地副本,并提供对所管理数据块副本的读写操作,同时,接收主副本服务器发送的数据或操作日志(包括删除操作日志),并存储数据或执行操作日志中指定的操作。在用户通过客户端(如手机或计算机等)读写预先存储的数据时,可以先将相应的请求或数据发送给主副本服务器,然后由主副本服务器将接收到的请求或数据广播给备副本服务器,从而实现数据同步的目的。
本申请实施例提供的数据处理方法具体可以包括如下步骤:
在步骤S501中,主副本服务器根据删除预定存储系统中的目标数据的操作请求,生成相应的删除操作日志。
在实施中,如图6所示,终端设备可以是用户对目标数据进行操作时所使用的设备,该终端设备可以是手机、平板电脑等移动终端设备,还可以是计算机等终端设备。终端设备中可以安装有管理分布式存储系统中的数据的应用程序,当用户需要对分布式存储系统中存储的数据进行操作(例如,查看数据、删除数据或修改数据等)时,可以点击该应用程序的快捷方式图标。终端设备可以启动该应用程序,该应用程序可以获取登录页面。然后,终端设备可以显示该登录页面,用户可以通过用户名和密码登录分布式存储系统,此时,主副本服务器可以将用户存储的数据的相关信息(如各个文件的图标和名称,具体如文本文档的图标和名称、文件夹的图标和名称或视频文件的图标和名称等)发送给终端设备。终端设备可以显示上述信息,此时,如果用户需要将其中的某数据(即目标数据)删除,则可以选择该目标数据,并点击删除按键,此时,终端设备获取目标数据的数据标识、目标数据所在的目录及目标数据的存储路径等信息生成删除目标数据的操作请求,并将其发送给主副本服务器。主副本服务器可以根据删除目标数据的操作请求,生成相应的删除操作日志,具体处理可以参见上述实施例一和实施例二中的相关内容,在此不再赘述。
在步骤S502中,主副本服务器将上述删除操作日志存储于缓存设备中。
在实施中,分布式存储系统中的每一个服务器都可以包括缓存设备和存储设备,即主副本服务器和备副本服务器分别设置有存储设备和缓存设备。除了上述分布式存储系统外,还可以设置一个缓存设备,主副本服务器和备副本服务器中分别设置有存储设备,在此结构下,可以根据存储设备的存储空间将存储设备划分成多个子存储空间,每个子存储空间对应一个服务器,并作为相应服务器的缓存空间,这样,主副本服务器和备副本服务器都会对应有各自的缓存空间和缓存区域。
如果分布式存储系统中只包括一个缓存设备,则上述步骤S502的处理可以为:主副本服务器将上述删除操作日志存储于与主副本服务器相应的缓存区域中,其中,与主副本服务器相应的缓存区域为上述存储设备的缓存区域的一部分。
在步骤S503中,主副本服务器将缓存设备中的上述目标数据设置为无效。
在步骤S504中,主副本服务器删除存储设备中的上述目标数据。
上述步骤S503和步骤S504的具体处理过程可以参见上述实施例一和实施例二中的相关内容,在此不再赘述。
在步骤S505中,主副本服务器将上述删除操作日志发送给备副本服务器。
在实施中,如图6所示,主副本服务器可以通过广播的方式将上述删除操作日志传递给备副本服务器,这样,分布式存储系统中的每一个备副本服务器都可以获取到上述删除操作日志。
在步骤S506中,备副本服务器存储上述删除操作日志,将备副本服务器的缓存设备中的该目标数据设置为无效,删除备副本服务器的存储设备中的该目标数据。
在实施中,分布式存储系统存储数据的方式可以包括多种,例如,在主备份服务器中存储目标数据,同时,主副本服务器会将该目标数据发送给备副本服务器进行备份,或者,主副本服务器接收到目标数据后,将目标数据划分为多个子数据,可以将每个子数据分发给备副本服务器存储,同时,主副本服务器可以记录各个子数据所在的备副本服务器,而且,主副本服务器可以存储目标数据的部分数据,也可以不存储目标数据。
对于上述提供的后一种分布式存储系统的情况,主副本服务器可以根据删除目标数据的操作请求,确定目标数据的各个子数据所在的备副本服务器,然后,可以分别生成与各个子数据相应的删除操作日志,并将其发送给相应的备副本服务器。备副本服务器存储接收到删除操作日志,将备副本服务器的缓存设备中的该目标数据的子数据设置为无效,删除备副本服务器的存储设备中的该目标数据的子数据,具体处理过程可以参见上述实施例一和实施例二中的相关内容,在此不再赘述。
需要说明的是,上述步骤S505和步骤S506的处理在步骤S501之后执行,可以与步骤S502~步骤S504的处理同时执行,也可以在步骤S502~步骤S504的处理之后执行,还可以在步骤S502~步骤S504的处理之前执行,本申请实施例对此不做限定。
在步骤S507中,主副本服务器接收备副本服务器发送的上述目标数据的第一处理结果。
在实施中,当各个备副本服务器完成上述步骤S506的处理后,各个备副本服务器可以分别生成上述目标数据的第一处理结果,然后,每个备副本服务器可以将第一处理结果发送给主副本服务器,此时,主副本服务器可以接收到备副本服务器发送的上述目标数据的第一处理结果。
在步骤S508中,主副本服务器根据上述第一处理结果和本地设备对该目标数据的第二处理结果,生成处理结果通知消息,将该处理结果通知消息发送给终端设备。
在实施中,主副本服务器完成上述步骤S502~步骤S504的处理后,可以生成上述目标数据的第二处理结果。主副本服务器可以将第一处理结果和第二处理结果合并,生成处理结果通知消息。并可以将该处理结果通知消息发送给终端设备。终端设备可以显示该结果通知消息,用户可以通过显示的结果通知消息确定目标数据是否删除完成。
在步骤S509中,在主副本服务器和/或备副本服务器宕机重启后,获取预先存储的删除操作日志。
在实施中,如果主副本服务器和/或备副本服务器由于操作系统崩溃、同一时间访问量巨大或设备硬件损坏等原因造成宕机重启,此时,对于之前将目标数据设置为无效的处理可能不再有效,即目标数据恢复成为有效的状态,则可以从缓存设备中分别读取预先存储的删除操作日志,确定缓存设备中缓存的各个数据是否是用户已经删除的数据,如果缓存设备中没有存储某数据的删除操作日志,则可以确定缓存设备中存储的该数据需要写入存储设备中,此时,缓存设备可以与存储设备对比该数据的各个数据块的标识(如哈希值等),并将缓存设备中为存储的数据块发送给存储设备存储。如果缓存设备中存储的某数据对应有删除操作日志,则可以执行以下步骤S510的处理。
在步骤S510中,主副本服务器和/或备副本服务器根据上述删除操作日志,将缓存设备中与删除操作日志相对应的数据设置为无效。
上述步骤S510的处理过程可以参见上述实施例一~实施例四中的相关内容,在此不再赘述。
上述步骤S509和步骤S510的处理过程除了可以在步骤S508后执行,还可以如上述实施例四所示在步骤S501或步骤S502后执行。
本申请实施例提供一种数据处理方法,通过根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,然后,存储该删除操作日志,并将缓存设备中的目标数据设置为无效,然后,删除存储设备中的目标数据,这样,通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,由于删除操作日志是一条存储的数据,而不是预先设置的数据的属性等附加信息,因此,删除操作日志即使在设备异常,甚至宕机重启时仍然存在,从而有效防止缓存设备中的目标数据被重新写回存储设备,导致用户通过终端设备仍然读取到旧数据。
实施例六
以上为本申请实施例提供的数据处理方法,基于同样的思路,本申请实施例还提供一种数据处理装置,应用于包含缓存设备和存储设备的存储系统,如图7所示。
所述数据处理装置包括:日志生成模块701、日志存储模块702和数据删除模块703,其中:
所述日志生成模块701,用于根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志。
所述日志存储模块702,用于存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效。
所述数据删除模块703,用于删除所述存储设备中的所述目标数据。
本申请实施例中,所述装置还包括:
日志获取模块,用于获取预先存储的所述删除操作日志;
数据设置模块,用于根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的数据设置为无效。
本申请实施例中,所述装置还包括:
日志发送模块,用于将所述删除操作日志发送给备副本服务器,以使所述备副本服务器存储所述删除操作日志,将所述备副本服务器的缓存设备中的所述目标数据设置为无效,删除所述备副本服务器的存储设备中的所述目标数据。
本申请实施例中,所述装置还包括:
接收模块,用于接收所述备副本服务器发送的所述目标数据的第一处理结果;
结果通知发送模块,用于根据所述第一处理结果和本地设备对所述目标数据的第二处理结果,生成处理结果通知消息,将所述处理结果通知消息发送给终端设备。
本申请实施例中,所述删除操作日志中包括删除类型和/或删除操作优先级和/或所述目标数据的标识。
本申请实施例中,所述日志存储模块702,用于将所述删除操作日志存储于所述缓存设备中。
本申请实施例提供一种数据处理装置,通过根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,然后,存储该删除操作日志,并将缓存设备中的目标数据设置为无效,然后,删除存储设备中的目标数据,这样,通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,由于删除操作日志是一条存储的数据,而不是预先设置的数据的属性等附加信息,因此,删除操作日志即使在设备异常,甚至宕机重启时仍然存在,从而有效防止缓存设备中的目标数据被重新写回存储设备,导致用户通过终端设备仍然读取到旧数据。
实施例七
基于同样的思路,本申请实施例还提供一种数据处理装置,应用于包含缓存设备和存储设备的存储系统,如图8所示。
所述数据处理装置包括:日志获取模块801、数据设置模块802和数据删除模块803,其中:
日志获取模块801,用于在所述数据处理装置宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据;
数据设置模块802,用于根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的数据设置为无效;
数据删除模块803,用于删除所述存储设备中的所述目标数据。
本申请实施例中,所述装置还包括:
日志生成模块,用于根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志。
本申请实施例中,所述删除操作日志中包括删除类型和/或删除操作优先级和/或所述目标数据的标识。
本申请实施例提供一种数据处理装置,通过在本地设备宕机重启时,获取预先存储的用于删除存储系统中的目标数据的删除操作日志,进而根据该删除操作日志,将缓存设备中与删除操作日志相对应的目标数据设置为无效,并删除存储设备中的目标数据,这样,在设备宕机重启时,通过删除操作日志可以将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,可以防止缓存设备中的目标数据被重新写回存储设备,防止用户通过终端设备读取到旧数据。
实施例八
以上为本申请实施例提供的数据处理装置,基于同样的思路,本申请实施例还提供一种数据处理系统,如图6所示。
所述数据处理系统包括主副本服务器和备副本服务器,所述备副本服务器与所述主副本服务器相连接,其中:
所述主副本服务器根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,存储所述删除操作日志,并将所述主副本服务器的缓存设备中的所述目标数据设置为无效,删除所述主副本服务器的存储设备中的所述目标数据;
所述备副本服务器接收所述主副本服务器发送的所述删除操作日志,存储所述删除操作日志,将所述备副本服务器的缓存设备中的所述目标数据设置为无效,删除所述备副本服务器的存储设备中的所述目标数据。
本申请实施例中,所述主副本服务器在宕机重启时,获取预先存储的删除操作日志,并根据所述删除操作日志,将所述主副本服务器的缓存设备中与所述删除操作日志相对应的数据设置为无效,删除所述主副本服务器的存储设备中的所述目标数据,所述删除操作日志用于删除所述主副本服务器的存储系统中的目标数据。
本申请实施例中,所述备副本服务器在宕机重启时,获取预先存储的删除操作日志,并根据所述删除操作日志,将所述备副本服务器的缓存设备中与所述删除操作日志相对应的数据设置为无效,删除所述备副本服务器的存储设备中的所述目标数据,所述删除操作日志用于删除所述备副本服务器存储系统中的目标数据。
本申请实施例提供一种数据处理系统,通过根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,然后,存储该删除操作日志,并将缓存设备中的目标数据设置为无效,然后,删除存储设备中的目标数据,这样,通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,由于删除操作日志是一条存储的数据,而不是预先设置的数据的属性等附加信息,因此,删除操作日志即使在设备异常,甚至宕机重启时仍然存在,从而有效防止缓存设备中的目标数据被重新写回存储设备,导致用户通过终端设备仍然读取到旧数据。
实施例九
以上为本申请实施例提供的数据处理系统,基于同样的思路,本申请实施例还提供一种数据处理设备,如图9所示。
该数据处理设备可以为上述实施例提供的终端设备,如手机或平板电脑等。
数据处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器901和存储器902,存储器902中可以存储有一个或一个以上存储应用程序或数据。其中,存储器902可以是短暂存储或持久存储。存储在存储器902的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对数据处理设备中的一系列计算机可执行指令。更进一步地,处理器901可以设置为与存储器902通信,在数据处理设备上执行存储器902中的一系列计算机可执行指令。数据处理设备还可以包括一个或一个以上电源903,一个或一个以上有线或无线网络接口904,一个或一个以上输入输出接口905,一个或一个以上键盘906。
具体在本实施例中,数据处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志;
存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效;
删除所述存储设备中的所述目标数据。
可选地,所述可执行指令在被执行时,还可以使所述处理器:
在本地设备宕机重启后,获取预先存储的所述删除操作日志;
根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的数据设置为无效。
可选地,所述可执行指令在被执行时,还可以使所述处理器:
将所述删除操作日志发送给备副本服务器,以使所述备副本服务器存储所述删除操作日志,将所述备副本服务器的缓存设备中的所述目标数据设置为无效,删除所述备副本服务器的存储设备中的所述目标数据。
可选地,所述可执行指令在被执行时,还可以使所述处理器:
接收所述备副本服务器发送的所述目标数据的第一处理结果;
根据所述第一处理结果和本地设备对所述目标数据的第二处理结果,生成处理结果通知消息,将所述处理结果通知消息发送给终端设备。
可选地,所述删除操作日志中包括删除类型和/或删除操作优先级和/或所述目标数据的标识。
可选地,所述可执行指令在被执行时,还可以使所述处理器:
将所述删除操作日志存储于所述缓存设备中。
本申请实施例提供一种数据处理设备,通过根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,然后,存储该删除操作日志,并将缓存设备中的目标数据设置为无效,然后,删除存储设备中的目标数据,这样,通过将删除操作变成一条删除操作日志的方式,将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,由于删除操作日志是一条存储的数据,而不是预先设置的数据的属性等附加信息,因此,删除操作日志即使在设备异常,甚至宕机重启时仍然存在,从而有效防止缓存设备中的目标数据被重新写回存储设备,导致用户通过终端设备仍然读取到旧数据。
实施例十
基于同样的思路,本申请实施例还提供一种数据处理设备,如图10所示。
该数据处理设备可以为上述实施例提供的终端设备,如手机或平板电脑等。
数据处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器1001和存储器1002,存储器1002中可以存储有一个或一个以上存储应用程序或数据。其中,存储器1002可以是短暂存储或持久存储。存储在存储器1002的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对数据处理设备中的一系列计算机可执行指令。更进一步地,处理器1001可以设置为与存储器1002通信,在数据处理设备上执行存储器1002中的一系列计算机可执行指令。数据处理设备还可以包括一个或一个以上电源1003,一个或一个以上有线或无线网络接口1004,一个或一个以上输入输出接口1005,一个或一个以上键盘1006。
具体在本实施例中,数据处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
在本地设备宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据;
根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的目标数据设置为无效;
删除所述存储设备中的所述目标数据。
可选地,所述可执行指令在被执行时,还可以使所述处理器:
根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志。
可选地,所述删除操作日志中包括删除类型和/或删除操作优先级和/或所述目标数据的标识。
本申请实施例提供一种数据处理设备,通过在本地设备宕机重启时,获取预先存储的用于删除存储系统中的目标数据的删除操作日志,进而根据该删除操作日志,将缓存设备中与删除操作日志相对应的目标数据设置为无效,并删除存储设备中的目标数据,这样,在设备宕机重启时,通过删除操作日志可以将缓存设备中的目标数据置为无效,并回收存储设备中的目标数据,可以防止缓存设备中的目标数据被重新写回存储设备,防止用户通过终端设备读取到旧数据。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中目标的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中目标的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中目标的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (13)
1.一种数据处理方法,其特征在于,应用于包含缓存设备和存储设备的分布式存储系统,所述分布式存储系统包括多个备副本服务器,所述方法包括:
根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志;
存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效;
删除所述存储设备中的所述目标数据;
将所述删除操作日志发送给所述备副本服务器,以使所述备副本服务器在本地的缓存设备中存储所述删除操作日志,并在本地设备宕机重启后,将所述备副本服务器的缓存设备中与所述删除操作日志相对应的数据设置为无效,所述备副本服务器的缓存设备中缓存的数据与对应的所述删除操作日志具有相同的时效性。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述备副本服务器发送的所述目标数据的第一处理结果;
根据所述第一处理结果和本地设备对所述目标数据的第二处理结果,生成处理结果通知消息,将所述处理结果通知消息发送给终端设备。
3.根据权利要求1所述的方法,其特征在于,所述删除操作日志中包括删除类型和/或删除操作优先级和/或所述目标数据的标识。
4.根据权利要求1所述的方法,其特征在于,所述存储所述删除操作日志,包括:
将所述删除操作日志存储于所述缓存设备中。
5.一种数据处理方法,其特征在于,应用于包含缓存设备和存储设备的分布式存储系统,所述分布式存储系统包括多个备副本服务器,所述方法包括:
在所述备副本服务器宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据;
根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的目标数据设置为无效;
删除所述存储设备中的所述目标数据;
其中,所述删除操作日志与所述目标数据具有相同的时效性。
6.根据权利要求5所述的方法,其特征在于,所述获取预先存储的删除操作日志之前,所述方法还包括:
根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志。
7.根据权利要求5或6所述的方法,其特征在于,所述删除操作日志中包括删除类型和/或删除操作优先级和/或所述目标数据的标识。
8.一种数据处理装置,其特征在于,应用于包含缓存设备和存储设备的分布式存储系统,所述分布式存储系统包括多个备副本服务器,所述装置包括:
日志生成模块,用于根据删除所述存储系统中的目标数据的操作请求,生成相应的删除操作日志;
日志存储模块,用于存储所述删除操作日志,将所述缓存设备中的所述目标数据设置为无效;
数据删除模块,用于删除所述存储设备中的所述目标数据;
将所述删除操作日志发送给所述备副本服务器,以使所述备副本服务器在本地的缓存设备中存储所述删除操作日志,并在本地设备宕机重启后,将所述备副本服务器的缓存设备中与所述删除操作日志相对应的数据设置为无效,所述备副本服务器的缓存设备中缓存的数据与对应的所述删除操作日志具有相同的时效性。
9.一种数据处理装置,其特征在于,应用于包含缓存设备和存储设备的分布式存储系统,所述分布式存储系统包括多个备副本服务器,所述装置包括:
日志获取模块,用于在所述数据处理装置宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据;
数据设置模块,用于根据所述删除操作日志,将所述缓存设备中与所述删除操作日志相对应的数据设置为无效;
数据删除模块,用于删除所述存储设备中的所述目标数据;
其中,所述删除操作日志与所述目标数据具有相同的时效性。
10.一种数据处理系统,其特征在于,所述系统包括主副本服务器和备副本服务器,所述备副本服务器与所述主副本服务器相连接,其中:
所述主副本服务器根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志,存储所述删除操作日志,并将所述主副本服务器的缓存设备中的所述目标数据设置为无效,删除所述主副本服务器的存储设备中的所述目标数据;
所述备副本服务器接收所述主副本服务器发送的所述删除操作日志,存储所述删除操作日志,将所述备副本服务器的缓存设备中的所述目标数据设置为无效,删除所述备副本服务器的存储设备中的所述目标数据;
其中,所述备副本服务器宕机重启后,将所述备副本服务器的缓存设备中与所述删除操作日志相对应的数据设置为无效,所述备副本服务器的缓存设备中缓存的数据与对应的所述删除操作日志具有相同的时效性。
11.根据权利要求10所述的系统,其特征在于,所述备副本服务器在宕机重启时,获取预先存储的删除操作日志,并根据所述删除操作日志,将所述备副本服务器的缓存设备中与所述删除操作日志相对应的数据设置为无效,删除所述备副本服务器的存储设备中的所述目标数据,所述删除操作日志用于删除所述备副本服务器存储系统中的目标数据。
12.一种数据处理设备,其特征在于,所述数据处理设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
根据删除存储系统中的目标数据的操作请求,生成相应的删除操作日志;
存储所述删除操作日志,将缓存设备中的所述目标数据设置为无效;
删除所述存储设备中的所述目标数据;
将所述删除操作日志发送给备副本服务器,以使所述备副本服务器在本地的缓存设备中存储所述删除操作日志,并在本地设备宕机重启后,将所述备副本服务器的缓存设备中与所述删除操作日志相对应的数据设置为无效,所述备副本服务器的缓存设备中缓存的数据与对应的所述删除操作日志具有相同的时效性。
13.一种数据处理设备,其特征在于,所述数据处理设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在所述数据处理设备宕机重启时,获取预先存储的删除操作日志,所述删除操作日志用于删除所述存储系统中的目标数据,所述数据处理设备为分布式存储系统中的备副本服务器;
根据所述删除操作日志,将缓存设备中与所述删除操作日志相对应的目标数据设置为无效;
删除所述存储设备中的所述目标数据;
其中,所述删除操作日志与所述目标数据具有相同的时效性。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710589060.5A CN109284066B (zh) | 2017-07-19 | 2017-07-19 | 一种数据处理方法、装置、设备及系统 |
PCT/CN2018/094828 WO2019015490A1 (zh) | 2017-07-19 | 2018-07-06 | 一种数据处理方法、装置、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710589060.5A CN109284066B (zh) | 2017-07-19 | 2017-07-19 | 一种数据处理方法、装置、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109284066A CN109284066A (zh) | 2019-01-29 |
CN109284066B true CN109284066B (zh) | 2022-09-30 |
Family
ID=65016546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710589060.5A Active CN109284066B (zh) | 2017-07-19 | 2017-07-19 | 一种数据处理方法、装置、设备及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109284066B (zh) |
WO (1) | WO2019015490A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110147480A (zh) * | 2019-04-15 | 2019-08-20 | 腾讯科技(深圳)有限公司 | 一种数据拉取方法、设备及存储介质 |
CN112181277B (zh) * | 2019-07-03 | 2022-10-04 | 浙江宇视科技有限公司 | 一种数据存储空间管理方法、装置、存储介质及电子设备 |
CN110377235B (zh) * | 2019-07-26 | 2023-04-07 | Oppo(重庆)智能科技有限公司 | 数据处理方法、装置、移动终端及计算机可读存储介质 |
KR20220051749A (ko) * | 2020-10-19 | 2022-04-26 | 삼성전자주식회사 | 차량에 탑재된 전자 장치 및 그 동작 방법 |
CN113722401B (zh) * | 2021-11-04 | 2022-02-01 | 树根互联股份有限公司 | 数据缓存方法、装置、计算机设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103138912A (zh) * | 2011-12-05 | 2013-06-05 | 阿里巴巴集团控股有限公司 | 数据同步方法及系统 |
CN103714014A (zh) * | 2013-11-18 | 2014-04-09 | 华为技术有限公司 | 处理缓存数据的方法 |
CN103929472A (zh) * | 2014-03-21 | 2014-07-16 | 珠海多玩信息技术有限公司 | 数据处理方法、装置及系统 |
CN105589887A (zh) * | 2014-10-24 | 2016-05-18 | 中兴通讯股份有限公司 | 分布式文件系统的数据处理方法及分布式文件系统 |
CN105677258A (zh) * | 2016-02-23 | 2016-06-15 | 浪潮(北京)电子信息产业有限公司 | 一种日志数据管理方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024032A (zh) * | 2010-11-29 | 2011-04-20 | 广州明朝网络科技有限公司 | 一种基于Erlang的分布式数据缓存和持久化的方法和系统 |
KR101475483B1 (ko) * | 2013-06-27 | 2014-12-19 | 이화여자대학교 산학협력단 | 비휘발성 버퍼 캐시와 비휘발성 스토리지를 위한 통합 데이터 관리 장치 및 방법 |
US9501418B2 (en) * | 2014-06-26 | 2016-11-22 | HGST Netherlands B.V. | Invalidation data area for cache |
US10353895B2 (en) * | 2015-11-24 | 2019-07-16 | Sap Se | Atomic visibility switch for transactional cache invalidation |
-
2017
- 2017-07-19 CN CN201710589060.5A patent/CN109284066B/zh active Active
-
2018
- 2018-07-06 WO PCT/CN2018/094828 patent/WO2019015490A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103138912A (zh) * | 2011-12-05 | 2013-06-05 | 阿里巴巴集团控股有限公司 | 数据同步方法及系统 |
CN103714014A (zh) * | 2013-11-18 | 2014-04-09 | 华为技术有限公司 | 处理缓存数据的方法 |
CN103929472A (zh) * | 2014-03-21 | 2014-07-16 | 珠海多玩信息技术有限公司 | 数据处理方法、装置及系统 |
CN105589887A (zh) * | 2014-10-24 | 2016-05-18 | 中兴通讯股份有限公司 | 分布式文件系统的数据处理方法及分布式文件系统 |
CN105677258A (zh) * | 2016-02-23 | 2016-06-15 | 浪潮(北京)电子信息产业有限公司 | 一种日志数据管理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109284066A (zh) | 2019-01-29 |
WO2019015490A1 (zh) | 2019-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109284066B (zh) | 一种数据处理方法、装置、设备及系统 | |
US9619478B1 (en) | Method and system for compressing logs | |
US20150032690A1 (en) | Virtual synchronization with on-demand data delivery | |
US11093387B1 (en) | Garbage collection based on transmission object models | |
US10891074B2 (en) | Key-value storage device supporting snapshot function and operating method thereof | |
JP2019519025A (ja) | 分散システムにおける範囲の分割および移動 | |
CN110807013B (zh) | 用于分布式数据存储集群的数据迁移方法和装置 | |
US10609141B2 (en) | Methods and apparatuses for cluster switching | |
US20170357680A1 (en) | System and method for maintaining a multi-level data structure | |
CN112416710A (zh) | 用户操作的记录方法、装置、电子设备及存储介质 | |
CN108572888B (zh) | 磁盘快照创建方法和磁盘快照创建装置 | |
CN104965835A (zh) | 一种分布式文件系统的文件读写方法及装置 | |
US10467190B2 (en) | Tracking access pattern of inodes and pre-fetching inodes | |
US20150302021A1 (en) | Storage system | |
CN110895545B (zh) | 共享数据同步方法及装置 | |
CN109062602B (zh) | 一种针对应用程序的数据处理方法、装置及电子设备 | |
EP3449372A1 (en) | Fault-tolerant enterprise object storage system for small objects | |
US8595271B1 (en) | Systems and methods for performing file system checks | |
CN109542860B (zh) | 基于hdfs的业务数据管理方法、终端设备 | |
US10235293B2 (en) | Tracking access pattern of inodes and pre-fetching inodes | |
US20190050455A1 (en) | Adaptive page rendering for a data management system | |
US10678453B2 (en) | Method and device for checking false sharing in data block deletion using a mapping pointer and weight bits | |
CN115391337A (zh) | 数据库分区的方法、装置、存储介质及电子设备 | |
US11552861B2 (en) | Efficient way to perform location SLO validation | |
CN109324931B (zh) | 在重复数据删除系统中实现vmware挂载恢复的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |