一种数据访问的方法、装置及系统与流程

文档序号:24057647发布日期:2021-02-26 12:14阅读:100来源:国知局
一种数据访问的方法、装置及系统与流程

[0001]
本申请涉及计算机领域,特别涉及一种数据访问的方法、装置及系统。


背景技术:

[0002]
随着大数据时代的到来,企业数据规模不断扩张,如何对海量数据进行快速访问是企业面临的核心问题。
[0003]
目前,为了提高数据的访存效率,企业一般都采用分布式系统,该分布式系统包括协调服务器、多个处理节点、及存储数据的存储服务器。在接收到客户端发送的访问请求时,协调服务器将所述访问请求分解为多个任务,分别下发至各个处理节点,由各个处理节点分别访问存储服务器中的数据,各处理节点读取的数据返回至协调服务器,协调服务器将各处理节点返回的数据整合后,再返回给客户端。
[0004]
每个处理节点在接收到协调服务器发送的任务后,首先判断所接收的任务中要访问的数据是不是在该处理节点的缓存中,如果在缓存中,则直接从缓存中读取该数据,如果不在缓存中,就需要从存储服务器中读取要访问的数据至缓存,然后再从缓存中读取数据。可见,对于每个处理节点来说,如果所访问的数据在缓存中没有命中,则需要将存储服务器中的数据也读取到处理节点缓存,再将缓存中的数据读取至协调服务器,从而增加了数据读取的路径,从而影响数据访问的性能。


技术实现要素:

