专利名称:一种p2p缓存数据淘汰方法
技术领域:
本发明涉及网络视频P2P技术,更具体地,涉及一种P2P缓存数据淘汰方法。
背景技术:
P2P是英文Peer-to-Peer (对等)的简称,又被称为〃点对点〃、〃对等〃技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上,对于在P2P系统中传输的P2P数据,可以称为点对点网络传输数据。P2P具有非中心化、可扩展性、健壮性、隐私保护、负载均衡等特点。由于P2P的诸多优势,也伴随着P2P的快速发展,P2P的应用变得越来越广泛。网络视频P2P就是P2P应用在网络视频上的技术。传统的网络视频P2P系统,客户端在淘汰缓存数据时,主要是根据缓存数据存在时间的先后进行淘汰,先下载的数据先淘汰。该淘汰方式,可能会淘汰客户端需要访问的数据,例如客户端经常访问的数据,或最近需要访问的数据,导致客户端在后续访问上述淘汰的数据时,不得不重新进行数据下载,从而降低了客户端访问数据的效率
发明内容
针对现有技术中客户端淘汰数据的方式导致访问数据效率低的问题,本发明提供一种P2P缓存数据淘汰方法,用于提高客户端访问数据的效率。本发明实施例通过如下技术方案实现
根据本发明实施例,提供了一种P2P缓存数据淘汰方法,包括
客户端在确定数据淘汰需求后,根据各点对点网络传输P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据,所述P2P数据为在本地内存缓存的数据;并淘汰确定出的数据。通过本发明实施例提供的上述技术方案,客户端在确定数据淘汰需求后,可以根据本地内存存储缓存的各P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据,并淘汰确定出的数据,与现有技术中客户端根据数据被保存时间的先后对数据进行淘汰的技术方案比较,本技术方案中客户端能够根据本地内存缓存的数据对应的被访问信息,确定出需要淘汰的数据,避免了对客户端可能访问的数据的淘汰,从而提高了客户端访问数据的效率。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明实施例起用于解释本发明,并不构成对本发明的限制。在附图中图1为本发明提供的一种P2P缓存数据淘汰方法的流程示意 图2为本发明提供的客户端确定数据淘汰需求的的流程示意 图3为本发明提供的客户端淘汰数据的优选实施方式的流程示意 图4为本发明提供的数据排序的结构示意 图5为本发明提供的客户端淘汰数据的又一优选实施方式的流程示意图。
具体实施例方式为了给出提高客户端访问数据的效率的实现方案,本发明实施例提供了一种P2P缓存数据淘汰方法,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例该实施例提供了一种P2P缓存数据淘汰的方法,该方法能够应用在P2P系统的终端中,通过在P2P系统的终端中应用本技术方案,能够避免淘汰安装在终端的客户端可能访问的数据,从而能够达到提高客户端访问数据的效率。图1示出了本实施例提供的一种P2P缓存数据淘汰方法的流程示意图,具体地,如图1所示,客户端淘汰数据的过程,主要包括以下步骤
步骤101、客户端在确定 数据淘汰需求后,根据P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据。该步骤101中,P2P数据为在客户端本地内存缓存的数据。步骤102、淘汰确定出的数据。该步骤102中,确定出的数据可以为一个视频版文件,即表征一个视频文件数据的数据模块,也可以为构成一个视频文件的多个数据单元中的一个数据单元。确定出的数据具体的信息,主要依赖于视频文件的大小,若视频文件的数据量很小,可以保存在一个数据模块中在网络中传输并供客户端下载使用,则客户端下载的一个数据模块为一个视频文件,并将该数据模块保存在本地;若视频文件比较大,考虑视频文件在网络中传输、客户端下载使用速率的因素,可以根据实际网络数据传输状态或其他原因,将视频文件处理为多个数据单元在网络中进行传输,并供客户端下载使用,如此,客户端会将下载的各数据单元保存在本地。至此,客户端淘汰数据的流程结束。在图1对应的流程中,客户端在确定数据淘汰需求后,可以根据本地内存存储缓存的各P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据,并淘汰确定出的数据,与现有技术中客户端根据数据被保存时间的先后对数据进行淘汰的技术方案比较,本技术方案中客户端能够根据本地内存缓存的数据对应的被访问信息,确定出需要淘汰的数据,避免了对客户端可能访问的数据的淘汰,从而提高了客户端访问数据的效率。在图1所示流程包括的步骤101之前,即客户端在确定数据淘汰需求之前,客户端会将已经访问过的数据缓存在本地内存,例如,客户端在被启动后,可以将已经访问的数据缓存在本地内存的指定存储空间中,实际应用中,为了提高终端处理数据的效率,避免开启的客户端占据太多内存影响终端的数据处理效率,进而影响客户端的正常运行,可以预先设定出阈值,以控制本地缓存该客户端对应的P2P数据的存储空间,使存储P2P数据的存储空间对应的表征空间大小的数值小于等于该设定阈值。针对上述存储P2P数据的方式,相应的,本实施例还提供了一种客户端确定数据淘汰需求的优选实施方式,具体地,如图2所示,客户端确定数据淘汰需求的过程,主要包括以下步骤
步骤201、客户端开启后,将P2P数据缓存在内存的指定存储空间。该步骤201中,指定存储空间提供的存储空间小于设定阈值,该设定阈值可以根据实际情况进行灵活的设置,以提高或改善终端的数据处理速率,例如,可以将设定阈值设置为128MB,若P2P系统中的各终端的内存较大,且终端的数据处理能力较好,则可以考虑将设定阈值设置为256MB,甚至更大,具体地,可以根据实际情况进行设置,此处不再赘述。步骤202、客户端确定存在P2P数据缓存的需求。步骤203、客户端确定设定阈值与P2P数据占用的存储空间的数值的差值。该步骤203,客户端确定上述差值,即确定相对设定阈值,还剩余多少用于存储数据的存储空间。步骤204、客户端确定差值是否小于或等于将要存储的P2P数据需要的存储空间的数值,若否,执行步骤205 ;若是,执行步骤206。步骤205、客户 端将需要存储的P2P数据存储到内存中。步骤206、客户端确定对本地内存中存储的P2P数据进行淘汰。至此,客户端确定数据淘汰需求的流程结束。图2提供的客户端确定数据淘汰需求的流程,为本实施例提供的客户端确定数据淘汰需求的优选实施方式,实际应用中,还可以设置其他确定数据淘汰需求的方式,例如,客户端确定已经存储的P2P数据占用的存储空间对应的数值为设定阈值,则可以对存储的P2P数据进行淘汰,具体的其他确定数据淘汰需求的方式,此处不再赘述。实际应用中,图1对应流程包括的步骤101中涉及的各P2P数据对应的被访问信息,可以为各P2P数据的被访问时间,也可以为各P2P数据的被访问次数,该各P2P数据的被访问时间以及被访问次数,都可以作为进行数据淘汰的依据,具体地,本方案提供了以下两种优选实施方式
优选实施方式一
该优选实施方式一中,各P2P数据对应的被访问信息至少包括各P2P数据对应的被访问时间,则客户端淘汰数据的过程,如图3所示,包括以下步骤
步骤301、客户端根据各P2P数据对应的被访问时间与当前时间的差值的大小,对各P2P数据进行排序。该步骤301中,可以根据数据保存与调用的需要对P2P数据进行排序,例如,将正在访问的数据放在队列的首位,将最近访问的数据放在正在访问的数据的下一个位置,将访问时间较远的数据放在队列的末位,并对各数据设置标识,用于识别各数据,对应各标识保存各数据的存储地址,用于准确读取数据。如图4所示的数据排序的结构示意图,在内存存储的数据单元1、数据单元2、数据单元3、……、数据块N,以指针链接方式连接成一个数据链表,其中,数据单元I为正在访问的数据,数据单元2为被访问时间距当前时间的时间差值最小的数据,数据块N为被访问时间距当前时间的时间差值最大的数据。当数据单元2被访问时,数据单元2就会被提至链表首位,则数据单元的排序为变成
数据单元2->数据单元1_>数据单元3->......->数据单元N
因此,客户端可以访问一个数据单元后,就对保存的各数据单元进行重新排序,将正在访问的数据放在队列的首位。实际应用中,可以根据用于缓存数据的存储空间的大小,将已经访问的数据中的部分数据缓存在内存中并排序,例如将距离当前时间最近的访问时间对应的数据放在数据队列的首位,将保存的数据中距离当前时间最远的访问时间对应的数据放在数据队列的末位。步骤302、客户端在确定数据淘汰需求后,根据各P2P数据对应的被访问时间与当前时间的差值,确定差值中最大差值对应的存储位置上的数据。该步骤302、客户端基于步骤301提供的排序后的P2P数据,若差值中最大差值对应的存储位置为队列(数据链表)的末位,则可以直接确定出末位上的数据,若差值中最大差值对应的存储位置为队列(数据链表)的首位,则直接确定出首位上的数据。步骤303、淘汰确定出的数据。至此,客户端淘汰数据的流程结束。优选实施方式二 该优选实施方式二中,各P2P数据对应的被访问信息至少包括各P2P数据对应的被访问次数,则客户端淘汰数据的过程,如图5所示,包括以下步骤
步骤501、客户端根据各P2P数据对应的被访问次数,对各P2P数据进行排序。该步骤501中,客户端以各P2P数据对应的被访问次数,作为数据排序的依据,例如,将接受访问次数最多的P2P数据放在队列的首位,将接受访问次数最少的P2P数据放在队列的末位,实际应用中,可以根据用于缓存数据的存储空间的大小,将访问次数较多的P2P数据缓存在内存中并排序,并在存储的P2P数据被访问次数变更后,对各P2P数据重新排序,具体的排序方式可以参考图3包括的步骤301中的相关描述,此处不再赘述。具体的实施方式,可以参考图3对应的步骤301。步骤502、客户端确定数据淘汰需求后,根据各P2P数据分别对应的被访问次数,确定数值最小的次数对应的存储位置上的数据。该步骤502中的具体数据确定方式,可以参考上述步骤302中的相关描述。步骤503、客户端淘汰确定出的数据。 至此,客户端淘汰数据的流程结束。以上,为本实施例提供的客户端淘汰数据的优选实施方式。在客户端对确定出的数据淘汰后,可以将正在下载的数据或将要保存的数据存储在P2P数据队列的第一个数据对应的存储位置的前一存储位置上,以便于客户端对该数据进行后续访问。上述详细描述通过实施例和/或示意图阐明了系统和/或过程的各种实施例。就这些示意图和/或包含一个或多个功能和/或操作而言,本领域技术人员将理解,这些示意图或实施例中的每一个功能和/或操作都可由各种各样的硬件、软件、固件、或实际上其任意组合来单独地和/或共同地实现。
应该理解,本文描述的方法可以结合硬件或软件,或在适当时结合两者的组合来实现。因此,本发明的方法,可以采用包含在诸如软盘、CD-ROM、硬盘驱动器或任何其他机器可读存储介质等有形介质中的程序代码(即,指令)的形式,其中,当程序代码在可编程计算机上执行的情况下,计算设备通常包括处理器、该处理器可读的存储介质(包括易失性存储器和/或存储元件)、至少一个输入设备、以及至少一个输出设备。一个或多个程序可以例如,通过使用API,可重用控件等来实现或利用结合本发明描述的过程。这样的程序优选地用高级过程语言或面向对象编程语言来实现,以与计算机系统通信。然而,如果需要,该程序可以用汇编语言或机器语言来实现。在任何情形中,语言可以是编译语言或解释语言,且与硬件实现相结合。尽管具体地参考其优选实施例来示出并描述了本发明,但本领域的技术人员可以理解,可以做出形式和细节上的各种改变而不脱离所附权利要求书中所述的本发明的范围。以上结合本发明的具体实施例做了详细描述,但并非是对本发明的限制。凡是依据本发明的技术实质对 以上实施例所做的任何简单修改,均仍属于本发明技术方案的范围。
权利要求
1.一种P2P缓存数据淘汰方法,其特征在于,包括 客户端在确定数据淘汰需求后,根据各点对点网络传输P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据,所述P2P数据为在本地内存缓存的数据;并淘汰确定出的数据。
2.如权利要求1所述的方法,其特征在于,所述各P2P数据对应的被访问信息,包括所述各P2P数据的被访问时间。
3.如权利要求2所述的方法,其特征在于,在根据各P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据之前,包括 根据各P2P数据对应的被访问时间与当前时间的差值的大小,对所述各P2P数据进行排序; 根据各P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据,包括 根据各P2P数据对应的被访问时间与当前时间的差值,确定所述差值中最大差值对应的存储位置上的数据。
4.如权利要求1所述的方法,其特征在于,所述各P2P数据对应的被访问信息,包括所述各P2P数据的被访问次数。
5.如权利要求4所述的方法,其特征在于,在根据各P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据之前,包括 根据各P2P数据对应的被访问次数,对所述各P2P数据进行排序; 根据各P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据,包括 根据各P2P数据分别对应的被访问次数,确定数值最小的次数对应的存储位置上的数据。
6.如权利要求3或5所述的方法,其特征在于,淘汰确定出的数据后,还包括 将正在下载的P2P数据,存储在P2P数据队列的第一个数据对应的存储位置的前一存储位置上。
7.如权利要求1所述的方法,其特征在于,所述确定出的数据,包括 一个视频文件,或构成一个视频文件的多个数据单元中的一个数据单元。
8.根据权利要求1所述的方法,其特征在于,在客户端在确定数据淘汰需求前,还包括 将P2P数据缓存在内存的指定存储空间,所述指定存储空间提供的存储空间小于设定阈值。
9.如权利要求8所述的方法,其特征在于,客户端确定数据淘汰需求,包括 客户端确定所述设定阈值与所述P2P数据占用的存储空间的数值的差值,小于或等于将要存储的P2P数据需要的存储空间的数值。
全文摘要
本发明提供了一种P2P缓存数据淘汰方法,包括客户端在确定数据淘汰需求后,根据各点对点网络传输P2P数据对应的被访问信息,确定符合设定条件的被访问信息对应的数据,所述P2P数据为在本地内存缓存的数据,并淘汰确定出的数据。本技术方案与现有技术相比较,能够避免淘汰客户端可能要访问的P2P数据,从而能够提高客户端访问P2P数据的效率。
文档编号H04N21/61GK103051975SQ20121058816
公开日2013年4月17日 申请日期2012年12月31日 优先权日2012年12月31日
发明者邵长松, 李茗, 赵瑞前, 张海, 马宙, 李卓, 王世有 申请人:乐视网信息技术(北京)股份有限公司