CN106657182B - 云端文件处理方法和装置 - Google Patents

云端文件处理方法和装置 Download PDF

Info

Publication number
CN106657182B
CN106657182B CN201510728030.9A CN201510728030A CN106657182B CN 106657182 B CN106657182 B CN 106657182B CN 201510728030 A CN201510728030 A CN 201510728030A CN 106657182 B CN106657182 B CN 106657182B
Authority
CN
China
Prior art keywords
target file
read
data
client
state
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
Application number
CN201510728030.9A
Other languages
English (en)
Other versions
CN106657182A (zh
Inventor
杨晔辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510728030.9A priority Critical patent/CN106657182B/zh
Priority to US15/338,178 priority patent/US10382551B2/en
Priority to PCT/US2016/059561 priority patent/WO2017075520A1/en
Priority to JP2018519335A priority patent/JP6966432B2/ja
Priority to EP16860995.6A priority patent/EP3369238B1/en
Publication of CN106657182A publication Critical patent/CN106657182A/zh
Application granted granted Critical
Publication of CN106657182B publication Critical patent/CN106657182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5681Pre-fetching or pre-delivering data based on network characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例公开了一种云端文件处理方法和装置,在客户端对云端服务器内目标文件的读取操作符合预设条件时,预先从云端服务器取得预设数量的数据包,即使客户端与云端服务器之间网络传输发生时延,客户端也可以调用预取到的数据包来展示给客户,使得客户端能够及时提供目标文件的相关数据给用户查阅。

Description

云端文件处理方法和装置
技术领域
本申请涉及数据处理技术领域,特别涉及一种云端文件处理方法和装置。
背景技术
云端存储是一种利用集群应用、网格技术或分布式文件系统等功能,将网络中大量不同类型的存储设备通过应用程序集合在一起,实现共同对外提供数据存储和业务访问功能的新兴技术,具有广泛的应用前景。
现有技术中,云端系统一般包括客户端、管理大量存储设备的云端服务器以及连接客户端和云端服务器的网络。当前,用户通过客户端从云端服务器获取所需数据,包括如下步骤:
S1、客户端通过网络读取位于云端服务器内的目标文件;
S2、客户端将从云端服务器读取到的目标文件的相关数据,实时缓存至本地,以供用户查阅。
该现有技术中,客户端缓存目标文件的相关数据来供用户查阅,而这些数据是客户端通过网络从云端服务器读取而来,若网络传输发生时延等影响传输稳定性的问题时,客户端从云端服务器读取数据的效率则会降低,导致客户端无法及时提供目标文件的相关数据供用户查阅。
发明内容
本申请实施例的目的是提供一种云端文件的处理方法和装置,使得客户端能够及时提供目标文件的相关数据给用户查阅。
为解决上述技术问题,本申请实施例提供一种云端文件的处理方法,其包括:
在客户端从云端服务器读取被划分为若干数据包的目标文件时,获取所述客户端所读取到的数据包在所述目标文件的位置以作为读取位置,获取所述目标文件中不在所述读取位置的数据包的状态以作为周边状态,所述周边状态包括已读取状态和未读取状态;
在所述读取位置和周边状态符合预设条件时,控制所述客户端发送数据预取请求至所述云端服务器,所述数据预取请求用于请求从所述云端服务器读取所述目标文件内预设数量的、周边状态为未读取状态的数据包。
为解决上述技术问题,本申请实施例提供一种云端文件的处理装置,其包括:
获取模块,用于在客户端从云端服务器读取被划分为若干数据包的目标文件时,获取所述客户端所读取到的数据包在所述目标文件的位置以作为读取位置,获取所述目标文件中不在所述读取位置的数据包的状态以作为周边状态,所述周边状态包括已读取状态和未读取状态;
发送模块,用于在所述读取位置和周边状态符合预设条件时,控制所述客户端发送数据预取请求至所述云端服务器,所述数据预取请求用于请求从所述云端服务器读取所述目标文件内预设数量的、周边状态为未读取状态的数据包。
由以上本申请实施例提供的技术方案可见,本申请实施例所提供的云端文件处理方法和装置,在客户端对云端服务器内目标文件的读取操作符合预设条件时,预先从云端服务器取得预设数量的数据包,即使客户端与云端服务器之间网络传输发生时延,客户端也可以调用预取到的数据包来展示给客户,使得客户端能够及时提供目标文件的相关数据给用户查阅。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中云端系统的架构示意图。
图2为本申请实施例中云端文件处理方法的流程图。
图3为本申请另一实施例中云端文件处理方法的流程图。
图4为本申请另一实施例中云端文件处理方法的流程图。
图5为本申请实施例中云端文件处理装置的模块图。
具体实施方式
现有技术中的云端文件处理方法和装置,可能存在因网络时延等原因导致的客户端无法及时提供相关数据给用户查阅的问题。本申请实施例提供一种云端文件处理方法和装置,以解决前述问题。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1示出了本文中可以适用的示例性的云端系统的架构示意图。
如图1所示,该系统包括一个或多个云端服务器12、一个或多个客户端13,及用以连接上述云端服务器12和上述客户端13的网络11。上述云端服务器12可以是单个服务器或多个服务器组成的服务器集群。上述客户端13可以是个人计算机、笔记本电脑、无线电话、个人数字助理(PDA)、智能手表、或其他计算机装置和通信装置。
这些服务器和客户端在架构上都包含一些基本组件,如总线、处理装置、存储装置、一个或多个输入/输出装置、和通信接口等。总线可以包括一个或多个导线,用来实现服务器和客户端各组件之间的通信。处理装置可以包括各类型的用来执行指令、处理进程或线程的处理器或微处理器。存储装置可以包括用以存储动态信息的动态存储器,如随机访问存储器(RAM),或用以存储静态信息的静态存储器,如只读存储器(ROM),以及包括磁或光学记录介质与相应驱动的大容量存储器。输入装置可以是键盘、鼠标、手写笔、触摸屏、声音识别装置、或生物测定装置等。输出装置可以是用以输出信息的显示器、打印机、或扬声器等。通信接口用来使服务器或客户端与其他系统或装置进行通信。通信接口之间可通过有线连接方式、无线连接方式、或光连接方式连接到上述网络中,以使上述客户端、服务器实现相互通信。每个网络11都可以包括局域网(LAN)、广域网(WAN)、内部网、互联网、移动电话网络、虚拟专用网(VPN)、蜂窝式或其它移动通信网络、蓝牙、NFC或其任何组合。服务器和客户端上均包含用来管理系统资源、控制其他程序运行的操作系统软件,以及用来实现特定功能的应用软件或程序指令。
图2为本申请实施例中云端文件处理方法的流程图。该云端文件处理方法的执行主体可以是云端服务器12,也可以是客户端13或者客户端13上的一个应用程序。
本申请实施例中,该云端文件处理方法包括如下步骤:
S20、在客户端从云端服务器读取被划分为若干数据包的目标文件时,获取所述客户端所读取到的数据包在所述目标文件的位置以作为读取位置,获取所述目标文件中不在所述读取位置的数据包的状态以作为周边状态,所述周边状态包括已读取状态和未读取状态。
云端服务器12内存储了大量供用户查询或使用的文件,目标文件用于特指其中被客户端读取的某个文件。例如,客户端13需要读取的是位于云端服务器12内的一个视频文件,目标文件即为该视频文件。
云端服务器12内文件均被分为若干数据包。本申请实施例中,无论云端服务器12内的文件为何种文件类型,均可以基于数据容量对其进行划分。例如,可以将文件划分为容量相同的数据包,此时所得数据包在文件中的位置也是确定的。
以目标文件是一个100MB的视频文件为例,可以将目标文件分为100个容量均为1MB的数据包。每个数据包在该视频文件中的位置也确定,比如视频文件中第一个1MB的数据包就在视频文件的首位,其他数据包的位置也依次类推。
客户端13从云端服务器12读取目标文件的过程中,会根据网络11的网络带宽来读取该目标文件的数据包。
客户端13每次从云端服务器12读取目标文件的数量作为读取数量,例如,读取数量可以是每次两个数据包,即客户端13每次可以从云端服务器12读取两个数据包。当然,该读取数量与网络带宽等多个因素相关,其可以根据用户需求来调整。
在客户端13从云端服务器12读取数据包时,获取所读取到的数据包在目标文件中的位置,并将该位置作为读取位置。
若客户端13从云端服务器12所读取到的数据包的数量不止一个,可以将这些数据包组成一个整体,根据需要选择其中一个数据包的位置作为读取位置。
读取位置体现了客户端13对于目标文件的读取进度,例如客户端13是第一次读取该目标文件,则此时的读取位置一般位于目标文件的首位。
在确定读取位置后,获取目标文件中不在读取位置的数据包的状态,并将该状态作为周边状态。
目标文件中不在读取位置的数据包的周边状态可以是已读取状态,也可以是未读取状态。其中,已读取状态即表明客户端13已经从云端服务器12读取过该数据包,反之,未读取状态即表明客户端13还未从云端服务器12读取过该数据包。
周边状态体现了客户端13对于目标文件的读取历史,例如不在读取位置上的数据包的周边状态均未读取状态,则表明该目标文件是首次被读取。
S40、在读取位置和周边状态符合预设条件时,控制客户端13发送数据预取请求至云端服务器12,数据预取请求用于请求从云端服务器读取目标文件内预设数量的、周边状态为未读取状态的数据包。
本申请实施例中,预设条件包括:读取位置是目标文件的首位;所有数据包的周边状态是未读取状态。
在客户端13对于目标文件的读取位置和相关数据包的周边状态均符合该预设条件,表明客户端13是首次读取该目标文件,并且是从该目标文件开头读取,可以认为客户端13对于目标文件的读取为顺序读取。
数据预取请求用于请求从云端服务器12读取目标文件内预设数量的、周边状态为未读取状态的数据包,在读取位置和周边状态均符合预设条件时,客户端13发送该数据预取请求至云端服务器。
其中,预设数量可以是一个确定的静态值,也可以是一个根据数据包读取状态进行调整的动态值。
本申请实施例中,在读取位置和周边状态均符合预设条件时,获取客户端13每次从云端服务器12读取数据包的读取数量,可以将该读取数量的两倍作为预设数量。
当然,预设数量还可以选择以读取数量的三倍或其他倍数,在此不做赘述。
本申请实施例中,预设条件还可以包括:所述读取位置不是所述目标文件的首位;位于所述读取位置之前所有的数据包的周边状态是已读取状态。
在客户端13对于目标文件的读取位置和相关数据包的周边状态均符合该预设条件,表明客户端13并非首次读取该目标文件。由于客户端13对于目标文件的读取是会沿数据包的顺序依次读取,且仅会读取周边状态为未读取状态的数据包,则位于读取位置之后的数据包的周边状态均是未读取状态,而位于所述读取位置之前所有的数据包的周边状态是已读取状态,表明该读取位置即是在客户端对目标文件之前一次读取操作所结束的位置。可以认为客户端13对于目标文件的读取是接续读取。
在读取位置和周边状态均符合本申请实施例中的预设条件时,客户端13发送该数据预取请求至云端服务器,该数据预取请求同样用于请求从云端服务器12读取目标文件内预设数量的、周边状态为未读取状态的数据包。
其中,可以将之前一个数据预取请求中预取数据包的数量的两倍作为预设数量。
本申请实施例中,预设条件还可以包括:读取位置不是目标文件的首位;位于读取位置之前的部分数量的数据包的周边状态是已读取状态。
本申请实施例中,目标文件是多流类型文件,例如是包含音频数据流和视频数据流的电影文件。该类型目标文件的划分一般是将音频数据流分为若干音频数据包,视频数据流分为若干视频数据包,将一种数据包直接置于另一种数据包之后即可。而读取该类型文件的过程中,一般是先读取若干音频数据包,再读取若干视频数据包,然后,再返回读取若干音频数据包。如此交错读取,使得客户端内可以同时提供音频数据包和视频数据包给用户查阅。
在读取位置和周边状态符合该预设条件时,则表明客户端13在读取多流类型文件,且是已读取一种类型数据包后,首次读取另一种类型的数据包。可以认为客户端13对于目标文件的读取是多流顺序读取。
其中,可以将位于读取位置之前的周边状态是已读取状态的数据包的数量作为预设数量。
本申请实施例所提供的云端文件处理方法和装置,通过定义不同的预设条件,从而界定出客户端13对于目标文件的三种读取方式:顺序读取、接续读取以及多流顺序读取。在这些读取模式下,预先从云端服务器取得预设数量的数据包,即使客户端与云端服务器之间网络传输发生时延,客户端也可以调用预取到的数据包来展示给客户,使得客户端能够及时提供目标文件的相关数据给用户查阅。而除了上述三种读取模式下,并不对云端服务器发送数据预取请求,降低资源浪费。
由于前述三种读取模式下,用户对于目标文件的读取意愿强烈,此时向云端服务器10预取部分数据包,在客户端后续真正发起数据读取请求时,只需将预取的数据包提供给用户查阅即可。并且,根据不同的读取模式,设定了不同的预设数量,实现根据用户对于目标文件的读取意愿强烈程度来调整预取数据包的数量,提高了用户体验。
结合图3所示,本申请的其他实施例所提供的云端文件处理方法,与前述实施例相比,区别在于:该方法还包括位于步骤S20之前的如下步骤:
S10、建立数据包信息库,数据包信息库包括目标文件内数据包的状态信息以及所述数据包被以预设顺序排序后的位置信息。
云端服务器12内的文件被划分为若干数据包后,每个数据包的状态信息和位置信息均与该目标文件关联起来,共同存至数据包信息库内。
后续执行步骤S20的过程中,可以通过查询该目标文件的数据包信息库快速获得所需数据包的位置和状态。
本申请实施例中,每个目标文件可以设置一个单独的数据包信息库。优选的,数据包信息库可以通过基数树的方式来实现,将数据包置于基数树的树杈之上,实现较快的获得所需查询的数据包的位置和状态。
并且,数据包信息库监控这些数据包的状态信息,随着云端文件处理方法的进程,对于状态有改变的数据包,数据包信息库则将其状态信息也作调整。例如一个数据包被读取后,则将其状态信息由为读取状态调整为已读取状态。
结合图4所示,本申请的其他实施例所提供的云端文件处理方法,与前述实施例相比,区别在于:该方法还包括位于步骤S40之后的如下步骤:
S50、控制客户端13从云端服务器12读取所预取到的数据包并将预取到的数据包缓存在本地。
本申请实施例中,客户端13从云端服务器12读取数据包和预取数据包分别位于不同的下载进程,二者并不干涉。
优选的,客户端13将预取到的数据包按照被访问时刻进行排序。例如,可以将本地的数据包形成一个数据包队列,将被访问时刻较早的数据包放置于数据包队列的末端,将被访问时刻较近的数据包放置于数据包队列的前端。
当然,还可以在数据包被访问时刻早于预设时刻时,将该数据包从本地清除,以节约本地存储空间。
图5为本申请实施例中云端文件处理装置的模块图。由于该装置是基于以上处理方法,故该装置的具体细节可参照以上建立方法,本文不再予以赘述。
本申请实施例中,云端文件处理装置包括:
获取模块20,用于在客户端从云端服务器读取被划分为若干数据包的目标文件时,获取所述客户端所读取到的数据包在所述目标文件的位置以作为读取位置,获取所述目标文件中不在所述读取位置的数据包的状态以作为周边状态,所述周边状态包括已读取状态和未读取状态;
发送模块40,用于在所述读取位置和周边状态符合预设条件时,控制所述客户端发送数据预取请求至所述云端服务器,所述数据预取请求用于请求从所述云端服务器读取所述目标文件内预设数量的、周边状态为未读取状态的数据包。
本申请实施例中,所述目标文件分为容量相同的若干数据包。
本申请实施例中,所述装置还包括建库模块,具体用于:
建立数据包信息库,数据包信息库包括所述目标文件内数据包的状态信息以及所述数据包被以预设顺序排序后的位置信息;
所述获取模块20,具体用于:
根据所述数据包信息库中位置信息得到所述客户端所读取到的数据包在所述目标文件的位置;
根据所述数据包信息库中状态信息得到所述目标文件中不在所述读取位置的数据包的状态。
本申请实施例中,所述预设条件包括:
所述读取位置是所述目标文件的首位;
所有数据包的周边状态是未读取状态。
本申请实施例中,获取客户端每次从所述云端服务器读取所述目标文件内数据包的数量以作为读取数量,将所述读取数量的两倍作为所述预设数量。
本申请实施例中,所述预设条件包括:
所述读取位置不是所述目标文件的首位;
位于所述读取位置之前所有的数据包的周边状态是已读取状态。
本申请实施例中,将之前一个数据预取请求中预取数据包的数量的两倍作为预设数量。
本申请实施例中,所述预设条件包括:
所述读取位置不是所述目标文件的首位;
位于所述读取位置之前的部分数量的数据包的周边状态是已读取状态。
本申请实施例中,将位于读取位置之前的周边状态是已读取状态的数据包的数量作为预设数量。
本申请实施例中,所述方法还包括数据缓存模块,用于:
控制客户端从云端服务器读取所述预取到的数据包;
将所述预取到的数据包缓存在本地。
本申请实施例中,所述数据缓存模块,具体用于:
将所述预取到的数据包按照被访问时刻进行排序
本申请实施例所提供的云端文件处理装置,通过在客户端对云端服务器内目标文件的读取操作符合预设条件时,预先从云端服务器取得预设数量的数据包,即使客户端与云端服务器之间网络传输发生时延,客户端也可以调用预取到的数据包来展示给客户,使得客户端能够及时提供目标文件的相关数据给用户查阅。
本发明是参照根据本发明实施例的方法和设备(系统)来描述的。应理解可由计算机程序指令结合信息感应设备实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令配合信息感应设备产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (20)

1.一种云端文件处理方法,其特征在于,包括:
在客户端从云端服务器读取被划分为若干数据包的目标文件时,获取所述客户端所读取到的数据包在所述目标文件的位置以作为读取位置,获取所述目标文件中不在所述读取位置的数据包的状态以作为周边状态,所述周边状态包括已读取状态和未读取状态;
在所述读取位置和周边状态符合预设条件时,控制所述客户端发送数据预取请求至所述云端服务器,所述数据预取请求用于请求从所述云端服务器读取所述目标文件内预设数量的、周边状态为未读取状态的数据包;
其中,若所述读取位置不是所述目标文件的首位,且位于所述读取位置之前的部分数量的数据包的周边状态是已读取状态,则所述预设数量是基于位于读取位置之前的周边状态是已读取状态的数据包的数量所确定得到的。
2.如权利要求1所述的方法,其特征在于,所述目标文件分为容量相同的若干数据包。
3.如权利要求2所述的方法,其特征在于,客户端从云端服务器读取被划分为若干数据包的目标文件之前,所述方法还包括:
建立数据包信息库,数据包信息库包括所述目标文件内数据包的状态信息以及所述数据包被以预设顺序排序后的位置信息;
获取所述客户端所读取到的数据包在所述目标文件的位置,具体包括:
根据所述数据包信息库中位置信息得到所述客户端所读取到的数据包在所述目标文件的位置;
获取所述目标文件中不在所述读取位置的数据包的状态,具体包括:
根据所述数据包信息库中状态信息得到所述目标文件中不在所述读取位置的数据包的状态。
4.如权利要求1所述的方法,其特征在于,所述预设条件包括:
所述读取位置是所述目标文件的首位;
所有数据包的周边状态是未读取状态。
5.如权利要求4所述的方法,其特征在于,获取客户端每次从所述云端服务器读取所述目标文件内数据包的数量以作为读取数量,以所述读取数量的两倍作为所述预设数量。
6.如权利要求1所述的方法,其特征在于,所述预设条件包括:
所述读取位置不是所述目标文件的首位;
位于所述读取位置之前所有的数据包的周边状态是已读取状态。
7.如权利要求6所述的方法,其特征在于,以之前一个数据预取请求中预取数据包的数量的两倍作为预设数量。
8.如权利要求1所述的方法,其特征在于,以位于读取位置之前的周边状态是已读取状态的数据包的数量作为预设数量。
9.如权利要求1所述的方法,其特征在于,控制所述客户端发送数据预取请求至所述云端服务器之后,所述方法还包括:
控制客户端从云端服务器读取所述预取到的数据包并将所述预取到的数据包缓存在本地。
10.如权利要求9所述的方法,其特征在于,将所述预取到的数据包缓存在本地,具体包括:
将所述预取到的数据包按照被访问时刻进行排序。
11.一种云端文件处理装置,其特征在于,包括:
获取模块,用于在客户端从云端服务器读取被划分为若干数据包的目标文件时,获取所述客户端所读取到的数据包在所述目标文件的位置以作为读取位置,获取所述目标文件中不在所述读取位置的数据包的状态以作为周边状态,所述周边状态包括已读取状态和未读取状态;
发送模块,用于在所述读取位置和周边状态符合预设条件时,控制所述客户端发送数据预取请求至所述云端服务器,所述数据预取请求用于请求从所述云端服务器读取所述目标文件内预设数量的、周边状态为未读取状态的数据包,其中,若所述读取位置不是所述目标文件的首位,且位于所述读取位置之前的部分数量的数据包的周边状态是已读取状态,则所述预设数量是基于位于读取位置之前的周边状态是已读取状态的数据包的数量所确定得到的。
12.如权利要求11所述的装置,其特征在于,所述目标文件分为容量相同的若干数据包。
13.如权利要求11所述的装置,其特征在于,所述装置还包括建库模块,具体用于:
建立数据包信息库,数据包信息库包括所述目标文件内数据包的状态信息以及所述数据包被以预设顺序排序后的位置信息;
所述获取模块,具体用于:
根据所述数据包信息库中位置信息得到所述客户端所读取到的数据包在所述目标文件的位置;
根据所述数据包信息库中状态信息得到所述目标文件中不在所述读取位置的数据包的状态。
14.如权利要求11所述的装置,其特征在于,所述预设条件包括:
所述读取位置是所述目标文件的首位;
所有数据包的周边状态是未读取状态。
15.如权利要求14所述的装置,其特征在于,获取客户端每次从所述云端服务器读取所述目标文件内数据包的数量以作为读取数量,以所述读取数量的两倍作为所述预设数量。
16.如权利要求11所述的装置,其特征在于,所述预设条件包括:
所述读取位置不是所述目标文件的首位;
位于所述读取位置之前所有的数据包的周边状态是已读取状态。
17.如权利要求16所述的装置,其特征在于,以之前一个数据预取请求中预取数据包的数量的两倍作为预设数量。
18.如权利要求11所述的装置,其特征在于,以位于读取位置之前的周边状态是已读取状态的数据包的数量作为预设数量。
19.如权利要求11所述的装置,其特征在于,还包括数据缓存模块,用于:
控制客户端从云端服务器读取所述预取到的数据包并将所述预取到的数据包缓存在本地。
20.如权利要求19所述的装置,其特征在于,所述数据缓存模块,具体用于:
将所述预取到的数据包按照被访问时刻进行排序。
CN201510728030.9A 2015-10-30 2015-10-30 云端文件处理方法和装置 Active CN106657182B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201510728030.9A CN106657182B (zh) 2015-10-30 2015-10-30 云端文件处理方法和装置
US15/338,178 US10382551B2 (en) 2015-10-30 2016-10-28 Cloud file processing method and apparatus
PCT/US2016/059561 WO2017075520A1 (en) 2015-10-30 2016-10-28 Cloud file processing method and apparatus
JP2018519335A JP6966432B2 (ja) 2015-10-30 2016-10-28 クラウドファイル処理方法および装置
EP16860995.6A EP3369238B1 (en) 2015-10-30 2016-10-28 Method, apparatus, computer-readable medium and computer program product for cloud file processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510728030.9A CN106657182B (zh) 2015-10-30 2015-10-30 云端文件处理方法和装置

Publications (2)

Publication Number Publication Date
CN106657182A CN106657182A (zh) 2017-05-10
CN106657182B true CN106657182B (zh) 2020-10-27

Family

ID=58630878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510728030.9A Active CN106657182B (zh) 2015-10-30 2015-10-30 云端文件处理方法和装置

Country Status (5)

Country Link
US (1) US10382551B2 (zh)
EP (1) EP3369238B1 (zh)
JP (1) JP6966432B2 (zh)
CN (1) CN106657182B (zh)
WO (1) WO2017075520A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10419401B2 (en) * 2016-01-08 2019-09-17 Capital One Services, Llc Methods and systems for securing data in the public cloud
CN111324677A (zh) * 2018-12-13 2020-06-23 中国移动通信集团山西有限公司 用户位置数据的获取方法、装置、设备及介质
CN112395337B (zh) * 2019-08-12 2023-09-26 北京京东振世信息技术有限公司 一种数据导出方法和装置
CN112383632A (zh) * 2020-11-17 2021-02-19 珠海大横琴科技发展有限公司 一种负载均衡的方法和装置
CN112559574B (zh) * 2020-12-25 2023-10-13 北京百度网讯科技有限公司 数据处理方法、装置、电子设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102223416A (zh) * 2011-06-24 2011-10-19 Tcl集团股份有限公司 一种媒体文件的传输方法及系统
CN101772938B (zh) * 2007-08-21 2013-03-20 株式会社Ntt都科摩 带有在线缓存和对等转发的媒体流式传输
CN103139241A (zh) * 2011-11-24 2013-06-05 腾讯科技(深圳)有限公司 网络资源文件的离线下载系统和方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001057571A (ja) * 1998-09-14 2001-02-27 Matsushita Electric Ind Co Ltd ファイルシステム
US6842770B1 (en) 2000-08-18 2005-01-11 Apple Computer, Inc. Method and system for seamlessly accessing remotely stored files
US7062567B2 (en) 2000-11-06 2006-06-13 Endeavors Technology, Inc. Intelligent network streaming and execution system for conventionally coded applications
US6959320B2 (en) 2000-11-06 2005-10-25 Endeavors Technology, Inc. Client-side performance optimization system for streamed applications
US7043524B2 (en) 2000-11-06 2006-05-09 Omnishift Technologies, Inc. Network caching system for streamed applications
US6918113B2 (en) 2000-11-06 2005-07-12 Endeavors Technology, Inc. Client installation and execution system for streamed applications
MXPA03011150A (es) 2001-06-04 2004-10-28 Nct Group Inc Sistema y metodo para incrementar el ancho de banda efectivo de una red de comunicaciones.
US20040210949A1 (en) * 2003-04-21 2004-10-21 Matsushita Electric Industrial Co., Ltd. Data reception and playback apparatus, data reception and playback method, and data reception and playback processing program
US8966000B2 (en) * 2007-06-22 2015-02-24 Microsoft Corporation Aggregation and re-ordering of input/output requests for better performance in remote file systems
TWI383640B (zh) * 2009-10-22 2013-01-21 Wistron Corp 利用網路傳輸檔案之方法與檔案傳輸系統
US8977661B2 (en) 2010-02-22 2015-03-10 Sookasa Inc. System, method and computer readable medium for file management
US8527549B2 (en) 2010-02-22 2013-09-03 Sookasa Inc. Cloud based operating and virtual file system
GB201004449D0 (en) 2010-02-22 2010-05-05 Corbett Sean Data accelerator
US9021229B2 (en) 2010-04-14 2015-04-28 International Business Machines Corporation Optimizing a file system for different types of applications in a compute cluster using dynamic block size granularity
US8799413B2 (en) 2010-05-03 2014-08-05 Panzura, Inc. Distributing data for a distributed filesystem across multiple cloud storage systems
US8788628B1 (en) 2011-11-14 2014-07-22 Panzura, Inc. Pre-fetching data for a distributed filesystem
US9811532B2 (en) * 2010-05-03 2017-11-07 Panzura, Inc. Executing a cloud command for a distributed filesystem
US8805968B2 (en) 2010-05-03 2014-08-12 Panzura, Inc. Accessing cached data from a peer cloud controller in a distributed filesystem
US8805951B1 (en) 2011-02-08 2014-08-12 Emc Corporation Virtual machines and cloud storage caching for cloud computing applications
CN102833294B (zh) * 2011-06-17 2015-05-20 阿里巴巴集团控股有限公司 基于云存储的文件处理方法、系统及服务器集群系统
US8683008B1 (en) 2011-08-04 2014-03-25 Google Inc. Management of pre-fetched mapping data incorporating user-specified locations
US8204966B1 (en) 2011-09-26 2012-06-19 Google Inc. Map tile data pre-fetching based on user activity analysis
CN111614980B (zh) 2012-08-14 2022-04-12 俄亥俄州立创新基金会 用于通过移动设备来优化网络带宽的使用的系统和方法
US20140223099A1 (en) 2013-02-06 2014-08-07 Adam Kidron Content management platform apparatus, methods, and systems
US9614925B2 (en) * 2014-03-31 2017-04-04 Futurewei Technologies, Inc. Intelligent file pre-fetch based on access patterns
CN104166567A (zh) * 2014-08-12 2014-11-26 广州金山网络科技有限公司 一种下载网络流数据的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101772938B (zh) * 2007-08-21 2013-03-20 株式会社Ntt都科摩 带有在线缓存和对等转发的媒体流式传输
CN102223416A (zh) * 2011-06-24 2011-10-19 Tcl集团股份有限公司 一种媒体文件的传输方法及系统
CN103139241A (zh) * 2011-11-24 2013-06-05 腾讯科技(深圳)有限公司 网络资源文件的离线下载系统和方法

Also Published As

Publication number Publication date
US10382551B2 (en) 2019-08-13
EP3369238A4 (en) 2018-09-05
EP3369238B1 (en) 2021-05-12
WO2017075520A1 (en) 2017-05-04
US20170126806A1 (en) 2017-05-04
JP2018532202A (ja) 2018-11-01
JP6966432B2 (ja) 2021-11-17
CN106657182A (zh) 2017-05-10
EP3369238A1 (en) 2018-09-05

Similar Documents

Publication Publication Date Title
CN106657182B (zh) 云端文件处理方法和装置
US20180027061A1 (en) Method and apparatus for elastically scaling virtual machine cluster
US20140095582A1 (en) Coordinated access to a file system's shared storage using dynamic creation of file access layout
US9930105B2 (en) Methods, systems, and media for stored content distribution and access
US9098379B2 (en) Computing reusable image components to minimize network bandwidth usage
CN106817388B (zh) 虚拟机、宿主机获取数据的方法、装置及访问数据的系统
US20130212340A1 (en) Partition aware quality of service feature
US11003658B2 (en) Selectively retrieving data from remote share nothing computer clusters
CN102857578A (zh) 一种网络硬盘的文件上传方法、系统及网盘客户端
CN106533713A (zh) 一种应用部署方法及设备
CN113411404A (zh) 一种文件下载方法、装置、服务器及存储介质
US20160173620A1 (en) Time-based data placement in a distributed storage system
US9716666B2 (en) Process cage providing attraction to distributed storage
US10417192B2 (en) File classification in a distributed file system
US11327811B2 (en) Distributed computing mesh
RU2435236C1 (ru) Система и способ записи данных в облачное хранилище
US9501485B2 (en) Methods for facilitating batch analytics on archived data and devices thereof
WO2018111696A1 (en) Partial storage of large files in distinct storage systems
CN108628551B (zh) 一种数据处理方法及装置
US9628401B2 (en) Software product instance placement
CN108228323B (zh) 基于数据本地性的Hadoop任务调度方法及装置
CN112887349B (zh) 分发文件的方法和装置
CN112688980B (zh) 资源分发方法、装置、计算机设备
CN113873052B (zh) Kubernetes集群的域名解析方法、装置及设备
CN118018612A (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
GR01 Patent grant
GR01 Patent grant