CN109558386A - 一种客户端数据的缓存方法、装置、设备和介质 - Google Patents
一种客户端数据的缓存方法、装置、设备和介质 Download PDFInfo
- Publication number
- CN109558386A CN109558386A CN201811417880.7A CN201811417880A CN109558386A CN 109558386 A CN109558386 A CN 109558386A CN 201811417880 A CN201811417880 A CN 201811417880A CN 109558386 A CN109558386 A CN 109558386A
- Authority
- CN
- China
- Prior art keywords
- data
- address
- client
- spatial cache
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012545 processing Methods 0.000 claims abstract description 144
- 238000013507 mapping Methods 0.000 claims abstract description 27
- 230000002688 persistence Effects 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 230000003139 buffering effect Effects 0.000 abstract description 3
- 230000000694 effects Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000005611 electricity Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 208000001491 myopia Diseases 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开实施例提供了一种客户端数据的缓存方法、装置、设备和介质,其中,该方法包括:根据记录的数据地址与空间地址的映射关系,查找数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址;如果查找到对应的缓存空间地址,则确定为目标空间地址;如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到客户端对应的缓存空间中,并将写入的缓存空间地址作为目标空间地址,记录关联数据地址与空间地址的映射关系;根据目标空间地址,在客户端对应的缓存空间中根据数据处理指令对目标处理数据进行处理。本公开实施例改善了数据的缓存方案,实现了提高客户端数据的处理效率的效果。
Description
技术领域
本公开实施例涉及计算机数据存储技术,尤其涉及一种客户端数据的缓存方法、装置、设备和介质。
背景技术
应用软件的功能现在多种多样,但是通常都需要进行数据的处理,例如文字数据、音视频数据、图片数据和会话消息数据等。这些数据往往因为服务器的下发、用户的输入、处理的需要而发生变化。因此,在客户端需要由操作系统提供数据缓存支持,将当前需要处理的数据读入缓存中,进行读写处理后,再回写到客户端的硬盘对应存储空间。
以安卓系统为客户端提供的缓存功能为例,如果客户端的数据存储机制是基于文件的。那么对于客户端需要缓存的数据,则以文件的形式存储在硬盘空间,需要时将文件读入缓存空间进行处理。每个应用软件的客户端可能需要对应存储很多文件,例如,可以按会话区分,每个会话对应一个文件;可以按内容类型区分,每种类型的内容对应一个文件。各种客户端可以按照自身需求配置。
基于上述技术实现的缓存系统,当客户端需要进行数据处理时,操作系统需要将数据所在的文件读入缓存空间再进行处理。由于文件较多,所以需要将不同文件切换的读入缓存,当缓存空间已满时则将旧文件覆盖,重新读入新文件,再进行处理,造成运行效率较低。
发明内容
本公开实施例提供一种客户端数据的缓存方法、装置、设备和介质,以改善缓存方案,提高客户端数据的处理效率。
第一方面,本公开实施例中提供了一种客户端数据的缓存方法,该方法包括:
获取客户端发起的数据处理指令;
根据记录的数据地址与空间地址的映射关系,查找所述数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址;
如果查找到对应的缓存空间地址,则确定为目标空间地址;
如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到所述客户端对应的缓存空间中,并将写入的缓存空间地址作为所述目标空间地址,记录关联数据地址与空间地址的映射关系;
根据所述目标空间地址,在所述客户端对应的缓存空间中根据所述数据处理指令对所述目标处理数据进行处理。
第二方面,本公开实施还提供了一种客户端数据的缓存装置,该装置包括:
指令获取模块,用于获取客户端发起的数据处理指令;
地址查找模块,用于根据记录的数据地址与空间地址的映射关系,查找所述数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址;
第一确定模块,用于如果查找到对应的缓存空间地址,则确定为目标空间地址;
第二确定模块,用于如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到所述客户端对应的缓存空间中,并将写入的缓存空间地址作为所述目标空间地址,记录关联数据地址与空间地址的映射关系;
数据处理模块,用于根据所述目标空间地址,在所述客户端对应的缓存空间中根据所述数据处理指令对所述目标处理数据进行处理。
第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:
一个或多个处理装置;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现如本公开任意实施例所提供的客户端数据的缓存方法。
第四方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理装置执行时实现如本公开任意实施例所提供的客户端数据的缓存方法。
本公开实施例提供了一种客户端数据的缓存方法、装置、设备和介质,通过记录的数据地址与空间地址的映射关系,能够将数据在文件中的地址转换为在缓存空间中的地址,将要处理的关联数据读入缓存进行处理,而无需切换地将文件读入缓存,由此解决了现有的客户端数据的缓存方法由于文件较多,需要将文件切换的读入缓存,造成运行效率较低的问题;改善了数据的缓存方案,实现了提高客户端数据的处理效率的效果。
附图说明
图1示出了本公开实施例中提供的一种客户端数据的缓存方法的流程示意图;
图2示出了本公开实施例中提供的另一种客户端数据的缓存方法的流程示意图;
图3示出了本公开实施例中提供的又一种客户端数据的缓存方法的流程示意图;
图4示出了本公开实施例中提供的一种客户端数据的缓存装置的结构框图;
图5示出了本公开实施例中提供的一种电子设备的结构框图。
具体实施方式
下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分而非全部结构。
图1示出了本公开实施例中提供的一种客户端数据的缓存方法的流程示意图,本公开实施例可适用于操作系统对客户端数据的缓存处理,该方法可以由客户端数据的缓存装置来执行,该装置可以采用软件和/或硬件的方式实现,该装置可以配置于具有操作系统的电子设备中,通常为终端设备,例如智能手机、平板电脑等,优选是,本实施例的方法由终端设备中安装的操作系统来执行,可以集成在操作系统的代码中,也可以是设置一执行该功能的插件,供操作系统调用。
如图1所示,本公开实施例中提供的客户端数据的缓存方法可以包括:
S110、获取客户端发起的数据处理指令。
其中,客户端例如可以是移动电话、平板电脑、笔记本电脑或车载终端中的应用软件等为用户提供本地服务的程序。客户端需要由操作系统提供数据缓存支持,与之对应地,操作系统需要获取客户端发起的数据处理指令,以对硬盘存储空间和缓存空间中的数据进行处理。具体地,操作系统例如可以监听客户端中配置有挂钩机制(Hook)的数据处理事件,以获取数据处理事件对应的数据处理指令。数据处理事件可以是客户端中任何需要对数据进行处理的事件,如读数据、写入数据、或更改数据。
S120、根据记录的数据地址与空间地址的映射关系,查找数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址。
其中,数据地址是指数据在硬盘存储空间的地址,空间地址是指该数据在缓存空间中的地址。典型的,本实施例尤为适用于客户端基于文件存储机制来存储数据,则数据地址是客户端给出的该数据在相应文件中的地址,通常包括文件索引,以及数据在文件中的索引。操作系统可以预先记录客户端的已读入缓存中数据的数据地址与空间地址的映射关系。目标数据地址是指数据处理指令中目标处理数据在硬盘存储空间中的数据地址。在缓存空间存储有缓存数据,该缓存数据可以为文件中的部分数据,通常是被处理的关联数据。由于有些数据经常被处理则属于热数据,而有些数据则偶尔被处理属于冷数据。缓存中的数据通常是热数据。因此,对于已经存储在缓存空间的数据,其数据地址和空间地址存在映射关系,即目标处理数据的目标数据地址存在对应的缓存空间地址,否则目标处理数据的目标数据地址不存在对应的缓存空间地址。
在上述两种情况下,可以分别按照如下步骤执行:
S130、如果查找到对应的缓存空间地址,则确定为目标空间地址。
其中,目标空间地址是指数据处理指令中目标处理数据在缓存空间中的空间地址,缓存空间内已经存储有数据处理指令中的目标处理数据,该目标处理数据的缓存空间地址确定为目标空间地址。已经在缓存空间存储的数据,即是之前被处理过的数据。
S140、如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到客户端对应的缓存空间中,并将写入的缓存空间地址作为目标空间地址,记录关联数据地址与空间地址的映射关系。
其中,文件中的关联数据例如可以是目标处理数据的上下文数据或目标处理数据所在的数据分块的数据,即关联数据为文件中的部分数据或数据量较小的文件中的全部数据。关联数据可以根据具体功能确定,例如,用户在某一时间段内在观看短视频,关联数据可以是文件中短视频相关的数据;若用户在这一时间段内切换到直播页面,关联数据可以是文件中直播相关的缓存数据。
将该关联数据写入到缓存空间中,得到的该关联数据的缓存空间地址确定为目标空间地址。
S150、根据目标空间地址,在客户端对应的缓存空间中根据数据处理指令对目标处理数据进行处理。
其中,根据数据处理指令对目标处理数据进行处理具体可以为:
如果数据处理指令为数据读取指令,则根据目标空间地址,在客户端对应的缓存空间中查询并读取目标处理数据,并反馈给客户端的业务层;
如果数据处理指令为数据写入指令,则根据数据处理指令确定待写入数据作为目标处理数据,并将目标处理数据写入目标空间地址;
如果数据处理指令为数据更改指令,则根据数据处理指令确定待更改数据作为目标处理数据,并以待更改数据替换目标空间地址中的旧数据。
在本公开实施例中,客户端对应的缓存空间中的数据具体可以包括多个文件中的部分数据,例如,包括订单文件中关于当日订单的数据和会话文件中关于和某商家的会话数据。用户在对客户端进行操作的过程中,当需要查询当日订单时,客户端的数据处理指令为当日订单数据读取指令,操作系统根据当日订单数据的目标空间地址,在缓存空间中查询并读取当日订单目标处理数据,并返回给客户端的业务层,向用户展示当日订单;当需要和商家会话时,客户端的数据处理指令为商家会话数据写入指令,操作系统根据商家会话数据写入指令确定待写入数据作为目标处理数据,并将目标处理数据写入目标空间地址;当需要在当日订单窗口和商家会话窗口之间进行反复切换时,由于缓存空间中包括当日订单的数据和商家会话数据,无需将会话文件和订单文件反复读取到缓存空间中,与现有技术相比,本公开提高了客户端数据的处理效率。
本公开实施例通过记录数据地址与空间地址的映射关系,能够将数据在文件中的索引地址转换为缓存空间地址,从而使得操作系统能够对缓存空间中的数据进行处理操作,而不必将完整文件读入缓存后,再以文件为单位进行数据索引和处理。由此,能够使读入缓存的为文件中的部分关联数据,减少了读入缓存的数据量,并且,通常读入缓存的是经常被处理的热数据,文件中的其他冷数据不会被读入,这样减少了从硬盘存储空间向缓存反复切换读写的次数,提高了数据处理效率。所以本实施例的技术方案,改善了数据的缓存方案,实现了提高客户端数据的处理效率的效果。
在上述各实施例的基础上,获取客户端发起的数据处理指令优选可以包括:
监听客户端中配置有挂钩机制的数据处理事件,以获取数据处理事件对应的数据处理指令。
其中,挂钩机制又称为Hook机制,在对特定的数据处理事件配置有挂钩机制后,挂钩机制程序监听指定窗口的数据处理事件,一旦发生该数据处理事件,挂钩机制程序会收到通知,该程序能在第一时间对该事件做出响应,进一步提高了客户端数据的处理效率。例如,客户端的会话窗口点击发送事件配置有挂钩机制,用户在使用客户端和商家进行会话时,在会话窗口中写入会话数据并点击发送后,挂钩机制程序在第一时间对该事件做出响应,操作系统获取该事件对应的商家会话数据写入指令。
在上述各实施例的基础上,在获取客户端发起的数据处理指令之前,优选还可以包括:在客户端启动运行时,向操作系统申请获得缓存空间。操作系统这样设置,节约了硬盘空间,有利于硬盘空间的合理分配。
图2示出了本公开实施例中提供的另一种客户端数据的缓存方法的流程示意图,在上述各实施例的基础上,根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到客户端对应的缓存空间中优选可以包括:根据目标数据地址,从客户端硬盘存储空间中查询目标处理数据所在的文件;从查询到的文件中确定目标处理数据的关联数据,其中,关联数据为目标处理数据的上下文数据或目标处理数据所在的数据分块;将关联数据写入到客户端对应的缓存空间中。
具体地,该方法包括如下步骤:
S210、获取客户端发起的数据处理指令。
S220、根据记录的数据地址与空间地址的映射关系,查找数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址。
S230、如果查找到对应的缓存空间地址,则确定为目标空间地址。
S240、如果未查找到对应的缓存空间地址,根据目标数据地址,从客户端硬盘存储空间中查询目标处理数据所在的文件;从查询到的文件中确定目标处理数据的关联数据,其中,关联数据为目标处理数据的上下文数据或目标处理数据所在的数据分块;将关联数据写入到客户端对应的缓存空间中;将写入的缓存空间地址作为目标空间地址,记录关联数据地址与空间地址的映射关系。
其中,目标处理数据的上下文数据是指与该目标处理数据最相关的数据,例如,在会话文件中存储有所有用户的会话表,目标处理数据为某一用户的会话数据,该会话数据的上下文为该用户的会话表。目标处理数据所在的数据分块是指,根据数据的大小对文件中的数据进行分块,例如,将文件中的数据以10K为单位进行分块,写入缓存空间。
S250、根据目标空间地址,在客户端对应的缓存空间中根据数据处理指令对目标处理数据进行处理。
本公开实施例将目标处理数据的上下文数据或目标处理数据所在的数据分块作为关联数据写入到客户端对应的缓存空间中,避免了需要将文件整体写入缓存空间中的问题,使得缓存空间可以存储不同文件中的数据,从而避免了用户在切换菜单时,操作系统需要将文件切换的读入缓存,改善了缓存方案,提高了客户端数据的处理效率。
图3示出了本公开实施例中提供的又一种客户端数据的缓存方法的流程示意图,在上述各实施例的基础上,该方法优选还可以包括:如果满足设定持久化条件时,则按照数据地址和空间地址的映射关系,将缓存空间中的数据写入客户端硬盘存储空间的文件中。
具体地,该方法包括如下步骤:
S310、获取客户端发起的数据处理指令。
S320、根据记录的数据地址与空间地址的映射关系,查找数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址。
S330、如果查找到对应的缓存空间地址,则确定为目标空间地址。
S340、如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到客户端对应的缓存空间中,并将写入的缓存空间地址作为目标空间地址,记录关联数据地址与空间地址的映射关系。
S350、根据目标空间地址,在客户端对应的缓存空间中根据数据处理指令对目标处理数据进行处理。
S360、如果满足设定持久化条件时,则按照数据地址和空间地址的映射关系,将缓存空间中的数据写入客户端硬盘存储空间的文件中。
其中,持久化条件例如可以包括:监测到客户端的进程关闭、监测到缓存空间的数据已满、监测到到达设定时间间隔、或者接收到客户端发送的数据持久化指令中的至少一种。
其中,客户端的进程关闭后,将缓存空间中的数据写入客户端硬盘存储空间的文件中,可以将该客户端对应的缓存空间释放,有利于硬盘空间的合理利用;监测到缓存空间的数据已满后,将缓存空间中的数据写入客户端硬盘存储空间的文件中,可以避免缓存空间中的数据由于数据覆盖导致缓存空间中的数据丢失的问题;监测到到达设定时间间隔或者接收到客户端发送的数据持久化指令后,将缓存空间中的数据写入客户端硬盘存储空间的文件中,有利于将缓存空间中的数据及时保存,避免操作系统断电使得缓存空间中的数据丢失的问题。
需要说明的是,在上述实施例中,对S360的具体执行顺序不作限定,本领域技术人员可以理解,S360可以在各步骤之前、之间或之后执行。
图4示出了本公开实施例中提供的一种客户端数据的缓存装置的结构框图。如图4所示,该装置包括:指令获取模块401、地址查找模块402、第一确定模块403、第二确定模块404和数据处理模块405,其中,指令获取模块401用于获取客户端发起的数据处理指令;地址查找模块402用于根据记录的数据地址与空间地址的映射关系,查找数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址;第一确定模块403用于如果查找到对应的缓存空间地址,则确定为目标空间地址;第二确定模块404用于如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到客户端对应的缓存空间中,并将写入的缓存空间地址作为目标空间地址,记录关联数据地址与空间地址的映射关系;数据处理模块405用于根据目标空间地址,在客户端对应的缓存空间中根据数据处理指令对目标处理数据进行处理。
在上述各实施例的基础上,指令获取模块401优选还可以用于监听客户端中配置有挂钩机制的数据处理事件,以获取数据处理事件对应的数据处理指令。
在上述各实施例的基础上,数据处理模块405优选还可以包括:读取处理子模块、写入处理子模块和更改处理子模块,其中,读取处理子模块用于如果数据处理指令为数据读取指令,则根据目标空间地址,在客户端对应的缓存空间中查询并读取目标处理数据,并反馈给客户端的业务层;写入处理子模块用于如果数据处理指令为数据写入指令,则根据数据处理指令确定待写入数据作为目标处理数据,并将目标处理数据写入目标空间地址;更改处理子模块用于如果数据处理指令为数据更改指令,则根据数据处理指令确定待更改数据作为目标处理数据,并以待更改数据替换目标空间地址中的旧数据。
在上述各实施例的基础上,该装置优选还可以包括:缓存申请模块,用于在客户端启动运行时,向操作系统申请获得缓存空间。
在上述各实施例的基础上,该装置优选还可以包括:写入文件模块,用于如果满足设定持久化条件时,则按照数据地址和空间地址的映射关系,将缓存空间中的数据写入客户端硬盘存储空间的文件中。
在上述各实施例的基础上,写入文件模块优选还可以用于判断满足设定持久化条件包括下述至少一种:
监测到客户端的进程关闭;
监测到缓存空间的数据已满;
监测到到达设定时间间隔;
接收到客户端发送的数据持久化指令。
在上述各实施例的基础上,第二确定模块404优选还可以包括:文件查询子模块、关联数据确定子模块和关联数据写入子模块,其中,文件查询子模块用于根据目标数据地址,从客户端硬盘存储空间中查询目标处理数据所在的文件;关联数据确定子模块用于从查询到的文件中确定目标处理数据的关联数据,其中,关联数据为目标处理数据的上下文数据或目标处理数据所在的数据分块;关联数据写入子模块用于将关联数据写入到客户端对应的缓存空间中。
本公开实施例所提供的客户端数据的缓存装置可用于执行本公开任意实施例提供的客户端数据的缓存方法,具备相应的功能模块,实现相同的有益效果。
下面参考图5,其示出了适于用来实现本公开实施例的电子设备500的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储装置508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM 502被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取客户端发起的数据处理指令;根据记录的数据地址与空间地址的映射关系,查找所述数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址;如果查找到对应的缓存空间地址,则确定为目标空间地址;如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到所述客户端对应的缓存空间中,并将写入的缓存空间地址作为所述目标空间地址,记录关联数据地址与空间地址的映射关系;根据所述目标空间地址,在所述客户端对应的缓存空间中根据所述数据处理指令对所述目标处理数据进行处理。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,第一确定模块还可以被描述为“查找到对应的缓存空间地址,确定为目标空间地址的模块”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种客户端数据的缓存方法,其特征在于,包括:
获取客户端发起的数据处理指令;
根据记录的数据地址与空间地址的映射关系,查找所述数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址;
如果查找到对应的缓存空间地址,则确定为目标空间地址;
如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到所述客户端对应的缓存空间中,并将写入的缓存空间地址作为所述目标空间地址,记录关联数据地址与空间地址的映射关系;
根据所述目标空间地址,在所述客户端对应的缓存空间中根据所述数据处理指令对所述目标处理数据进行处理。
2.根据权利要求1所述的方法,其特征在于,获取客户端发起的数据处理指令包括:
监听客户端中配置有挂钩机制的数据处理事件,以获取所述数据处理事件对应的数据处理指令。
3.根据权利要求1所述的方法,其特征在于,根据所述目标空间地址,在所述客户端对应的缓存空间中根据所述数据处理指令对所述目标处理数据进行处理包括:
如果所述数据处理指令为数据读取指令,则根据所述目标空间地址,在所述客户端对应的缓存空间中查询并读取目标处理数据,并反馈给客户端的业务层;
如果所述数据处理指令为数据写入指令,则根据所述数据处理指令确定待写入数据作为目标处理数据,并将所述目标处理数据写入所述目标空间地址;
如果所述数据处理指令为数据更改指令,则根据所述数据处理指令确定待更改数据作为目标处理数据,并以所述待更改数据替换所述目标空间地址中的旧数据。
4.根据权利要求1所述的方法,其特征在于,获取客户端发起的数据处理指令之前,还包括:
在客户端启动运行时,向操作系统申请获得缓存空间。
5.根据权利要求1所述的方法,其特征在于,还包括:
如果满足设定持久化条件时,则按照数据地址和空间地址的映射关系,将所述缓存空间中的数据写入客户端硬盘存储空间的文件中。
6.根据权利要求5所述的方法,其特征在于,满足设定持久化条件包括下述至少一种:
监测到所述客户端的进程关闭;
监测到所述缓存空间的数据已满;
监测到到达设定时间间隔;
接收到客户端发送的数据持久化指令。
7.根据权利要求1所述的方法,其特征在于,根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到所述客户端对应的缓存空间中包括:
根据目标数据地址,从客户端硬盘存储空间中查询目标处理数据所在的文件;
从查询到的文件中确定所述目标处理数据的关联数据,其中,所述关联数据为目标处理数据的上下文数据或目标处理数据所在的数据分块;
将所述关联数据写入到所述客户端对应的缓存空间中。
8.一种客户端数据的缓存装置,其特征在于,包括:
指令获取模块,用于获取客户端发起的数据处理指令;
地址查找模块,用于根据记录的数据地址与空间地址的映射关系,查找所述数据处理指令中目标处理数据的目标数据地址是否存在对应的缓存空间地址;
第一确定模块,用于如果查找到对应的缓存空间地址,则确定为目标空间地址;
第二确定模块,用于如果未查找到对应的缓存空间地址,则根据目标数据地址,从客户端硬盘存储空间中将文件中的关联数据写入到所述客户端对应的缓存空间中,并将写入的缓存空间地址作为所述目标空间地址,记录关联数据地址与空间地址的映射关系;
数据处理模块,用于根据所述目标空间地址,在所述客户端对应的缓存空间中根据所述数据处理指令对所述目标处理数据进行处理。
9.一种电子设备,其特征在于,包括:
一个或多个处理装置;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现如权利要求1-7任一所述的客户端数据的缓存方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理装置执行时实现如权利要求1-7任一所述的客户端数据的缓存方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811417880.7A CN109558386A (zh) | 2018-11-26 | 2018-11-26 | 一种客户端数据的缓存方法、装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811417880.7A CN109558386A (zh) | 2018-11-26 | 2018-11-26 | 一种客户端数据的缓存方法、装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109558386A true CN109558386A (zh) | 2019-04-02 |
Family
ID=65867354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811417880.7A Pending CN109558386A (zh) | 2018-11-26 | 2018-11-26 | 一种客户端数据的缓存方法、装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109558386A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427364A (zh) * | 2019-06-21 | 2019-11-08 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN110457541A (zh) * | 2019-06-28 | 2019-11-15 | 卓尔智联(武汉)研究院有限公司 | 数据的处理方法、服务平台、终端设备及存储介质 |
CN110737680A (zh) * | 2019-09-23 | 2020-01-31 | 贝壳技术有限公司 | 缓存数据管理方法、装置、存储介质及电子设备 |
CN111459893A (zh) * | 2020-04-03 | 2020-07-28 | 北京字节跳动网络技术有限公司 | 文件处理方法、装置和电子设备 |
CN112565870A (zh) * | 2019-09-26 | 2021-03-26 | 北京字节跳动网络技术有限公司 | 内容的缓存和读取方法、客户端及存储介质 |
CN113220603A (zh) * | 2021-05-27 | 2021-08-06 | 济南浪潮数据技术有限公司 | 一种硬盘缓存关闭方法、装置、终端及存储介质 |
CN114296641A (zh) * | 2021-12-14 | 2022-04-08 | 北京欧珀通信有限公司 | 增量文件传输方法、装置、电子设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101521553A (zh) * | 2008-02-29 | 2009-09-02 | 突触计算机系统(上海)有限公司 | 对等网络视频点播系统中用于提供数据分片的方法和装置 |
US20140019684A1 (en) * | 2011-03-14 | 2014-01-16 | Huawei Technologies Co., Ltd. | Method and Apparatus for Reading and Writing Data in File System |
CN103744796A (zh) * | 2013-09-29 | 2014-04-23 | 记忆科技(深圳)有限公司 | 采用uSSD实现缓存的方法及其系统 |
CN104503707A (zh) * | 2014-12-24 | 2015-04-08 | 华为技术有限公司 | 读取数据的方法以及装置 |
CN105446701A (zh) * | 2015-11-09 | 2016-03-30 | 联想(北京)有限公司 | 一种数据处理方法、电子设备及控制器 |
-
2018
- 2018-11-26 CN CN201811417880.7A patent/CN109558386A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101521553A (zh) * | 2008-02-29 | 2009-09-02 | 突触计算机系统(上海)有限公司 | 对等网络视频点播系统中用于提供数据分片的方法和装置 |
US20140019684A1 (en) * | 2011-03-14 | 2014-01-16 | Huawei Technologies Co., Ltd. | Method and Apparatus for Reading and Writing Data in File System |
CN103744796A (zh) * | 2013-09-29 | 2014-04-23 | 记忆科技(深圳)有限公司 | 采用uSSD实现缓存的方法及其系统 |
CN104503707A (zh) * | 2014-12-24 | 2015-04-08 | 华为技术有限公司 | 读取数据的方法以及装置 |
CN105446701A (zh) * | 2015-11-09 | 2016-03-30 | 联想(北京)有限公司 | 一种数据处理方法、电子设备及控制器 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110427364A (zh) * | 2019-06-21 | 2019-11-08 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN110457541A (zh) * | 2019-06-28 | 2019-11-15 | 卓尔智联(武汉)研究院有限公司 | 数据的处理方法、服务平台、终端设备及存储介质 |
CN110737680A (zh) * | 2019-09-23 | 2020-01-31 | 贝壳技术有限公司 | 缓存数据管理方法、装置、存储介质及电子设备 |
CN112565870A (zh) * | 2019-09-26 | 2021-03-26 | 北京字节跳动网络技术有限公司 | 内容的缓存和读取方法、客户端及存储介质 |
US11907121B2 (en) | 2019-09-26 | 2024-02-20 | Beijing Bytedance Network Technology Co., Ltd. | Methods for caching and reading content, client, and storage medium |
CN111459893A (zh) * | 2020-04-03 | 2020-07-28 | 北京字节跳动网络技术有限公司 | 文件处理方法、装置和电子设备 |
CN111459893B (zh) * | 2020-04-03 | 2023-08-22 | 北京字节跳动网络技术有限公司 | 文件处理方法、装置和电子设备 |
CN113220603A (zh) * | 2021-05-27 | 2021-08-06 | 济南浪潮数据技术有限公司 | 一种硬盘缓存关闭方法、装置、终端及存储介质 |
CN114296641A (zh) * | 2021-12-14 | 2022-04-08 | 北京欧珀通信有限公司 | 增量文件传输方法、装置、电子设备及可读存储介质 |
CN114296641B (zh) * | 2021-12-14 | 2023-09-19 | 北京欧珀通信有限公司 | 增量文件传输方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109558386A (zh) | 一种客户端数据的缓存方法、装置、设备和介质 | |
CN109871388A (zh) | 数据缓存方法、装置、终电子设备及存储介质 | |
CN106844784A (zh) | 数据缓存方法、装置及计算机可读存储介质 | |
CN109299348A (zh) | 一种数据查询方法、装置、电子设备及存储介质 | |
CN107835444A (zh) | 信息交互方法、装置、音频终端及计算机可读存储介质 | |
CN110489440B (zh) | 数据查询方法和装置 | |
CN110262807A (zh) | 集群创建进度日志采集系统、方法和装置 | |
CN104333501B (zh) | 一种联系人列表的显示方法及装置 | |
US20130310014A1 (en) | Method and Mobile Terminal for Storing Memo During Call | |
CN109558246A (zh) | 一种负载均衡方法、装置、电子设备及存储介质 | |
US20140297586A1 (en) | Device and method for cloud file management | |
CN109861904A (zh) | 姓名标签显示方法和装置 | |
CN104796322A (zh) | 一种消息处理方法及其设备 | |
WO2023179505A1 (zh) | 内容分发网络的调度方法、装置、存储介质及电子设备 | |
CN109688051A (zh) | 会话列表显示方法、装置和电子设备 | |
CN110175174A (zh) | 一种数据查询方法、装置、设备及存储介质 | |
CN109828980A (zh) | 数据缓存方法、装置、终端及存储介质 | |
CN110286928A (zh) | 应用程序的界面元素更新方法、装置、电子设备及存储介质 | |
CN109408481A (zh) | 日志采集规则的更新方法、装置、电子设备及可读介质 | |
CN109639813B (zh) | 视频文件传输处理方法及装置、电子设备和存储介质 | |
CN109697034A (zh) | 一种数据写入方法、装置、电子设备及存储介质 | |
CN109587553A (zh) | 音乐播放方法、装置、电子设备及计算机存储介质 | |
CN109492039A (zh) | 一种日志数据的记录方法、装置、电子设备及可读介质 | |
CN110162410A (zh) | 一种消息处理方法和装置 | |
CN106326143B (zh) | 一种缓存分配、数据访问、数据发送方法、处理器及系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190402 |
|
RJ01 | Rejection of invention patent application after publication |