[0005]
本申请提供了一种数据访问的方法、装置及系统,以减小数据读取的路径,提高数据访问的性能。所述技术方案如下:
[0006]
第一方面,本申请提供了一种数据访问的方法,该方法由管理服务器执行,管理服务器与多个处理节点连接,该多个处理节点连接至存储服务器,管理服务器中存储有该多个处理节点的缓存中缓存的文件的标识。在该方法中,接收文件访问请求,该文件访问请求中携带待访问文件的标识;根据待访问文件的标识确定待访问文件是否缓存在该多个处理节点的缓存中;当待访问文件没有缓存在该多个处理节点的缓存中,则指示该多个处理节点中的至少一个处理节点从存储服务器中获取待访问文件。由于当待访问文件没有缓存在该多个处理节点的缓存中,指示该至少一个处理节点从存储服务器中获取待访问文件。这样对于该至少一个处理节点根据管理服务器的指示直接从存储服务器中读取待访问文件,读取到待访问文件后直接向管理服务器返回待访问文件,在向管理服务器返回待访问文件之前不会将待访问文件缓存到该至少一个处理节点的缓存中。如此待访问文件不需要经过该至少一个处理节点的缓存,从而减小了待访问文件的传输路径,实现减小数据读取的路径,提高数据访问的性能。
[0007]
在一种可能的实现方式中,从存储服务器中获取待访问文件所包括的至少一个子文件的标识及每个子文件所在的存储服务器的标识;针对待访问文件所包括的每个子文件生成一个读取任务,每个读取任务中包括一个子文件的标识,及该子文件所在的存储服务
器的标识;将每个读取任务分别发送至一个处理节点,指示接收到读取任务的处理节点从存储该子文件的存储服务器中读取该子文件;接收接收到读取任务的处理节点读取的子文件;将该子文件合并为待访问文件。由于生成的读取任务中包括子文件所在的存储服务器的标识,这样接收到读取任务的处理节点可以直接根据该读取任务中的存储服务器的标识从该存储服务器中读取该子文件,以及在读取到该子文件后直接向管理服务器发送该子文件。这样该子文件不会被先缓存到该处理节点的缓存中,再由该处理节点从自身的缓存中读取该子文件并发送给管理服务器,从而减小了该子文件的传输路径,提高读取该子文件的性能。
[0008]
在另一种可能的实现方式中,当待访问文件的访问频率超过预设频率时,发送缓存任务至该多个处理节点的至少一个处理节点,以指示该至少一个处理节点将待访问文件所包括的子文件缓存至该至少一个处理节点;记录待访问文件的标识所包括的子文件标识及缓存每个子文件的处理节点的标识。当待访问文件缓存在该多个处理节点的缓存中时,生成至少一个读取任务,每个读取任务包括子文件的标识及该子文件所在的处理节点的标识;发送该至少一个读取任务至该多个处理节点,指示该多个处理节点从存储有该子文件的处理节点的缓存中读取该子文件;将所读取的子文件合成待访问文件。
[0009]
在待访问文件的访问频率超过预设频率时,表明待访问文件是常被访问的文件,由于各处理节点中的缓存空间有限,将常被访问的待访问文件保存到该至少一个处理节点的缓存中,这样不仅提高处理节点的缓存利用率,还提高了待访问文件的命中率。当待访问文件缓存在该多个处理节点的缓存中时,生成的读取任务包括子文件所在的处理节点的标识,这样接收该缓存任务的处理节点不需要再确定该子文件所在的处理节点,直接根据该子文件所在的处理节点的标识从该子文件所在的处理节点中读取该子文件,提高了读取该子文件的效率。
[0010]
在另一种可能的实现方式中,当待访问文件的访问频率低于预设频率时,向待访问文件包括的子文件所在的处理节点发送删除任务,该删除任务包括该子文件的标识,以指示该处理节点删除该子文件;删除管理服务器中记录的该子文件的标识及该处理节点的标识。这样可以将访问频率较低的待访问文件从该多个处理节点的缓存中删除,可以节省出较多的缓存空间用于保存访问频率较高的文件,这样不仅提高该多个处理节点的缓存利用率,还提高了文件的命中率。
[0011]
第二方面,本申请提供了一种数据访问的方法,该方法由处理节点执行,该处理节点是与管理服务器连接的多个处理节点中的一个,该多个处理节点连接到存储服务器。在该方法中,接收读取任务,该读取任务是管理服务器在确定待访问文件没有缓存在该多个处理节点的缓存中时发送的任务,该读取任务包括待访问文件中的一个子文件的标识和该子文件所在的存储服务器的标识;根据该子文件的标识从该存储服务器的标识对应的存储服务器中读取该子文件;向管理服务器发送读取的子文件。由于接收的读取任务中包括子文件的标识和该子文件所在存储服务器的标识,这样处理节点可以根据该存储服务器的标识直接从该存储服务器中读取该子文件,然后直接返回给管理服务器,且处理节点在向管理服务器返回该子文件之前,不会将该子文件缓存到处理节点的缓存。所以返回给管理服务器的子文件不会经过处理节点的缓存,减小了该子文件的传输路径,实现减小数据读取的路径,提高数据访问的性能。
[0012]
在一种可能的实现方式中,接收缓存任务,该缓存任务是管理服务器在待访问文件的访问频率超过预设频率时发送的任务,该缓存任务包括待访问文件的一个子文件的标识和该子文件所在的存储服务器的标识;根据该子文件的标识从该存储服务器的标识对应的存储服务器中读取该子文件;将该子文件存储在该处理节点的缓存中。在待访问文件的访问频率超过预设频率时,表明待访问文件是常被访问的文件,由于处理节点中的缓存空间有限,将常被访问的待访问文件的子文件保存到该处理节点的缓存中,这样不仅提高该处理节点的缓存利用率,还提高了待访问文件的命中率。
[0013]
第三方面,本申请提供了一种数据访问的方法,该方法由处理节点执行,该处理节点是与管理服务器连接的多个处理节点中的一个,该多个处理节点连接到存储服务器。在该方法中,接收读取任务,该读取任务是管理服务器在确定待访问文件缓存在该多个处理节点的缓存中时发送的任务,该读取任务包括待访问文件中的一个子文件的标识和该子文件所在的处理节点的标识;根据该子文件的标识从该处理节点的标识对应的处理节点中读取该子文件;向管理服务器发送读取的子文件。当待访问文件缓存在该多个处理节点的缓存中时,由于该读取任务包括子文件所在的处理节点的标识,这样该处理节点不需要再确定该子文件所在的处理节点,直接根据该子文件据处理节点的标识从该子文件所在的处理节点中读取该子文件,提高了读取该子文件的效率。
[0014]
在一种可能的实现方式中,接收删除任务,该删除任务是管理服务器当待访问文件的访问频率低于预设频率时发送的任务,该删除任务包括待访问文件的一个子文件的标识;删除该子文件的标识对应的子文件。这样在待访问文件的访问频率较低时,该处理节点可以从自身的缓存中删除属于待访问文件的子文件,可以节省出较多的缓存空间用于保存访问频率较高的文件,这样不仅提高该处理节点的缓存利用率,还提高了文件的命中率。
[0015]
第四方面,本申请提供了一种数据访问的装置,所述装置用于执行第一方面或第一方面的任意一种可选的实现方式中的方法。具体地,所述装置包括用于执行第一方面或第一方面的任意一种可能的实现方式中所述方法的单元。
[0016]
第五方面,本申请提供了一种数据访问的装置,所述装置用于执行第二方面或第二方面的一种可选的实现方式中的方法。具体地,所述装置包括用于执行第二方面或第二方面的一种可能的实现方式中所述方法的单元。或者,所述装置用于执行第三方面或第三方面的一种可选的实现方式中的方法。具体地,所述装置包括用于执行第三方面或第三方面的一种可能的实现方式中所述方法的单元
[0017]
第六方面,本申请提供了一种数据访问的装置,所述装置包括:处理器,存储器和通信接口,所述处理器通过总线与所述存储器和通信接口连接;存储器存储有计算机执行指令,所述计算机执行指令由所述处理器执行,以实现第一方面或第一方面的任意一种可能的实现方式的方法的操作步骤。
[0018]
第七方面,本申请提供了一种数据访问的装置,所述装置包括:处理器,存储器和通信接口,处理器通过总线与存储器和通信接口连接;所述存储器存储有计算机执行指令,所述计算机执行指令由所述处理器执行,用于执行第二方面或第二方面的一种可能的实现方式的方法的操作步骤,或者,用于执行第三方面或第三方面的一种可能的实现方式的方法的操作步骤。
[0019]
第八方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存
储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
[0020]
第九方面,本申请提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
[0021]
第十方面,本申请提供了一种数据访问的系统,该系统包括:管理服务器、存储服务器和多个处理节点。
[0022]
管理服务器接收文件访问请求,该文件访问请求中携带待访问文件的标识;根据待访问文件的标识确定待访问文件是否缓存在该多个处理节点的缓存中,管理服务器中存储有该多个处理节点的缓存中缓存的文件的标识;当待访问文件没有缓存在该多个处理节点的缓存中,从存储服务器中获取待访问文件所包括的至少一个子文件的标识及每个子文件所在的存储服务器的标识,针对待访问文件所包括的每个子文件生成一个读取任务,每个读取任务中包括一个子文件的标识及该子文件所在的存储服务器的标识;将每个读取任务分别发送至一个处理节点。接收到读取任务的处理节点根据接收的读取任务中的子文件的标识从该存储服务器的标识对应的存储服务器中读取对应的子文件,向管理服务器发送读取的子文件。管理服务器接收接收到读取任务的处理节点读取的子文件。
[0023]
由于当待访问文件没有缓存在该多个处理节点的缓存中,管理服务器生成的每个读取任务中包括一个子文件的标识及该子文件所在的存储服务器的标识。这样接收到读取任务的处理节点可以直接根据该读取任务中的存储服务器的标识从该存储服务器中读取该子文件,以及在读取到该子文件后直接向管理服务器发送该子文件。这样该子文件不会被先缓存到该处理节点的缓存中,再由该处理节点从自身的缓存中读取该子文件并发送给管理服务器,从而减小了该子文件的传输路径,提高读取该子文件的性能。
[0024]
在一种可能的实现方式中,管理服务器当待访问文件的访问频率超过预设频率时,发送缓存任务至该多个处理节点的至少一个处理节点。接收缓存任务的处理节点缓存待访问文件包括的子文件。以及,管理服务器还记录待访问文件的标识所包括的子文件标识及缓存每个子文件的处理节点的标识。管理服务器当待访问文件缓存在该多个处理节点的缓存中时,生成至少一个读取任务,每个读取任务包括子文件的标识及该子文件所在的处理节点的标识;发送至少一个读取任务至该多个处理节点。接收到读取任务的处理节点根据接收的读取任务中的子文件的标识和该子文件所在的处理节点的标识读取子文件,向管理服务器发送读取的子文件。管理服务器接收接收到读取任务的处理节点读取的子文件。
[0025]
其中在待访问文件的访问频率超过预设频率时,表明待访问文件是常被访问的文件,由于各处理节点中的缓存空间有限,将常被访问的待访问文件保存到该至少一个处理节点的缓存中,这样不仅提高处理节点的缓存利用率,还提高了待访问文件的命中率。当待访问文件缓存在该多个处理节点的缓存中时,生成的读取任务包括子文件所在的处理节点的标识,这样接收该缓存任务的处理节点不需要再确定该子文件所在的处理节点,直接根据该子文件所在的处理节点的标识从该子文件所在的处理节点中读取该子文件,提高了读取该子文件的效率。
附图说明
[0026]
图1是本申请实施例提供的一种数据访问系统结构示意图;
[0027]
图2是本申请实施例提供的一种客户端访问数据访问系统的示意图;
[0028]
图3是本申请实施例提供的一种数据访问的方法流程图;
[0029]
图4是本申请实施例提供的一种缓存文件的方法流程图;
[0030]
图5是本申请实施例提供的一种删除文件的方法流程图;
[0031]
图6是本申请实施例提供的一种数据访问的装置结构示意图;
[0032]
图7是本申请实施例提供的另一种数据访问的装置结构示意图;
[0033]
图8是本申请实施例提供的另一种数据访问的装置结构示意图;
[0034]
图9是本申请实施例提供的另一种数据访问的装置结构示意图。
具体实施方式
[0035]
下面将结合附图对本申请实施方式作进一步地详细描述。
[0036]
参见图1,本申请实施例提供了一种数据访问系统,所述系统包括:管理服务器1、多个处理节点2、至少一个存储服务器3,管理服务器1与每个处理节点2相连,各处理节点2之间也相连。管理服务器1和每个处理节点2通过网络与各存储服务器3连接。
[0037]
所述管理服务器1用于将所接收到文件访问请求分解为多个任务,分别下发至各个处理节点2,由各个处理节点2分别访问存储服务器3中的文件,各处理节点2将读取的文件返回至管理服务器1,管理服务器1将各处理节点2返回的文件整合后,再返回给客户端(图未示)。
[0038]
每个存储服务器3中存储有供用户访问的文件。在存储服务器3中一个文件可以分成多个子文件来保存。例如,所述文件可以为数据库中的一个表单。假设该表单包括100条记录,在存储服务器3中使用三个子文件来保存该表单,该三个子文件分别为第一子文件、第二子文件和第三子文件。第一子文件保存该表单的第1条至第33条的记录,第二子文件保存该表单的第34条至第66条的记录,第三子文件保存该表单的第67条至第100条记录。
[0039]
对于存储服务器3中的任一个文件,管理服务器1可以将该文件包括的各子文件缓存到数据访问系统的一个或多个处理节点2中。对于该文件包括的每个子文件,管理服务器1在将该子文件缓存到一处理节点2时,将该文件的标识、该子文件的标识和该处理节点2的标识之间的对应关系保存在文件列表中。
[0040]
可选的,该处理节点2中包括缓存21,管理服务器1将该子文件缓存到处理节点2的缓存21中。
[0041]
管理服务器1向数据访问系统的处理节点2中缓存文件包括的各子文件的详细实现过程,可以参见后续图3所示实施例中的相关内容,在此先不做详细说明。
[0042]
关于上述的文件列表,接下来举个例子对其说明,对于上述的表单,假设该表单的标识为id1,该表单包括的第一子文件的标识、第二子文件的标识和第三子文件的标识分别为file1、file2和file3。假设管理服务器1将第一子文件、第二子文件和第三子文件分别缓存在第一处理节点、第二处理节点和第三处理节点中,以及,假设第一处理节点的标识、第二处理节点的标识和第三处理节点的标识分别为te1、te2和te3。管理服务器1将该表单的标识id1、第一子文件的标识file1和第一处理节点的标识te1对应保存在如下表1所示的文件列表,将该表单的标识id1、第二子文件的标识file2和第二处理节点的标识te2对应保存在如下表1所示的文件列表,以及将该表单的标识id1、第三子文件的标识file3和第三处理
节点的标识te3对应保存在如下表1所示的文件列表。
[0043]
表1
[0044]
文件的标识子文件的标识处理节点的标识id1file1te1id1file2te2id1file3te3
………………
[0045]
可选的,参见图2,用户需要访问待访问文件时,可以向客户端4输入待访问文件的标识。客户端4获取输入的待访问文件的标识,向管理服务器1发送包括待访问文件的标识的文件访问请求。
[0046]
管理服务器1接收该文件访问请求,根据该文件列表和该文件访问请求包括的待访问文件的标识,确定待访问文件是否缓存在数据访问系统的处理节点2中。如果待访问文件缓存在数据访问系统的处理节点2中,则从数据访问系统的处理节点2中获取待访问文件。如果待访问文件没有缓存在数据访问系统的处理节点2中,则控制处理节点2从待访问文件所在的存储服务器3中获取待访问文件。然后向客户端发送待访问文件。
[0047]
管理服务器1获取待访问文件的详细实现过程参见后续图3所示的实施例中的相关内容,在此不再详细说明。
[0048]
可选的,文件的标识可以为该文件的文件名等,子文件的标识可以为该子文件在存储服务器中的存储路径或文件名等。
[0049]
在本申请实施例中,由于管理服务器1保存有文件列表,该文件列表保存了数据访问系统中的处理节点2中缓存的文件的标识、该文件中的子文件的标识和该子文件所在处理节点2的标识之间的对应关系。这样管理服务器1在接收到客户端4发送的待访问文件的标识时,可以根据待访问文件的标识和该文件列表,确定待访问文件是否缓存在数据访问系统的处理节点2中。在待访问文件没有缓存在数据访问系统的处理节点2的情况,则控制处理节点2从待访问文件所在的存储服务器3中获取待访问文件。其中,处理节点2在管理服务器1的控制下不会先从数据访问系统的处理节点2的缓存21中读取文件,而是直接从存储服务器3中获取待访问文件,然后直接向管理服务器1发送获取的文件,且在向管理服务器1发送该文件之前不会将该文件缓存到其包括的缓存21中,这样待访问文件不需要先缓存到该处理节点2的缓存21中,再由处理节点2从其缓存21中读出并发送到管理服务器1,提高了访问文件的效率。
[0050]
本发明实施例中,所述数据访问系统主要用于数据库数据的访问,下面即以访问所述存储服务器3中文件为例介绍本发明实施例所提供的文件访问方法。
[0051]
参见图3,本申请实施例提供了一种文件访问的方法,所述方法可以应用于图1所述的系统,包括:
[0052]
步骤201:管理服务器1接收文件访问请求,该文件访问请求包括待访问文件的标识。
[0053]
用户通过客户端4登录至管理服务器1,然后客户端4显示管理服务器1提供的界面。用户可以通过管理服务器1提供的该界面输入文件访问请求。该文件访问请求可以为数据库访问语句,该数据库访问语句可以包括待访问文件的标识。该数据库访问语句可以为
结构化访问语言(structured query language,sql)访问语句,待访问文件可以为数据库中的表单。
[0054]
例如,假设用户通过客户端4输入sql访问语句为“select name from teacher join people on teacher.id=people.id”,该sql访问语句用于请求访问两个表单,其中一个表单的名称为“teacher”,该表单的标识为“teacher.id”,另一个表单的名称为“people”,该另一个表单的标识为“people.id”。管理服务器1在接收到该sql访问语句时,提取该sql访问语句中的该两个表单的标识,例如,在该sql访问语句中提取两个表单的标识,其中一个表单的标识为表单“teacher”的标识“teacher.id”,另一个表单的标识为表单“people”的标识“people.id”。
[0055]
可选的,管理服务器1还会分析该sql访问语句的语句格式是否正确,如果正确,则执行步骤202。如果不正确,则向客户端4反馈语句不正确的告警,客户端4接收告警并显示给用户。
[0056]
步骤202:管理服务器1根据该标识和文件列表确定数据访问系统中的处理节点2中是否缓存有待访问文件。
[0057]
参见上述表1所示,该文件列表用于保存文件的标识、子文件的标识与处理节点2的标识的对应关系。
[0058]
管理服务器1可以向数据访问系统的处理节点2中缓存文件。该文件包括多个子文件,在向某个处理节点2缓存该文件包括的一子文件时,将该文件的标识、该子文件的标识和该处理节点2的标识之间的对应关系保存在文件列表中。
[0059]
可选的,管理服务器1可以将访问频率超过预设频率的文件缓存到数据访问系统的处理节点2中。以及,从数据访问系统的处理节点2中删除访问频率低于预设频率的文件。
[0060]
可选的,管理服务器1将在最近预设时长的时间段内的访问频率超过第一预设频率阈值的文件缓存在数据访问系统的处理节点2中。以及,从数据访问系统的处理节点2中删除在最近预设时长的时间段的访问频率未超过第二预设频率阈值的文件。第一预设频率阈值大于或等于第二预设频率阈值。
[0061]
管理服务器1中保存有历史访问记录,该历史访问记录中的每条记录保存了用户已访问的文件的标识和访问时间。
[0062]
可选的,管理服务器1定期或不定期地在历史访问记录中统计在最近的预设时长的时间段内被访问的文件的访问频率,在该文件的访问频率超过第一预设频率阈值时,控制处理节点2从该文件所在的存储服务器3中获取该文件并将该文件缓存在数据访问系统的处理节点2中。
[0063]
参见图4,在实现时,可以通过如下2021至2026的操作来实现。该2021至2026的操作分别为:
[0064]
2021:管理服务器1从历史访问记录中选择文件列表中不存在的一个文件的标识,根据该历史访问记录和该文件的标识,统计该文件在最近的预设时长的时间段内的访问频率。
[0065]
选择的标识不在文件列表中,表示该标识对应的文件没有被缓存在数据访问系统的处理节点2中。
[0066]
在本步骤中,管理服务器1可以从历史访问记录获取该文件的标识对应的在最近
的预设时长的时间段内的访问时间。管理服务器1统计获取的访问时间的数目,统计的数目等于该文件的访问次数,根据该访问次数和预设时长得到该文件在最近的预设时长的时间段内的访问频率。
[0067]
2022:管理服务器1在该访问频率超过第一预设频率阈值时,根据该文件的标识获取该文件所在的存储服务器3的标识和该文件包括的至少一个子文件的标识,该存储服务器3的标识可以为为存储服务器3的地址,例如可以是该存储服务器3的网络之间互连的协议(internet protocol,ip)地址。
[0068]
技术人员可以事先向管理服务器1输入数据访问系统中的存储服务器3的标识。管理服务器1可以根据存储服务器3的标识,获取该存储服务器3保存的各文件的标识,将获取的各文件的标识和该存储服务器3的标识保存到文件的标识与存储服务器的标识的对应关系。
[0069]
可选的,对于该存储服务器3保存的各文件,管理服务器1还可以从该存储服务器3中获取该文件包括的各子文件的标识,将该文件的标识和获取的各子文件的标识保存在文件的标识与子文件的标识的对应关系。
[0070]
在本步骤中,管理服务器1统计出某个文件的访问频率超过第一预设频率阈值,可以根据该文件的标识,从文件的标识与存储服务器的标识的对应关系中获取该文件所在存储服务器3的标识。在管理服务器1保存有文件的标识与子文件的标识的对应关系的情况,管理服务器1根据该文件的标识,从文件的标识与子文件的标识的对应关系中获取该文件包括的每个子文件的标识。在管理服务器1没有保存文件的标识与子文件的标识的对应关系的情况,管理服务器1根据该存储服务器3的标识从该存储服务器3中获取该文件包括的每个子文件的标识。
[0071]
2023:管理服务器1生成至少一个缓存任务,每个缓存任务包括该存储服务器3的标识和该文件中的一个子文件的标识。
[0072]
2024:对于每个缓存任务,管理服务器1选择一个处理节点2并向该处理节点2发送该缓存任务。
[0073]
管理服务器1可以从该至少一个缓存任务中的第一个缓存任务开始遍历,每遍历到一个缓存任务,选择一个处理节点2,然后向该处理节点2发送该一个缓存任务。然后再遍历下一个缓存任务,重复上述过程,直到发送完最后一个缓存任务为止。
[0074]
可选的,管理服务器1在数据访问系统的处理节点2中随机选择一个处理节点2。或者,可选的,管理服务器1中可以保存有处理节点2的标识与空闲缓存空间大小的对应关系,该对应关系中保存了数据访问系统中的每个处理节点2的标识和空闲缓存空间大小。这样管理服务器1可以先基于该对应关系选择空闲缓存空间大小最大的至少一个处理节点2,该至少一个处理节点2的数目等于该文件中包括的子文件数目,然后在每遍历到一个缓存任务中从该至少一个处理节点2中选择一个处理节点2,再向该处理节点2发送该缓存任务。
[0075]
2025:该处理节点2接收一个缓存任务,根据该缓存任务中的该存储服务器3的标识,从该存储服务器3中获取该缓存任务中的子文件的标识对应的子文件,将获取的子文件缓存在自身的缓存21中。
[0076]
可选的,该处理节点2还可以向管理服务器1发送与该缓存任务相对应的缓存成功消息。
[0077]
可选的,该处理节点2在缓存该子文件后,还可以获取自身的剩余空闲缓存空间大小,向管理服务器1发送该剩余空闲缓存空间大小。
[0078]
2026:管理服务器1可以将该文件的标识、该缓存任务中的子文件的标识和选择的处理节点2的标识对应保存到数据列表中。
[0079]
可选的,管理服务器1在为该缓存任务选择一个处理节点2之后执行本步骤,或者,在接收到该处理节点2发送的与该缓存任务相对应的缓存成功消息后执行本步骤。
[0080]
可选的,管理服务器1还可以接收该处理节点2的剩余空闲缓存空间大小,在处理节点2的标识与空闲缓存空间大小的对应关系中将该处理节点2的空闲缓存空间大小分别更新为接收的剩余空闲缓存空间大小。
[0081]
可选的,管理服务器1还获取数据访问系统的处理节点2中缓存的各文件在最近的预设时长的时间段内的访问频率,从数据访问系统的处理节点2中删除访问频率低于预设第二预设频率阈值的文件。
[0082]
参见图5,在实现时,可以通过如下2121至2123的操作来实现。该2121至2123的操作分别为:
[0083]
2121:对于该文件列表中的任一个文件的标识,管理服务器1根据该文件的标识和历史访问记录统计在最近的预设时长的时间段内该文件的访问频率。
[0084]
在实现时,根据该文件的标识在该历史访问记录中获取该文件对应的各访问时间,统计在最近的预设时长的时间段内的各访问时间的数目,得到该文件的访问次数,根据该访问次数得到该文件的访问频率。
[0085]
2122:管理服务器1在该文件的访问频率低于第二预设频率阈值时,从该文件列表中获取该文件包括的各子文件的标识和各子文件所在的处理节点2的标识。
[0086]
2123:对于每个子文件,管理服务器1向该子文件所在的处理节点2发送删除任务,该删除任务包括该子文件的标识,然后从该文件列表中删除包括该文件的标识的记录。
[0087]
该处理节点2接收该删除任务,从自身的缓存21中删除该删除任务中的子文件的标识对应的子文件。
[0088]
可选的,该处理节点2在删除该子文件后,还可以获取其缓存21中的剩余空闲缓存空间大小,向管理服务器1发送该剩余空闲缓存空间大小。
[0089]
可选的,管理服务器1还接收该处理节点2的剩余空闲缓存空间大小,在处理节点2的标识与空闲缓存空间大小的对应关系中将该处理节点2的空闲缓存空间大小更新为接收的该剩余空闲缓存空间大小。
[0090]
由于数据访问系统的处理节点2中保存在最近的预设时长的时间段内的访问频率超过第一预设频率阈值的文件,这样在访问文件时可以提高处理节点2中缓存的每个文件的命中率。
[0091]
上述只是本申请中列举的向数据访问系统的处理节点2中缓存文件的一种实现示例,以从数据访问系统的处理节点2中淘汰文件的一种实现示例。对于其他向数据访问系统的处理节点2中缓存文件的实现方式,以及其他从数据访问系统的处理节点2中淘汰文件的实现方式也可应用本申请,在此不再一一列举。
[0092]
在本步骤中,管理服务器1可以根据待访问文件的标识查询该文件列表,如果没有查询出待访问文件包括的各子文件的标识和各子文件所在的处理节点2的标识,则确定数
据访问系统的处理节点2中没有缓存待访问文件。如果查询出待访问文件包括的各子文件的标识和各子文件所在的处理节点2的标识,则确定数据访问系统的处理节点2中缓存有待访问文件。
[0093]
可选的,管理服务器1在接收到该文件访问请求后,还可以将当前时间作为待访问文件的访问时间,可以将待访问文件的标识和该访问时间之间的对应关系保存在历史访问记录中。
[0094]
步骤203:在数据访问系统的处理节点2中没有缓存待访问文件时,管理服务器1生成至少一个第一读取任务,每个第一读取任务包括待访问文件所在的存储服务器2的地址和待访问文件中的一个子文件的标识。
[0095]
每个第一读取任务包括的子文件的标识不同。
[0096]
在本步骤中,管理服务器1可以根据待访问文件的标识从文件的标识与存储服务器3的标识的对应关系中获取待访问文件所在的存储服务器3的标识。
[0097]
在管理服务器1保存有文件的标识与子文件的标识的对应关系的情况,管理服务器1根据待访问文件的标识,从文件的标识与子文件的标识的对应关系中获取待访问文件包括的至少一个子文件的标识,生成至少一个第一读取任务,每个第一读取任务包括该存储服务器3的标识和待访问文件中的一个子文件的标识。
[0098]
在管理服务器1没有保存文件的标识与子文件的标识的对应关系的情况,管理服务器1根据该存储服务器3的标识从该存储服务器3中获取待访问文件包括的至少一个子文件的标识,生成至少一个第一读取任务,每个第一读取任务包括该存储服务器3的标识和待访问文件中的一个子文件的标识。
[0099]
可选的,管理服务器1还可以统计待访问文件在最近的预设时长的时间段内的访问频率,在该访问频率为超过第一预设频率阈值时,生成的每个第一读取任务还可以包括缓存指示。该缓存指示用于指示接收到第一读取任务的处理节点2在从待访问文件所在存储服务器3中获取到待访问文件的子文件时,缓存该子文件。
[0100]
可选的,管理服务器1可以根据待访问文件的标识从该访问历史记录中获取待访问文件对应的各访问时间,统计在最近的预设时长的时间段内的访问时间的数目得到待访问文件被访问的次数,将该次数作为待访问文件的访问频率。
[0101]
步骤204:对于该至少一个第一读取任务中的每个第一读取任务,管理服务器1选择一个处理节点2并向该处理节点2发送该第一读取任务。
[0102]
在本步骤中,管理服务器1可以从该至少一个第一读取任务的第一个第一读取任务开始遍历,每当遍历到一个第一读取任务时,从数据访问系统包括的处理节点2中选择一个处理节点2,向该处理节点2发送该第一读取任务。在发送完该第一读取任务时,管理服务器1再遍历下一个第一读取任务,再重复上述过程,直到发送完最后一个第一读取任务时为止。
[0103]
可选的,可以通过如下两种方式从数据访问系统的处理节点2中选择一个处理节点。该两种方式分别为:
[0104]
方式一,管理服务器1可以从数据访问系统的处理节点2中随机选择一个处理节点2。
[0105]
方式二,管理服务器1可以从数据访问系统的处理节点2中选择当前处理的任务数
目最少的一个处理节点2。
[0106]
在方式二中,管理服务器1中保存有处理节点2的标识与任务数目的对应关系,该对应关系中的每条记录包括一个处理节点2的标识和该处理节点2当前正在处理的任务数目。
[0107]
这样管理服务器1在选择处理节点2时从该对应关系中读取该数据访问系统中的每个处理节点2的任务数目,选择任务数目最少的一个处理节点2。
[0108]
在方式二中,当选择任务数目最少的一个处理节点2后,在该对应关系中增加该处理节点2的任务数目。
[0109]
可选的,管理服务器1在给第一个第一读取任务选择处理节点2时,可以将该处理节点2作为文件汇总节点,然后在发送第一读取任务之前,在第一读取任务中添加该文件汇总节点的标识。或者,管理服务器1也可以在生成该至少一个第一读取任务之前,通过上述方式一或方式二选择一个处理节点2作为文件汇总节点,这样生成的每个第一读取任务中包括该文件汇总节点的标识。
[0110]
可选的,管理服务器1还向文件汇总节点发送汇总任务,该汇总任务包括待访问文件中的子文件数目。
[0111]
通过上述方式一或方式二选择的文件汇总节点可能与管理服务器1为每个第一读取任务选择的处理节点2不同,也可能与管理服务器1为某个第一读取任务选择的处理节点2相同。
[0112]
可选的,管理服务器1每遍历到一个第一读取任务后,便选择一个处理节点2。对于某个处理节点2,该处理节点2可能被管理服务器1选择多次,即在不同时间向该处理节点2发送多个第一读取任务。
[0113]
在使用方式二时,管理服务器1记录被选择的处理节点2分配的第一读取任务数目,即保存被选择的处理节点2的标识和第一读取任务数目的对应关系。
[0114]
步骤205:该处理节点2接收该第一读取任务,根据该第一读取任务从待访问文件所在的存储服务器3中获取该第一读取任务包括的标识对应的子文件,向管理服务器1发送获取的子文件,执行步骤209。
[0115]
在本步骤中,该处理节点2接收该第一读取任务,该处理节点2根据该第一读取任务包括的存储服务器3的标识建立该处理节点2与该存储服务器3之间的网络连接,根据该第一读取任务包括的子文件的标识通过该网络连接从该存储服务器3中获取该子文件,向管理服务器1发送该子文件。
[0116]
可选的,由于第一读取任务包括的存储服务器3的标识,这样处理节点2可以确定出数据访问系统包括的处理节点2中没有缓存待访问文件,所以该处理节点2根据该存储服务器3的标识直接建立该处理节点2与该存储服务器3之间的网络连接,从该存储服务器3中获取子文件并直接向管理服务器1发送该子文件。该处理节点2在向管理服务器1发送该子文件之前不会将该子文件缓存到该处理节点2的缓存21中,这样该子文件不会经过该处理节点2的缓存21,减少了该子文件的传输路径,提高了该子文件的传输效率。
[0117]
可选的,如果第一读取任务中还包括文件汇总节点的标识,在该处理节点2不是文件汇总节点时,该处理节点2根据该文件汇总节点的标识向文件汇总节点发送获取的子文件。在该处理节点2是文件汇总节点时,该处理节点2还接收汇总任务,以及接收其他处理节
点2发送的子文件,在自身获取的子文件数目和接收的子文件数目达到该汇总任务中的子文件数目时,将自身获取的子文件和接收的子文件组成待访问文件,向管理服务器1发送待访问文件。
[0118]
可选的,在文件汇总节点与管理服务器1为每个第一读取任务选择的处理节点2不同的情况,该文件汇总节点接收汇总任务,以及接收其他处理节点2发送的子文件,在接收的子文件数目达到该汇总任务包括的子文件数目时,将接收的子文件组成待访问文件,向管理服务器1发送待访问文件。
[0119]
可选的,如果第一读取任务中还包括缓存指示,该处理节点2在获取到子文件时,将获取的子文件缓存在处理节点2包括的缓存21中。该处理节点2在向管理服务器1发送获取的子文件之后,可以将获取的子文件缓存在该处理节点2包括的缓存21中。或者,该处理节点2在向管理服务器1发送获取的子文件的同时,可以将获取的子文件缓存在该处理节点2包括的缓存21中。
[0120]
步骤206:在查询出数据访问系统中的处理节点2中缓存有待访问文件时,管理服务器1生成至少一个第二读取任务。
[0121]
在数据访问系统中的处理节点2中缓存有待访问文件时,管理服务器1可以从文件列表中查询出待访问文件中的每个子文件的标识和每个子文件所在的处理节点2的标识。
[0122]
每个第二读取任务包括待访问文件中的一个子文件的标识和该子文件所在的处理节点2的标识。
[0123]
步骤207:对于该至少一个第二读取任务中的每个第二读取任务,管理服务器1选择一个处理节点2并向该处理节点2发送该第二读取任务。
[0124]
在本步骤中,管理服务器1可以从该至少一个第二读取任务的第一个第二读取任务开始遍历,每当遍历到一个第二读取任务时,从数据访问系统包括的处理节点2中选择一个处理节点2,向该处理节点2发送该第二读取任务。在发送完该第二读取任务时,管理服务器1再遍历下一个第二读取任务,再重复上述过程,直到发送完最后一个第二读取任务时为止。
[0125]
可选的,可以通过上述方式一或方式二从数据访问系统的处理节点2中选择一个处理节点2。
[0126]
在使用方式二时,管理服务器1记录被选择的处理节点2分配的第二读取任务数目,即保存被选择的处理节点2的标识和第二读取任务数目的对应关系。
[0127]
除了上述方式一和方式二外,还可以采用如下方式三来选择一个处理节点3:
[0128]
方式三、管理服务器1直接选择该第二读取任务中的处理节点2的标识对应的处理节点2。
[0129]
可选的,管理服务器1在给第一个第二读取任务选择处理节点2时,可以将该处理节点2作为文件汇总节点,然后在发送第二读取任务之前,在第二读取任务中添加该文件汇总节点的标识。或者,管理服务器1也可以在生成至少一个第二读取任务之前,通过上述方式一或方式二选择一个处理节点2作为文件汇总节点,这样生成的每个第二读取任务中包括该文件汇总节点的标识。
[0130]
可选的,管理服务器1还向文件汇总节点发送汇总任务,该汇总任务包括待访问文件中的子文件数目。
[0131]
在通过上述方式一或方式二选择的文件汇总节点可能与管理服务器1为每个第二读取任务选择的处理节点2不同,也可能与管理服务器1为某个第二读取任务选择的处理节点2相同。
[0132]
可选的,管理服务器1每遍历到一个第二读取任务后,便选择一个处理节点2。对于某个处理节点2,该处理节点2可能被管理服务器1选择多次,即在不同时间向该处理节点2发送多个第二读取任务。
[0133]
步骤208:该处理节点2接收该第二读取任务,根据该第二读取任务包括的子文件的标识和处理节点2的标识获取该子文件,向管理服务器1发送获取的子文件。
[0134]
在本步骤中,该处理节点2接收该第二读取任务,该第二读取任务包括一个子文件的标识和一个处理节点2的标识。如果该处理节点2是该第二读取任务中的处理节点2的标识对应的处理节点2,则该处理节点2根据该第二读取任务中的子文件的标识获取对应的子文件。如果该处理节点2不是该第二读取任务中的处理节点2的标识对应的处理节点2,则该处理节点2根据该第二读取任务中的子文件的标识,从该第二读取任务中的处理节点2的标识对应的处理节点2中获取对应的子文件。
[0135]
可选的,如果第二读取任务中还包括文件汇总节点的标识,在该处理节点2不是文件汇总节点时,该处理节点2根据该文件汇总节点的标识向文件汇总节点发送获取的子文件。在该处理节点2是文件汇总节点时,该处理节点2还接收汇总任务,以及接收其他处理节点2发送的子文件,在自身获取的子文件数目和接收的子文件数目之和达到该汇总任务中的子文件数目时,将自身获取的子文件和接收的子文件组成待访问文件,向管理服务器1发送待访问文件。
[0136]
可选的,在文件汇总节点与管理服务器1为每个第二读取任务选择的处理节点2不同的情况,该文件汇总节点接收汇总任务,以及接收其他处理节点2发送的子文件,在接收的子文件数目达到该汇总任务中的子文件数目时,将接收的子文件组成待访问文件,向管理服务器1发送待访问文件。
[0137]
步骤209:管理服务器1接收各处理节点2发送的子文件,得到待访问文件,向客户端4发送待访问文件。
[0138]
可选的,管理服务器1将接收的各子文件整合成待访问文件,向客户端4发送待访问文件。
[0139]
在第一读取任务或第二读取任务中还包括文件汇总节点的标识,管理服务器1接收文件汇总节点发送的待访问文件,向客户端4发送待访问文件。
[0140]
可选的,在使用方式二选择处理节点2的情况下,管理服务器1中保存有处理节点2的标识和任务数目的对应关系。对于被选择的任一个处理节点2,将处理节点2的标识和任务数目的对应关系中保存的该处理节点2的任务数目减去记录的该处理节点2的第一读取任务数目或第二读取任务数目。
[0141]
在本申请实施例中,管理服务器1在确定数据访问系统的处理节点2中没有缓存待访问文件时,生成至少一个第一读取任务,每个第一读取任务包括待访问文件所在的存储服务器3的标识和待访问文件中的一子文件的标识。这样使得处理节点2接收第一读取任务时不会先访问处理节点2中的缓存21,而是可以直接根据第一读取任务包括的该存储服务器3的标识从该存储服务器3中获取该子文件,然后向管理服务器1发送该子文件,该处理节
点2在向管理服务器1发送该子文件之前不会将该子文件缓存到该处理节点2的缓存21中,从而使得该子文件可以不经过该处理节点2的缓存21,降低了待访问文件的传输时延。在数据访问系统的处理节点2缓存有待访问文件时,生成的第二读取任务中包括待访问文件的子文件所在处理节点2的标识,这样便于接收该第二读取任务的处理节点2基于该第二读取任务中的处理节点2的标识获取子文件,提高了访问文件的效率。另外,在数据访问系统的处理节点2中没有保存待访问文件时,获取待访问文件在最近的预设时长的时间段内的访问频率,在该访问频率超过第一预设频率阈值时,控制处理节点2缓存待访问文件。在访问频率超过第一预设频率阈值时,表明待访问文件是近期常被访问的文件,将待访问文件保存到数据访问系统的处理节点2的缓存21中,这样不仅提高处理节点2的缓存21的利用率,还提高了文件的命中率。
[0142]
参见图6,本申请实施例提供了一种数据访问的装置300,该装置300部署在上述管理服务器1中,该装置300与多个处理节点2连接,该多个处理节点2连接至存储服务器3。该装置300包括:
[0143]
接收单元301,用于接收文件访问请求,该文件访问请求中携带待访问文件的标识。
[0144]
处理单元302,用于根据待访问文件的标识确定待访问文件是否缓存在该多个处理节点2的缓存21中,该装置300中存储有该多个处理节点2中的缓存21中缓存的文件的标识。
[0145]
处理单元303,还用于当待访问文件没有缓存在该多个处理节点2的缓存21中,则指示该多个处理节点2中的至少一个处理节点2从存储服务器3中获取所述待访问文件。
[0146]
可选的,处理单元302确定待访问文件是否缓存在该多个处理节点2的缓存21的详细实现过程,可以参见图3所示实施例的步骤202中的相关内容,在此不再详细说明。
[0147]
参见图6,可选的,该装置300还包括:第一发送单元302,
[0148]
处理单元302,用于从该存储服务器3中获取待访问文件所包括的至少一个子文件的标识及每个子文件所在的存储服务器3的标识;针对待访问文件所包括的每个子文件生成一个读取任务,每个读取任务中包括一个子文件的标识,及该子文件所在的存储服务器3的标识。
[0149]
第一发送单元303,用于将每个读取任务分别发送至一个处理节点2,指示接收到读取任务的处理节点2从存储该子文件的存储服务器3中读取该子文件。
[0150]
接收单元301,用于接收接收到读取任务的处理节点2读取的子文件。
[0151]
处理单元302,用于将接收的子文件合并为待访问文件。
[0152]
可选的,处理单元302生成读取任务的详细实现过程,可以参见图3所示实施例的步骤203中的相关内容。第一发送单元303发送读取任务的详细实现过程,可以参见图3所示实施例的步骤204中的相关内容,在此不再详细说明。
[0153]
参见图6,可选的,该装置300还包括:第二发送单元304,
[0154]
第二发送单元304,用于当待访问文件的访问频率超过预设频率时,发送缓存任务至该多个处理节点2的至少一个处理节点2,以指示该至少一个处理节点2将待访问文件所包括的子文件缓存至该至少一个处理节点2。
[0155]
处理单元302,还用于记录待访问文件的标识所包括的子文件标识及缓存每个子
文件的处理节点2的标识;当待访问文件缓存在该多个处理节点2的缓存21中时,生成至少一个读取任务,每个读取任务包括子文件的标识及该子文件所在的处理节点2的标识。
[0156]
第二发送单元304,还用于发送至少一个读取任务至多个处理节点2,指示该多个处理节点2从存储有该子文件的处理节点2的缓存21中读取该子文件。
[0157]
处理单元302,还用于将取的子文件合成待访问文件。
[0158]
可选的,第二发送单元304发送缓存任务的详细实现过程,可以参见图4所示实施例中的步骤2023和2024中的相关内容。处理单元302生成读取任务的详细实现过程,可以参见图3所示实施例中的步骤206中的相关内容。以及第二发送单元304发送读取任务的详细实现过程,可以参见图3所示实施例中的步骤207中的相关内容,在此不再详细说明。
[0159]
可选的,第二发送单元304,还用于当待访问文件的访问频率低于预设频率时,向待访问文件包括的子文件所在的处理节点2发送删除任务,该删除任务包括该子文件的标识,以指示该处理节点2删除该子文件。
[0160]
处理单元302,还用于删除该装置300中记录的该子文件的标识及该处理节点2的标识。
[0161]
可选的,第二发送单元304发送删除任务的详细实现过程,可以参见图5所示实施例中的步骤2122和2123中的相关内容,在此不再详细说明。
[0162]
在本申请实施例中,由于处理单元302根据待访问文件的标识确定待访问文件是否缓存在该多个处理节点2的缓存21中;当待访问文件没有缓存在该多个处理节点2的缓存21中,则指示该多个处理节点2中的至少一个处理节点2从存储服务器3中获取待访问文件。这样对于该至少一个处理节点2根据处理单元302的指示直接从存储服务器3中读取待访问文件,读取到待访问文件后直接向该装置300返回待访问文件,在向该装置300返回待访问文件之前不会将待访问文件缓存到该至少一个处理节点2的缓存21中。如此待访问文件不需要经过该至少一个处理节点2的缓存21,从而减小了待访问文件的传输路径,实现减小数据读取的路径,提高数据访问的性能。
[0163]
参见图7,本申请实施例提供了一种数据访问的装置400,该装置400部署在上述处理节点2中,该装置400是与管理服务器1连接的多个处理节点2中的一个,该多个处理节点2连接到存储服务器3。该装置400包括:
[0164]
接收单元401,用于接收读取任务,该读取任务是管理服务器1在确定待访问文件没有缓存在该多个处理节点2的缓存21中时发送的任务,该读取任务包括待访问文件中的一个子文件的标识和该子文件所在的存储服务器3的标识。
[0165]
处理单元402,用于根据该子文件的标识从存储服务器3的标识对应的存储服务器3中读取该子文件。
[0166]
发送单元403,用于向管理服务器1发送读取的子文件。
[0167]
可选的,处理单元402读取子文件的详细实现过程,可以参见图3所示实施例中的步骤205中的相关内容,在此不再详细说明。
[0168]
可选的,接收单元401,还用于接收缓存任务,该缓存任务是管理服务器1在待访问文件的访问频率超过预设频率时发送的任务,该缓存任务包括待访问文件的一个子文件的标识和该子文件所在的存储服务器3的标识。
[0169]
处理单元402,还用于根据该子文件的标识从存储服务器3的标识对应的存储服务
器3中读取该子文件;将该子文件存储在该装置400的缓存21中。
[0170]
可选的,处理单元402缓存子文件的详细实现过程,可以参见图4所示实施例中的步骤2025中的相关内容,在此不再详细说明。
[0171]
在本申请实施例中,由于接收单元401接收的读取任务包括待访问文件中的一个子文件的标识和该子文件所在的存储服务器3的标识;处理单元402根据该子文件的标识从该存储服务器3的标识对应的存储服务器3中读取该子文件;发送单元403向管理服务器1发送读取的子文件。这样处理单元402可以根据该存储服务器3的标识直接从该存储服务器3中读取该子文件,然后发送单元403直接返回给管理服务器1,且在向管理服务器1返回该子文件之前,不会处理单元402将该子文件缓存到该装置400的缓存21中。所以返回给管理服务器1的子文件不会经过该装置400的缓存21,减小了该子文件的传输路径,实现减小数据读取的路径,提高数据访问的性能。
[0172]
参见图8,图8所示为本申请实施例提供的一种数据访问的装置500示意图。该装置500包括至少一个处理器501,总线系统502、存储器503和收发器504。
[0173]
该装置500是一种硬件结构的装置,可以用于实现图6所述的装置中的功能单元。例如,本领域技术人员可以想到图6所示的装置300中的处理单元302可以通过该至少一个处理器501调用存储器503中的应用程序代码来实现,图6所示的装置300中的接收单元301、第一发送单元303和第二发送单元304可以通过该收发器504来实现。
[0174]
可选的,该装置500还可用于实现如图1或图3所述的实施例中管理服务器1的功能。
[0175]
可选的,上述处理器501可以是一个通用中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制本申请方案程序执行的集成电路。
[0176]
上述总线系统502可包括一通路,在上述组件之间传送信息。
[0177]
上述存储器503可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
[0178]
其中,存储器503用于存储执行本申请方案的应用程序代码,并由处理器501来控制执行。处理器501用于执行存储器503中存储的应用程序代码,从而实现本专利方法中的功能。
[0179]
在具体实现中,作为一种实施例,处理器501可以包括一个或多个cpu,例如图5中的cpu0和cpu1。
[0180]
在具体实现中,作为一种实施例,该装置500可以包括多个处理器,例如图5中的处理器501和处理器508。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可
以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
[0181]
参见图9,图9所示为本申请实施例提供的一种数据访问的装置600示意图。该装置700包括至少一个处理器601,总线系统602、存储器603和收发器604。该存储器603中还包括缓存21,该缓存21用于保存访问频率超过预设频率的文件包括的子文件。
[0182]
该装置600是一种硬件结构的装置,可以用于实现图7所述的装置中的功能单元。例如,本领域技术人员可以想到图7所示的装置400中的处理单元402可以通过该至少一个处理器601调用存储器603中的代码来实现,图7所示的装置400中的发送单元403和接收单元401可以通过该收发器604来实现。
[0183]
可选的,该装置600还可用于实现如图1或图3所述的实施例中处理节点2的功能。
[0184]
可选的,上述处理器601可以是一个通用中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制本申请方案程序执行的集成电路。
[0185]
上述总线系统602可包括一通路,在上述组件之间传送信息。
[0186]
上述存储器603可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
[0187]
其中,存储器603用于存储执行本申请方案的应用程序代码,并由处理器601来控制执行。处理器601用于执行存储器603中存储的应用程序代码,从而实现本专利方法中的功能。
[0188]
在具体实现中,作为一种实施例,处理器601可以包括一个或多个cpu,例如图7中的cpu0和cpu1。
[0189]
在具体实现中,作为一种实施例,该装置600可以包括多个处理器,例如图7中的处理器601和处理器608。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
[0190]
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1