CN111382180B - 一种本地缓存的数据清除方法和装置 - Google Patents
一种本地缓存的数据清除方法和装置 Download PDFInfo
- Publication number
- CN111382180B CN111382180B CN202010167789.5A CN202010167789A CN111382180B CN 111382180 B CN111382180 B CN 111382180B CN 202010167789 A CN202010167789 A CN 202010167789A CN 111382180 B CN111382180 B CN 111382180B
- Authority
- CN
- China
- Prior art keywords
- cache
- dependency
- identifier
- data
- item
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000001419 dependent effect Effects 0.000 claims description 36
- 238000003860 storage Methods 0.000 claims description 8
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 17
- 238000010586 diagram Methods 0.000 description 12
- 238000004140 cleaning Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种本地缓存的清除方法及装置,本地缓存可以通过获取数据更新消息,并从数据更新消息中得到第一依赖项标识,接着获取缓存依赖表单,当缓存依赖表单中存在与第一依赖项标识匹配的缓存依赖项时,则从缓存依赖表单中删除与第一依赖项标识匹配的缓存依赖关系,并从本地缓存中删除与第一依赖项标识对应的第一缓存数据,从而通过缓存依赖表单中记录的缓存标识与缓存依赖项之间的缓存依赖关系,配合数据更新通知,实现本地缓存中缓存数据的自动清理,简化了缓存更新的过程,以及清理代码的编写,提升了系统的可用性。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种本地缓存的数据清除方法和一种本地缓存的数据清除装置。
背景技术
在Web服务端的应用程序开发过程中,经常会使用到各种缓存技术来加速请求响应速度,通过将需要访问的资源,存储于内存中,占用一定的内存空间,然后从内存空间中获取数据,进而减少从数据库读取数据,或资源文件的次数,从而提升系统的吞吐量。为了更好地发挥缓存技术的作用,可能会涉及缓存依赖关系,但由于复杂的缓存依赖关系会导致缓存清除、代码维护变得十分困难,导致系统可用性变差。
发明内容
本发明实施例是提供一种本地缓存的数据清除方法,以解决现有技术中缓存清除和更新过程复杂的问题。
相应的,本发明实施例还提供了一种本地缓存的数据清除装置,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种本地缓存的数据清除方法,包括:
获取数据更新消息,所述数据更新消息包括第一依赖项标识;
获取缓存依赖表单,所述缓存依赖表单包括缓存标识与缓存依赖项之间的缓存依赖关系;
当所述缓存依赖表单中存在与所述第一依赖项标识匹配的缓存依赖项时,则从所述缓存依赖表单中删除与所述第一依赖项标识匹配的缓存依赖关系;
从本地缓存中删除与所述第一依赖项标识对应的第一缓存数据。
可选地,所述当所述缓存依赖表单中存在与所述第一缓存标识匹配的缓存标识时,则从所述缓存依赖表单中删除与所述第一缓存标识匹配的缓存依赖关系,包括:
从所述缓存依赖表单中,查找与所述第一依赖项标识匹配的第一缓存依赖项;
根据所述缓存依赖关系,确定与所述第一缓存依赖项对应的第一缓存标识;
从所述缓存依赖表单中,删除与所述第一缓存标识匹配的第一缓存依赖关系。
可选地,还包括:
获取待缓存内容的第二缓存标识;
当所述本地缓存中不存在所述第二缓存标识对应的缓存内容时,则获取所述待缓存内容的第二缓存数据;
根据所述第二缓存数据与所述第二缓存标识,生成所述缓存依赖表单;
将所述待缓存内容存储于所述本地缓存中。
可选地,所述根据所述第二缓存数据与所述第二缓存标识,生成所述缓存依赖表单,包括:
从所述待缓存内容中,提取与所述第二缓存数据匹配的第二缓存依赖项;
建立所述第二缓存标识与所述第二缓存依赖项之间的对应关系,生成所述缓存依赖表单。
本发明实施例还公开了一种本地缓存的数据清除装置,包括:
更新消息获取模块,用于获取数据更新消息,所述数据更新消息包括第一依赖项标识;
表单获取模块,用于获取缓存依赖表单,所述缓存依赖表单包括缓存标识与缓存依赖项之间的缓存依赖关系;
缓存依赖关系删除模块,用于当所述缓存依赖表单中存在与所述第一依赖项标识匹配的缓存依赖项时,则从所述缓存依赖表单中删除与所述第一依赖项标识匹配的缓存依赖关系;
缓存数据删除模块,用于从本地缓存中删除与所述第一依赖项标识对应的第一缓存数据。
可选地,所述缓存依赖关系删除模块包括:
缓存依赖项查找子模块,用于从所述缓存依赖表单中,查找与所述第一依赖项标识匹配的第一缓存依赖项;
缓存标识确定子模块,用于根据所述缓存依赖关系,确定与所述第一缓存依赖项对应的第一缓存标识;
缓存依赖关系删除子模块,用于从所述缓存依赖表单中,删除与所述第一缓存标识匹配的第一缓存依赖关系。
可选地,还包括:
缓存标识获取模块,用于获取待缓存内容的第二缓存标识;
缓存内容查找模块,用于当所述本地缓存中不存在所述第二缓存标识对应的缓存内容时,则获取所述待缓存内容的第二缓存数据;
表单生成模块,用于根据所述第二缓存数据与所述第二缓存标识,生成所述缓存依赖表单;
缓存内容存储模块,用于将所述待缓存内容存储于所述本地缓存中。
可选地,所述表单生成模块包括:
依赖项提取子模块,用于从所述待缓存内容中,提取与所述第二缓存数据匹配的第二缓存依赖项;
表单生成子模块,用于建立所述第二缓存标识与所述第二缓存依赖项之间的对应关系,生成所述缓存依赖表单。
本发明实施例还公开了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如上所述的一个或多个的方法。
本发明实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。
本发明实施例包括以下优点:
在本发明实施例中,本地缓存可以通过获取数据更新消息,并从数据更新消息中得到第一依赖项标识,接着获取缓存依赖表单,当缓存依赖表单中存在与第一依赖项标识匹配的缓存依赖项时,则从缓存依赖表单中删除与第一依赖项标识匹配的缓存依赖关系,并从本地缓存中删除与第一依赖项标识对应的第一缓存数据,从而通过缓存依赖表单中记录的缓存标识与缓存依赖项之间的缓存依赖关系,配合数据更新通知,实现本地缓存中缓存数据的自动清理,简化了缓存更新的过程,以及清理代码的编写,提升了系统的可用性。
附图说明
图1是本发明的一种本地缓存的数据清除方法实施例一的步骤流程图;
图2是本发明实施例中缓存数据的处理示意图;
图3是本发明的一种本地缓存的数据清除方法实施例二的步骤流程图;
图4是本发明实施例中缓存依赖表单的生成示意图;
图5是本发明的一种本地缓存的数据清除装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
缓存数据可以为将需要访问的数据,放入本地内容中,占用一定的内存空间,从而通过读取内容中的数据,减少读取数据库的次数,或读取资源文件的次数。
缓存依赖可以为缓存管理器通过监测缓存依赖项(文件、表单或数据库)的读写,来确定缓存数据是否过期的一种机制。例如,缓存依赖项是123.txt文件,缓存数据是234.txt中的数据,那么缓存管理器可通过监测123.txt文件中数据的是否变化,来移除缓存234.txt文件的数据。
参照图1,示出了本发明的一种本地缓存的数据清除方法实施例一的步骤流程图,具体可以包括如下步骤:
步骤101,获取数据更新消息,所述数据更新消息包括第一依赖项标识;
作为一种示例,在Web服务端的应用程序开发过程中,开发人员经常会使用到各种缓存技术来加速请求响应速度,通过将需要访问的资源,存储于本地缓存中,占用一定的内存空间,然后从内存空间中获取数据,进而减少从数据库读取数据,或资源文件的次数,一方面可以提升系统的吞吐量,另一方面通过对数据进行缓存,使得应用程序可以进行离线访问,如应用程序可以对一篇文章所涉及的数据进行缓存,则在离线状态下,应用程序也可以从本地缓存中读取相应的数据,并将文章呈现给用户。
在本发明实施例中,应用程序可以包括消息中间件以及缓存管理器等,消息中间件可以用于在应用程序和数据库(或服务器)之间提供同步和异步的连接,并且在任何时刻都可以将消息进行传送或者存储转发,缓存管理器可以用于对应用程序相关的缓存数据进行管理,如清除、存储等等。
在数据库(或服务器)中可以存储应用程序使用过程中所需要的业务数据,当业务数据发生变化时,可以发送数据更新消息至应用程序。应用程序可以从数据更新消息中得到第一依赖项标识,以便根据第一依赖项标识从本地缓存中确定对应的缓存数据,并进行处理。
步骤102,获取缓存依赖表单,所述缓存依赖表单包括缓存标识与缓存依赖项之间的缓存依赖关系;
在本地缓存中可以维护一缓存依赖表单,缓存依赖表单中可以包括缓存标识与缓存依赖项之间的缓存依赖关系。具体的,每一个缓存内容可以对应唯一的缓存标识,一个缓存内容可以依赖于多个缓存依赖项,不同的缓存内容可以依赖于不同的缓存依赖项,也可以依赖于相同的缓存依赖项,即缓存内容与缓存依赖项之间可以是一对多的关系,也可以是多对多的关系。其中,缓存依赖项可以为影响缓存数据有效性的对象或者内容,可以包括具体对象、数量对象、最新内容对象等等。
在一种示例中,以缓存内容与缓存依赖项之间的关系为一对多的关系,且各缓存内容对应不同的缓存依赖项为例,假设缓存内容为文章,与文章对应的缓存依赖项可以包括文章的文章内容、作者信息、评论信息以及文章评论总数等等。其中,每一个缓存依赖项可以对应唯一的依赖项标识,其可以按照类型与ID的形式进行表示,则缓存内容、缓存依赖项之间的关系可以如表1所示:
表1
则可以在本地缓存中维护缓存依赖表单,使得对缓存内容对应的缓存依赖项进行查找时,可以不依赖于关系型数据库等根据字段检索的存储方式,通过缓存依赖表单中记录的缓存标识与缓存依赖项之间的缓存依赖关系,可以快速确定缓存内容的缓存依赖项,大大增加了缓存数据清理的效率。其中,可以按照一定的顺序,如时间顺序或数据的优先级顺序等对缓存依赖表单进行排序,则缓存标识与缓存依赖项之间的关系可以如表2所示:
缓存依赖项 | 缓存标识 |
文章内容① | 文章标识① |
作者信息① | 文章标识① |
评论信息① | 文章标识① |
文章1评论总数 | 文章标识① |
文章内容② | 文章标识② |
作者信息② | 文章标识② |
评论信息② | 文章标识② |
文章2评论总数 | 文章标识② |
文章内容③ | 文章标识③ |
作者信息③ | 文章标识③ |
评论信息③ | 文章标识③ |
文章3评论总数 | 文章标识③ |
表2
需要说明的是,当缓存内容与缓存依赖项为多对多的关系时,即不同的缓存内容可以对应相同的缓存依赖项,如文章标识①与文章标识②均对应相同的作者信息①,文章标识①对应文章内容①,文章标识②对应文章内容②等等,本发明对此不作限制。
步骤103,当所述缓存依赖表单中存在与所述第一依赖项标识匹配的缓存依赖项时,则从所述缓存依赖表单中删除与所述第一依赖项标识匹配的缓存依赖关系;
步骤104,从本地缓存中删除与所述第一依赖项标识对应的第一缓存数据。
如图2所示,示出了本发明实施例中缓存数据的处理示意图,消息中间件将数据更新消息传输至缓存管理器后,缓存管理器可以得到第一缓存依赖项标识,然后从缓存依赖表单中查找是否存在于该第一缓存依赖项标识相同的缓存依赖项标识,当缓存依赖表单中存在与第一依赖项标识匹配的缓存依赖项时,则从缓存依赖表单中删除与第一依赖项标识匹配的缓存依赖关系。并且,将与第一缓存依赖项标识对应的第一缓存数据从本地缓存中删除,从而通过缓存依赖表单中记录的缓存标识与缓存依赖项之间的缓存依赖关系,配合数据更新通知,实现本地缓存中缓存数据的自动清理,简化了缓存更新的过程,以及清理代码的编写,提升了系统的可用性。
在本发明实施例中,本地缓存可以通过获取数据更新消息,并从数据更新消息中得到第一依赖项标识,接着获取缓存依赖表单,当缓存依赖表单中存在与第一依赖项标识匹配的缓存依赖项时,则从缓存依赖表单中删除与第一依赖项标识匹配的缓存依赖关系,并从本地缓存中删除与第一依赖项标识对应的第一缓存数据,从而通过缓存依赖表单中记录的缓存标识与缓存依赖项之间的缓存依赖关系,配合数据更新通知,实现本地缓存中缓存数据的自动清理,简化了缓存更新的过程,以及清理代码的编写,提升了系统的可用性。
参照图3,示出了本发明的一种本地缓存的数据清除方法实施例二的步骤流程图,具体可以包括如下步骤:
步骤301,获取数据更新消息,所述数据更新消息包括第一依赖项标识;
在本发明的一种可选实施例中,可以先对缓存清理机制进行处理,通过获取待缓存内容的第二缓存标识,当本地缓存中不存在第二缓存标识对应的缓存内容时,则获取待缓存内容的第二缓存数据,根据第二缓存数据与第二缓存标识,生成缓存依赖表单,将待缓存内容存储于本地缓存中。
具体的,可以根据待缓存内容的第二缓存标识,在本地缓存中查找是否存在对应的缓存内容,若待缓存内容不存在于本地缓存中,则先从待缓存内容中,提取与第二缓存数据匹配的第二缓存依赖项,同时将第二缓存标识作为该待缓存内容的唯一标识,以保证不同的缓存内容使用不同的标识,有利于对缓存内容进行管理。然后建立第二缓存标识与第二缓存依赖项之间的对应关系,生成缓存依赖表单,接着将缓存依赖表单与第二缓存数据进行存储。
在一种示例中,如图4所示,示出了本发明实施例中缓存依赖表单的生成示意图,假设待缓存内容为文章,则可以先根据文章标识从本地缓存中查找是否存在该文章对应的缓存数据,当本地缓存中不存在该文章对应的缓存数据时,则根据文章对应的缓存数据,确定缓存依赖项。例如,该文章可以包括文章内容、作者信息、评论信息、文章评论总数等缓存数据,则进行计算,确定各缓存数据匹配的缓存依赖项,并将该文章的文章标识作为本地缓存数据的唯一标识,建立缓存标识与缓存依赖项之间的对应关系,生成缓存依赖表单,然后将缓存依赖表单存储于数据库或者noSQL等存储空间中,并将文章对应的缓存数据存储于分布式缓存存储中。
需要说明的是,本发明实施例包括但不限于上述示例,可以理解的是,在本发明实施例的思想指导下,本领域技术人员可以根据实际情况进行设置,本发明对此不作限制。
当数据库(或服务器)中的业务数据发生变化时,可以发送数据更新消息至应用程序。应用程序可以从数据更新消息中得到第一依赖项标识,以便根据第一依赖项标识从本地缓存中确定对应的缓存数据,并进行处理。
步骤302,获取缓存依赖表单,所述缓存依赖表单包括缓存标识与缓存依赖项之间的缓存依赖关系;
在本地缓存中可以维护一缓存依赖表单,缓存依赖表单中可以包括缓存标识与缓存依赖项之间的缓存依赖关系。具体的,每一个缓存内容可以对应唯一的缓存标识,一个缓存内容可以依赖于多个缓存依赖项,不同的缓存内容依赖于不同的缓存依赖项。其中,缓存依赖项可以为影响缓存数据有效性的对象或者内容,可以包括具体对象、数量对象、最新内容对象等等。
步骤303,从所述缓存依赖表单中,查找与所述第一依赖项标识匹配的第一缓存依赖项;
当得到第一依赖项标识后,可以从缓存依赖表单中,查找与该第一依赖项标识对应的缓存依赖项。具体的,数据更新消息中第一依赖项标识可以为数据库(或服务器)中发生变化的数据的标识,则可以通过第一依赖项标识,从缓存依赖表单中,确定本地缓存中是否有缓存数据依赖于该第一依赖项标识对应的缓存依赖项。
步骤304,根据所述缓存依赖关系,确定与所述第一缓存依赖项对应的第一缓存标识;
在一种示例中,假设第一依赖项标识对应的业务数据为文章,其缓存依赖表单如下表3所示:
缓存依赖项 | 缓存标识 |
文章内容① | 文章标识① |
作者信息① | 文章标识① |
评论信息① | 文章标识① |
文章1评论总数 | 文章标识① |
文章内容② | 文章标识② |
作者信息② | 文章标识② |
评论信息② | 文章标识② |
文章2评论总数 | 文章标识② |
文章内容③ | 文章标识③ |
作者信息③ | 文章标识③ |
评论信息③ | 文章标识③ |
文章3评论总数 | 文章标识③ |
表3
则当第一依赖项标识为“Author,1”时,可以确定该依赖项标识对应的缓存依赖项为“作者信息①”,根据表3中的缓存依赖关系,可以得知文章①依赖于该缓存依赖项,可以确定“Author,1”对应的缓存标识为“文章标识①”。
步骤305,从所述缓存依赖表单中,删除与所述第一缓存标识匹配的第一缓存依赖关系;
步骤306,从本地缓存中删除与所述第一依赖项标识对应的第一缓存数据。
在具体实现中,当数据库(或服务器)中业务数据的一个数据发生变化时,则本地缓存中的缓存数据已经过期,可以对其进行删除处理。
在一种示例中,假设第一依赖项标识为“Author,1”,其对应的缓存标识为“文章标识①”,则需要从缓存依赖关系中提取与“文章标识①”对应的缓存依赖关系,包括“文章内容①”-“文章标识①”、“作者信息①”-“文章标识①”、“评论信息①”-“文章标识①”以及“文章1评论总数”“-文章标识①”等缓存依赖关系,然后将这些缓存依赖关系从缓存依赖表单中全部删除,同时从本地缓存中,删除与该文章①对应的“文章内容①”、“作者信息①”、“评论信息①”以及“文章1评论总数”等缓存数据,从而通过缓存依赖表单中记录的缓存标识与缓存依赖项之间的缓存依赖关系,配合数据更新通知,实现本地缓存中缓存数据的自动清理,简化了缓存更新的过程,以及清理代码的编写,提升了系统的可用性。
需要说明的是,本发明实施例包括但不限于上述示例,可以理解的是,在本发明实施例的思想指导下,本领域技术人员可以对其他类型的业务数据进行清理,如视频文件、图片文件等等,本发明对此不作限制。
在本发明实施例中,本地缓存可以通过获取数据更新消息,并从数据更新消息中得到第一依赖项标识,接着获取缓存依赖表单,当缓存依赖表单中存在与第一依赖项标识匹配的缓存依赖项时,则从缓存依赖表单中删除与第一依赖项标识匹配的缓存依赖关系,并从本地缓存中删除与第一依赖项标识对应的第一缓存数据,从而通过缓存依赖表单中记录的缓存标识与缓存依赖项之间的缓存依赖关系,配合数据更新通知,实现本地缓存中缓存数据的自动清理,简化了缓存更新的过程,以及清理代码的编写,提升了系统的可用性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图5,示出了本发明的一种本地缓存的数据清除装置实施例的结构框图,具体可以包括如下模块:
更新消息获取模块501,用于获取数据更新消息,所述数据更新消息包括第一依赖项标识;
表单获取模块502,用于获取缓存依赖表单,所述缓存依赖表单包括缓存标识与缓存依赖项之间的缓存依赖关系;
缓存依赖关系删除模块503,用于当所述缓存依赖表单中存在与所述第一依赖项标识匹配的缓存依赖项时,则从所述缓存依赖表单中删除与所述第一依赖项标识匹配的缓存依赖关系;
缓存数据删除模块504,用于从本地缓存中删除与所述第一依赖项标识对应的第一缓存数据。
在本发明实施例的一种可选实施例中,所述缓存依赖关系删除模块503包括:
缓存依赖项查找子模块,用于从所述缓存依赖表单中,查找与所述第一依赖项标识匹配的第一缓存依赖项;
缓存标识确定子模块,用于根据所述缓存依赖关系,确定与所述第一缓存依赖项对应的第一缓存标识;
缓存依赖关系删除子模块,用于从所述缓存依赖表单中,删除与所述第一缓存标识匹配的第一缓存依赖关系。
在本发明实施例的一种可选实施例中,还包括:
缓存标识获取模块,用于获取待缓存内容的第二缓存标识;
缓存内容查找模块,用于当所述本地缓存中不存在所述第二缓存标识对应的缓存内容时,则获取所述待缓存内容的第二缓存数据;
表单生成模块,用于根据所述第二缓存数据与所述第二缓存标识,生成所述缓存依赖表单;
缓存内容存储模块,用于将所述待缓存内容存储于所述本地缓存中。
在本发明实施例的一种可选实施例中,所述表单生成模块包括:
依赖项提取子模块,用于从所述待缓存内容中,提取与所述第二缓存数据匹配的第二缓存依赖项;
表单生成子模块,用于建立所述第二缓存标识与所述第二缓存依赖项之间的对应关系,生成所述缓存依赖表单。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行本发明实施例所述的方法。
本发明实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行本发明实施例所述的方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种本地缓存的数据清除方法和一种本地缓存的数据清除装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种本地缓存的数据清除方法,其特征在于,包括:
获取数据更新消息,所述数据更新消息包括第一依赖项标识;
获取缓存依赖表单,所述缓存依赖表单包括缓存标识与缓存依赖项之间的缓存依赖关系,每一所述缓存依赖项对应唯一的依赖项标识;
当所述缓存依赖表单中存在与所述第一依赖项标识匹配的第一缓存依赖项时,则从所述缓存依赖表单中删除所述第一缓存依赖项对应的第一缓存依赖关系,所述第一缓存依赖关系至少包括:所述第一依赖项标识对应的第一缓存标识与至少两个缓存依赖项之间的缓存依赖关系;
从本地缓存中删除与所述第一依赖项标识对应的第一缓存数据,所述第一缓存数据包括与所述第一缓存标识存在缓存依赖关系的各个缓存依赖项对应的数据。
2.根据权利要求1所述的方法,其特征在于,所述当所述缓存依赖表单中存在与所述第一依赖项标识匹配的第一缓存依赖项时,则从所述缓存依赖表单中删除所述第一缓存依赖项对应的第一缓存依赖关系,包括:
从所述缓存依赖表单中,查找与所述第一依赖项标识匹配的第一缓存依赖项;
根据所述缓存依赖关系,确定与所述第一缓存依赖项对应的第一缓存标识;
从所述缓存依赖表单中,删除与所述第一缓存标识匹配的第一缓存依赖关系。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
获取待缓存内容的第二缓存标识;
当所述本地缓存中不存在所述第二缓存标识对应的缓存内容时,则获取所述待缓存内容的第二缓存数据;
根据所述第二缓存数据与所述第二缓存标识,生成所述缓存依赖表单;
将所述待缓存内容存储于所述本地缓存中。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第二缓存数据与所述第二缓存标识,生成所述缓存依赖表单,包括:
从所述待缓存内容中,提取与所述第二缓存数据匹配的第二缓存依赖项;
建立所述第二缓存标识与所述第二缓存依赖项之间的对应关系,生成所述缓存依赖表单。
5.一种本地缓存的数据清除装置,其特征在于,包括:
更新消息获取模块,用于获取数据更新消息,所述数据更新消息包括第一依赖项标识;
表单获取模块,用于获取缓存依赖表单,所述缓存依赖表单包括缓存标识与缓存依赖项之间的缓存依赖关系,每一所述缓存依赖项对应唯一的依赖项标识;
缓存依赖关系删除模块,用于当所述缓存依赖表单中存在与所述第一依赖项标识匹配的第一缓存依赖项时,则从所述缓存依赖表单中删除所述第一缓存依赖项对应的第一缓存依赖关系,所述第一缓存依赖关系至少包括:所述第一依赖项标识对应的第一缓存标识与至少两个缓存依赖项之间的缓存依赖关系;
缓存数据删除模块,用于从本地缓存中删除与所述第一依赖项标识对应的第一缓存数据,所述第一缓存数据包括与所述第一缓存标识存在缓存依赖关系的各个缓存依赖项对应的数据。
6.根据权利要求5所述的装置,其特征在于,所述缓存依赖关系删除模块包括:
缓存依赖项查找子模块,用于从所述缓存依赖表单中,查找与所述第一依赖项标识匹配的第一缓存依赖项;
缓存标识确定子模块,用于根据所述缓存依赖关系,确定与所述第一缓存依赖项对应的第一缓存标识;
缓存依赖关系删除子模块,用于从所述缓存依赖表单中,删除与所述第一缓存标识匹配的第一缓存依赖关系。
7.根据权利要求5或6所述的装置,其特征在于,还包括:
缓存标识获取模块,用于获取待缓存内容的第二缓存标识;
缓存内容查找模块,用于当所述本地缓存中不存在所述第二缓存标识对应的缓存内容时,则获取所述待缓存内容的第二缓存数据;
表单生成模块,用于根据所述第二缓存数据与所述第二缓存标识,生成所述缓存依赖表单;
缓存内容存储模块,用于将所述待缓存内容存储于所述本地缓存中。
8.根据权利要求7所述的装置,其特征在于,所述表单生成模块包括:
依赖项提取子模块,用于从所述待缓存内容中,提取与所述第二缓存数据匹配的第二缓存依赖项;
表单生成子模块,用于建立所述第二缓存标识与所述第二缓存依赖项之间的对应关系,生成所述缓存依赖表单。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1-4任一项所述的方法。
10.一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010167789.5A CN111382180B (zh) | 2020-03-11 | 2020-03-11 | 一种本地缓存的数据清除方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010167789.5A CN111382180B (zh) | 2020-03-11 | 2020-03-11 | 一种本地缓存的数据清除方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111382180A CN111382180A (zh) | 2020-07-07 |
CN111382180B true CN111382180B (zh) | 2024-04-26 |
Family
ID=71219029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010167789.5A Active CN111382180B (zh) | 2020-03-11 | 2020-03-11 | 一种本地缓存的数据清除方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111382180B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897819A (zh) * | 2020-07-31 | 2020-11-06 | 平安普惠企业管理有限公司 | 数据存储方法、装置、电子设备及存储介质 |
CN113822866A (zh) * | 2021-09-23 | 2021-12-21 | 深圳爱莫科技有限公司 | 一种广适应的车轴数量识别方法、系统、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294607A (zh) * | 2016-07-29 | 2017-01-04 | 北京奇虎科技有限公司 | 缓存数据的更新方法及更新装置 |
CN107291779A (zh) * | 2016-04-12 | 2017-10-24 | 百度在线网络技术(北京)有限公司 | 缓存数据管理方法及装置 |
CN110704062A (zh) * | 2019-09-27 | 2020-01-17 | 天津五八到家科技有限公司 | 依赖管理方法、数据获取方法、装置及设备 |
-
2020
- 2020-03-11 CN CN202010167789.5A patent/CN111382180B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291779A (zh) * | 2016-04-12 | 2017-10-24 | 百度在线网络技术(北京)有限公司 | 缓存数据管理方法及装置 |
CN106294607A (zh) * | 2016-07-29 | 2017-01-04 | 北京奇虎科技有限公司 | 缓存数据的更新方法及更新装置 |
CN110704062A (zh) * | 2019-09-27 | 2020-01-17 | 天津五八到家科技有限公司 | 依赖管理方法、数据获取方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111382180A (zh) | 2020-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109254733B (zh) | 用于存储数据的方法、装置和系统 | |
US20140181030A1 (en) | Identifying data items | |
CN111382180B (zh) | 一种本地缓存的数据清除方法和装置 | |
CN106161193B (zh) | 一种邮件处理方法、装置和系统 | |
US7536512B2 (en) | Method and apparatus for space efficient identification of candidate objects for eviction from a large cache | |
GB2529403A (en) | A Method of operating a shared nothing cluster system | |
CN110597630B (zh) | 一种分布式系统中内容资源的处理方法及系统 | |
CN112328702B (zh) | 数据同步方法及系统 | |
TW200821863A (en) | Work item event procession | |
CN109947759A (zh) | 一种数据索引建立方法、索引检索方法及装置 | |
CN111680017A (zh) | 一种数据同步的方法及装置 | |
CN109947730B (zh) | 元数据恢复方法、装置、分布式文件系统及可读存储介质 | |
CN111753141B (zh) | 一种数据管理方法及相关设备 | |
CN105843809B (zh) | 数据处理方法和装置 | |
CN112148745B (zh) | 一种多HBase集群访问方法、装置及存储介质 | |
CN113377817A (zh) | 数据处理方法、系统、设备及存储介质 | |
CN109739883B (zh) | 提升数据查询性能的方法、装置和电子设备 | |
GB2524073A (en) | Communication method and system for accessing media data | |
CN108090128B (zh) | 一种合并存储空间回收方法、装置及电子设备 | |
CN115328864A (zh) | 被删除文件的管理方法、装置、设备和存储介质 | |
CN109684331A (zh) | 一种基于Kudu的对象存储元数据管理装置及方法 | |
CN111061719B (zh) | 数据收集方法、装置、设备和存储介质 | |
CN111563123A (zh) | 一种hive仓库元数据实时同步方法 | |
CN111274316A (zh) | 多级数据流转任务的执行方法及装置、电子设备、存储介质 | |
JPH0822410A (ja) | 分散ディレクトリシステムを実現する情報処理装置及び方法 |
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 |