CN104412249B - File disposal in file system based on cloud - Google Patents
File disposal in file system based on cloud Download PDFInfo
- Publication number
- CN104412249B CN104412249B CN201380023770.1A CN201380023770A CN104412249B CN 104412249 B CN104412249 B CN 104412249B CN 201380023770 A CN201380023770 A CN 201380023770A CN 104412249 B CN104412249 B CN 104412249B
- Authority
- CN
- China
- Prior art keywords
- file
- cache
- computing device
- priority
- storage system
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/126—Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/46—Caching storage objects of specific type in disk cache
- G06F2212/463—File
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
In a general aspect, a kind of computer-readable storage medium can be configured to store causes the instruction of one or more processes of computing device one upon execution.The process can include at least a portion of the communication link between the storage system set up computing device and operated in cloud environment.The process can include the user interface for the listed files for representing multiple files comprising access, wherein at least Part I of the multiple file is stored in the local storage of the computing device and the Part II of the multiple file is stored in the storage system.
Description
The cross reference of related application
Present application advocates " the file disposal in the file system based on cloud entitled filed in 15 days March in 2013
(FILE HANDLING WITHIN A CLOUD-BASED FILE SYSTEM) " No. 13/841,368 U.S.'s non-provisional is special
The preferential of sharp application case is its case that continues for the time being, and the 13/841st, No. 368 U.S. Non-provisional Patent application case is advocated 2012 again
" file disposal (the FILE HANDLING WITHIN A CLOUD- in the file system based on cloud entitled filed in May 5
BASED FILE SYSTEM) " No. 61/643,279 U.S. provisional patent application cases and on December in 2012 13 filed in mark
Entitled " file disposal (the FILE HANDLING WITHIN A CLOUD-BASED FILE in the file system based on cloud
SYSTEM the priority of the 61/736th, No. 722 U.S. patent application case) ", described these are incorporated in entirety by reference
Herein.
Technical field
This description is related to the file disposal in the file system based on cloud.
Background technology
A variety of remote storage systems for storing the file that can be accessed by computing device are developed.Generally, known to these
Remote storage system store file to back up the local file being stored on computing device.Although these long-range storage systems
System reliably many in storage information etc., but these known remote storage systems can be deposited remotely via network access
Storage system lacks flexibility and integration, especially when a variety of files of not homologous generation can be used in disposal.Accordingly, it would be desirable to
To solve the deficiency of this technology and provide system, the method and apparatus of other new and character of innovation.
The content of the invention
In a general aspect, a kind of non-transitory computer-readable storage medium can be configured to store upon execution
Cause the instruction of one or more processes of computing device one.The process, which can be included, sets up computing device with being operated in cloud environment
Storage system between communication link at least a portion, and the listed files of multiple files can be represented comprising storage, wherein
At least Part I of the multiple file be stored in the local storage of the computing device and the multiple file
Two parts are stored in the storage system.The process can be included based on associated with the file from the listed files
The offline availability of file class and the specified file from the listed files.
Exemplary embodiment can include one or more of following characteristics.For example, the storage system can be as described
The main storage system of computing device and operate, and the local storage of the computing device can be used as the storage system
Cache memory and operate.
The listed files can be included:To the texts of the web in the storage system are produced and are stored in using weblication
The reference of part;To the reference of the client file produced using the local application being installed at the computing device;And/or
Reference to the long-range source file of the remote source of the next comfortable cloud environment peripheral operation.The text from the listed files
Part can be the first file from the listed files, and the file class can be web file class.The process can be further
Comprising:At least the second file from the listed files is specified in response to the first instruction received from the computing device
Offline availability, second file is without high speed buffer storage file;And specify the cache from the listed files
The offline availability of at least the 3rd file in the local storage.
The listed files can be the local storage across the computing device and the distribution of the storage system
Single listed files to a part for the computing device.
The computing device can be the first computing device for being connected remotely to the cloud environment, and the process can be further
Included in being connected remotely at the second computing device of the cloud environment access the listed files, it is that described second calculates dress
The listed files when place of putting is accessed is identical with listed files when being to access at first computing device.
It is described specify the file can be included in not from the computing device receive clearly instruction in the case of be based on institute
State file class and the offline availability of the specified file from the listed files.
The file from the listed files may be based on the file class and be designated as in offline available
The first file in state.The listed files can include the second file, and it is nearest that second file is based on second file
It is accessed at the local storage of the computing device and is designated as being in the offline upstate.The text
Part list can include be designated as being in the offline upstate in response to the instruction from the computing device the
Three files.The listed files can include the 4th file for being designated as being in online upstate.
In another general aspect, a kind of non-transitory computer-readable storage medium can be configured to store upon execution
Cause the instruction of one or more processes of computing device one.The process, which can be included, sets up computing device with being operated in cloud environment
Storage system between communication link at least a portion.The process can also be included:Receive opening and be stored in the storage
The request of the first file in system;And in response to opening the request of first file, first file is high
Speed is cached in the local storage of the computing device, and first file is with the first priority cache.It is described
Process can further include:Receiving makes the second file being stored in the storage system turn into offline available request;And
In response to making second file turn into the offline available request, second cache memory is filled in described calculate
In the local storage put, second file is with the second priority cache less than first priority
's.The process still can be included further:The 3rd cache memory that predictably will be stored in the storage system in
In the local storage of the computing device, the 3rd file be one or more attributes based on the 3rd file and
Selection, the 3rd file is with the third priority cache less than second priority.
Exemplary embodiment can include one or more of following characteristics.For example, first file, second text
Part and the 3rd file can be in the local storage based on its respective priority and based on the computing device it is available
The amount of file cache memory capacity and be cached in the local storage of the computing device.
The process can further include:Receive the request for opening the 4th file being stored in the storage system;With
And in response to receiving the request for opening the 4th file:If by the 4th cache memory in described
Cache memory threshold value will be exceeded in the local storage of computing device, then the process can be included to be calculated from described
The local storage of device drives away the 3rd file;And it is with first priority that the 4th file is slow at a high speed
It is stored in the local storage of the computing device.
First file can be with one of multiple files of first priority cache, wherein described many
Individual file may be in response to open the respective request of each of the multiple file and be cached in the computing device
In the local storage.Second file can be with one of multiple files of second priority cache,
Wherein the multiple file may be in response to make each of the multiple file to turn into offline available respective request and high speed
It is cached in the local storage of the computing device.3rd file can be with the third priority cache
One of multiple files, wherein can be included with the multiple file of third priority cache:Based on accordingly most
Afterwards modification the date and cache the first predetermined number file;Based on accordingly finally inspecting the date and cache second is predetermined
Number file;And based on the corresponding shared date predetermined number file of cache the 3rd.
It is can further include with the multiple file of third priority cache based on it in the storage system
In with one or more previously cached files relation and the predetermined number file of cache the 4th.
3rd file can be with one of multiple files of the third priority cache, wherein with described
The multiple file of third priority cache can include by based on corresponding last modification date high speed buffer storage file with
Cache predetermined number file repeatedly is carried out based on accordingly finally inspecting between date high speed buffer storage file.
The process can further include:Receive from the local storage of the computing device and open the 3rd text
The request of part;3rd file is changed into first priority from the third priority;And change the described 3rd
The last of file inspects the date.
In another general aspect, a kind of non-transitory computer-readable storage medium can be configured to store upon execution
Cause the instruction of one or more processes of computing device one.The process, which can be included, sets up computing device with being operated in cloud environment
Storage system between communication link at least a portion, the computing device is high from the storage system comprising being configured to
The local storage of fast cache file.The process can also have been met or described local more than the computing device comprising receiving
The instruction of the cache memory threshold value of memory.The process can further include to be indicated in response to described, is calculated from described
The local storage of device drives away at least a portion of one group of cached file untill meeting expeling threshold value, institute
The described at least a portion for stating the cached file of group is from lowest cache priority to highest cache priority
And corresponding timestamp based on each file in described group of cached file and drive away.
Exemplary embodiment can include one or more of following characteristics.For example, described group of cached file can
Comprising:The first file with the first cache priority, first file is in response to opening first file
Ask and cache;The second file with the second cache priority, second file is in response to making described
Two files cache as offline available request, second priority is less than first priority;With the 3rd
3rd file of cache priority, the 3rd file based on the last modification date and is finally inspected in the date at least
One and cache, the 3rd cache priority are less than second cache priority;With the 4th at a high speed
Cache priority level the 4th file, the 4th file based on share the file date and cache, the described 4th
Cache priority is less than the 3rd cache priority;And/or the 5th text with the 5th cache priority
Part, the 5th cache priority is less than the 4th cache priority, and the 5th file is based on it in institute
State in storage system with least one in first file, second file, the 3rd file and the 4th file
The relation of person and cache.
The process, which can further include, is driving away slow at a high speed with first cache priority or described second
The confirmation from user is asked before the file for depositing priority.
The process can further include:Receive the request of the file in described group of cached file of access, request
The file of access has the cache priority less than the highest cache priority;And asked in response to described
Ask, the cache priority of the file of access will be asked to change into the highest cache priority.
The details of one or more embodiments is stated in the accompanying drawings and the following description.From the description and schema and from right
Claim will become apparent from further feature.
Brief description of the drawings
Fig. 1 is to illustrate the calculating being configured to from the storage system accessing file based on cloud operated in cloud environment
The schema of device.
Fig. 2 is the schema for illustrating computing device and storage system according to an embodiment.
Fig. 3 is to illustrate the schema that can be provided by file manager to the user interface of computing device.
Fig. 4 is to illustrate wherein to implement for taking out (cache) file from the storage system based on cloud for storage
Drive away the file of the exemplary methods of (removal) file in local storage and from local storage (cache memory)
The schema of system.
Fig. 5 is the flow chart for illustrating the method related to file disposal.
Fig. 6 A to 6C are the flow charts for illustrating the method related to cache memory.
Fig. 7 is the flow chart for illustrating the method related to the expeling of cached file.
Embodiment
Fig. 1 is to illustrate the calculating being configured to from the accessing file 19 of storage system 150 of operation in cloud environment 100
The schema of device 110,120.Because storage system 150 is operated in cloud environment 100, therefore in some embodiments, storage
System 150 can be described as the storage system based on cloud.Moreover, storage system 150 can be by computing device 110,120 remote accesses
Long-range (for example, non-local) storage system.Cloud environment 100 can include multiple hardwares and/or component software, include server (example
Such as, apps server), database etc..The component of cloud environment 100, which can be integrated into, to be configured to share (for example, dynamically
Distribution) resource and/or serve in the computing infrastructure of a variety of end points comprising computing device 110,120.
Computing device 110,120 can be any class for being configured to access storage system 150 of operation in cloud environment 100
The device of type.In some embodiments, computing device 110,120 can be respectively (for example) non-wireless means and/or wireless
Device (for example, possessing the device of Wi-Fi abilities), and can be (for example) computational entity (for example, personal computing device), clothes
Be engaged in device device (for example, web server), mobile phone, touch panel device, personal digital assistant (PDA), laptop computer,
Comprising one or more processors or the TV associated with one or more processors, board device, electronic reader and/or wait
Deng.The computing device can be configured with based on can be comprising the hardware of one or more types, software, firmware, operating system, operation
When program library and/or etc. one or more platforms (for example, one or more similar or different platforms) and operate.
In some embodiments, compared with cloud environment 100, computing device 110,120 can have relatively little of calculate to provide
Source (for example, process resource, storage resource).Therefore, computing device 110,120 and cloud environment 100 can be jointly arranged such that
Computing device 110,120 can utilize the computing resource of cloud environment 100.Specifically, the storage system 150 of cloud environment 100 and meter
Calculate device 110,120 and can be configured so that storage system 150 is operated as the main storage system of computing device 110,120.
As demonstrated in Figure 1, computing device 110 and computing device 120 include local storage 112 and local storage 122 respectively.I.e.
Computing device 110,120 is set to include local storage 112,122, local storage 112,122 is also configured as storage system
System 150 cache memory (for example, temporary cache, temporary storage location) and operate.Therefore, locally deposit
Reservoir 112,122 can be used as the auxilary unit of the primary storage of storage system 150.In certain embodiments, illustrate
For, one that is assigned to computing device 110 (for example, being designated to use for it) of the memory capacity of storage system 150
Divide 10 times big (for example, 100 times big, 1000 times big) of the memory capacity for the local storage 112 that can be computing device 110.
Even if the speed buffering that the local storage 112,122 of corresponding computing device 110,120 is used as storage system 150 is deposited
Reservoir (or auxilary unit), is stored in the text in local storage 112, one or more of 122 and in storage system 150
Part can also be disposed as single or single file set.In other words, local storage 112, one or more of 122 and deposit
Storage system 150 can be used as single storage system (for example, single virtual storage system, single virtual hard drives).For example,
Being stored in that the file in local storage 112, one or more of 122 and being stored in storage system 150 can cause can not
The mode for easily distinguishing storage location is presented to the user's (for example, being presented to user via user interface) for accessing the file.
Therefore, no matter user is via computing device 110 or the accessing file of computing device 120, be stored in local storage 112,
One or more of 122 and storage system 150 in the associated listed files of file will be identical (or substantially the same).
The more details related to file disposal are described below.
As demonstrated in Figure 1, storage system 150 be configured to storage may specify comprising through trust instrument, client text
File 19 in one or more classifications of part, long-range source file etc..In this embodiment, the major part in file 19 is base
Indicated in each of file 19 classification associated therewith.Therefore, file 19 (is alternatively referred to as passed through comprising web files 10
Trust instrument), client file 11 and long-range source file 12.Web files 10 may be included in web file class, client text
Part 11 may be included in client file classification, and long-range source file 12 may be included in remote source file class.In some realities
Apply in scheme, each of file 19 can be various types of files, for example, text based file is (for example, document is literary
Part), electronic form file, image file (for example, joint photo expert group (JPEG) file), video file is (for example, mobile figure
Piece expert group (MPEG) file), music file (for example, mpeg audio layer III (MP3) file) etc..
Web files 10 can be the text created using weblication 140 (such as weblication demonstrated in Figure 1)
Part.Weblication 140 can for can (for example) in cloud environment 100 trustship any kind of application program.At some
In embodiment, weblication 140 can be through managed application.In some embodiments, weblication 140 can
When it is in operation in cloud environment 100 by computing device 110, one or more of 120 remote controls.It is embodied herein later
The more details related to weblication and managed application described in mode.
Client file 11 can be being stored in storage system 150 from computing device 110, one or more of 120
File.For example, client file 11 can be for the storage that is stored in from computing device 110, one or more of 120
File in system 150.For example, client file 11 can be to be produced using the application program 126 operated at computing device 120
Raw file.Application program 126 can be to be installed on the local application operated at computing device 120 and at which.At some
In embodiment, application program 126 can not be operated in cloud environment.
Long-range source file 12 can be the file being stored in storage system 150 from remote source 160.In some embodiment party
In case, remote source 160 can be outside cloud environment 100 (for example, independently of cloud environment 100 and independently of computing device 110,
120) source of operation.In some embodiments, remote source 160 can be to be separated (or independently of it) with computing device 110,120
Computing device.In some embodiments, remote source 160 can be the third party source operated independently of cloud environment 100.At some
In embodiment, remote source 160 may be in response to by computing device 110, one or more of 120 trigger one or more instruction and
It is moved in storage system 150.
As demonstrated in Figure 1, at least a portion of file 19 at least interim storage (for example, cache) can be filled in calculating
Put in 120 local storage 122.Specifically, the file 18 included in file 19 is stored in the local of computing device 120
In memory 122.File 18 can be the shadow copy of any one of the file that is stored in storage system 150, mirror image copies
Or synchronized copy.For example, file 18 can be the shadow copy or mirror for the web files 10 being stored in storage system 150
As copy.In some embodiments, file 18 can be to be stored in local storage 122 and non-mirror is in storage system 150
The file at place.For example, file 18 can be created and is stored in be separated with client file 11, at local storage 122
Another client file in local storage 122.In some embodiments, file 18 can be storage (for example, deposit temporarily
Storage) file in local storage 122 so that (for example, manipulation) file 18 can be easily accessed at computing device 120.
Although not shown in Fig. 1, at least a portion of file 19 can at least be temporarily stored in the local storage of computing device 110
In 112.
Storage system 150 includes file manager 155.In some embodiments, file manager 155 can be used as web
Application program.File manager 155 is configured to provide user interface, and computing device 110,120 can pass through the user interface
It is stored in storage system 150 and/or computing device 110, the file 19 at one or more of 120 places.In some implementations
In scheme, the user interface provided by file manager 155 can include file system user interface.In some embodiments,
The user interface provided by file manager 155 can represent the list of file 19 (for example, level, file system folder, enumerating, remembering
Record, stock) and/or on file 19 other metadata (for example, owner, date created, file name, file availability/
State).The list of file 19 can include the reference (for example, pointer, instruction) to one or more of file 19.Accessing file 19
Can comprising inspect, delete, editing, downloading, uploading and/or etc..
For example, it may be in response to the input from computing device 120 and use weblication 140 to produce web files
10 and it is stored in storage system 150.Can later by file manager 155 computing device 110 display 114
Web files 10 (or its identifier) are provided in the user interface of offer.Computing device 110 can be used via weblication 140
To select and edit web files 10.It can be illustrated by the example of the user interface of one or more of its accessing file 19
Discussed in more detail in Fig. 3 and with reference to Fig. 3.
File 19 can be associated with user account so that is provided by file manager 155 in user interface to calculating dress
The list for putting the file 19 of 110 or computing device 120 will be identical, regardless of whether user is logged on computing device 110 still
In computing device 120.In other words, the list of file 19 can be synchronized, but regardless of the list by its accessing file 19
Computing device how.Even if the file of plurality of classes can be included in file 19, for example, it is categorized as the text of weblication file
Part, the client file or the file associated with remote source provided from computing device, by file manager 155 in user interface
The list of the file 19 of interior offer is alternatively identical (for example, synchronized, through dynamically synchronous).Even if file 19 can be distributed in
Between storage system 150 and/or computing device 110,120, the file 19 provided by file manager 155 in user interface
List is alternatively identical.In some embodiments, the list of file 19 can be enumerating comprising which file in file 19.
For example, in some embodiments, user can be signed in in computing device 110, and can be accessed and/or be manipulated
One or more of file 19.When user publishes from computing device 110, user can sign in later in computing device 120 with
Access and manipulate one or more files 19., can will be via computing device 120 when User logs in is into computing device 120
The list of file 19 after once logging in and (using computing device 110) is presented to user.Therefore, file 19 can seamlessly be maintained
List (or making its synchronization), but regardless of user by the computing device of its accessing file 19 how.Therefore, file manager
155 can be configured to provide identical (or synchronized) list of file 19, regardless of whether user is logged on computing device 110 still
In computing device 120.In some embodiments, even if the list of file 19 can be maintained between computing device 110,120, but
In some embodiments, the state of one or more of file 19 can change.In certain embodiments, the state can be with text
Offline (for example, the non-network) of part or online availability are related.Discuss related to the state of file more thin with reference to Fig. 3
Section.
In some embodiments, file 18 can be to download to (for example, through take out for) computing device 120 by terms of
Calculate the file of (if can not yet be used in the local storage 122 of computing device 120) for users to use at device 120.One
In a little embodiments, the current version (for example, file 18) of file may be in the local storage 122 of computing device 120
It can use and will not be downloaded from storage system 150.In some embodiments, before file is downloaded from storage system 150, it can examine
Core local storage 122 is to determine whether the file has been cached in local storage 122.
In some embodiments, can be by the demand of the user of computing device 120 (for example, in response to being triggered by user
Instruction) and by the locally downloading memory 122 of file 18.In some embodiments, it is stored in local storage 122
File 18 can be used for accessing offline at computing device 120.Computing device 120 possibly can not access any network or wherein can be
The network of storage system 150 is accessed when offline.For example, the user of computing device 120 can be asked to being stored in storage system
The access of long-range source file 12 in 150.In response to the request, the copy of long-range storage file 12 can be downloaded to calculating dress
120 local storage 122 is put to be used as file 18.Can by user computing device 120 use (for example, editor, manipulate,
Access) file 18.In some embodiments, to any change of file 18 can mirror in being stored in storage system 150
In long-range source file 12 (for example, synchronous in long-range source file 12).
In some embodiments, can not by the case of user's clear request of computing device 120 take out (for example,
Prefetch) file 18 and download it to computing device 120 to use.In other words, can be automatically high by one or more files
Speed is cached in computing device 120 and sentenced for users to use.For example, can be automatic when User logs in is into computing device 120
Ground downloads to file 18 local storage 122 of computing device 120.In some embodiments, can be accurate based on one or more
Then and automatically download file.The criterion can with file 18 whether can by computing device 120 user access prediction
It is related.In some embodiments, the criterion can include with the nearest access to file 18, file with it is other nearest accessed
The relation of file 18, the file class generally accessed by user and/or file type and/or etc. related criterion.For under
Carry (taking-up) file and from the perspective of for being stored in local storage the exemplary methods of (for example, from storage system based on cloud) and illustrating
It is bright to be been described by below with respect to Fig. 4 in Fig. 4 and in further detail.
In some embodiments, it can be removed from the local storage 122 of computing device 120 (for example, delete, move temporarily
Remove, clean) file 18.In some embodiments, (date of file 18 can for example, be included based on one or more criterions
Timestamp, the size of file 18 and/or etc.) and remove file 18 from the local storage 122 of computing device 120.At some
In embodiment, the resource of the local storage 122 (or other components of computing device 120) of computing device 120 may be in response to
Through redistributing other operations for computing device 120 file is removed from the local storage 122 of computing device 120
18.In some embodiments, can be together with the other files that can be stored in local storage 122 from computing device 120
Local storage 122 remove file 18.For driving away (removal) from local storage (for example, from the storage system based on cloud)
The exemplary methods of file are also illustrated in Fig. 4 and are been described by further detail below with respect to Fig. 4.
Although not shown in Fig. 1, in some embodiments, one or more of file 19 can by computing device 110,
The directly processing of one or more of 120 application program is without being cached at computing device 110,120.In other words,
When performing processing using computing device 110, one or more of 120, the high speed to one or more of file 19 can bypass
Caching.For example, can be by the weblication 140 of operation in cloud environment 100 and/or answering using computing device 120
Disposed with program 126 to web files 10 and/or part thereof of processing.In such embodiment, it can bypass in computing device
To the clear and definite cache of web files 10 in 120 local storage 122.In some embodiments, web files 10 are only
A part can be stored in the temporary memory location separated in computing device 120 with local storage 122.
In some embodiments, local storage 112,122 can be any kind of memory, and such as arbitrary access is deposited
Reservoir, disk drive memory (for example, solid-state drive (SSD)), flash memory and/or etc..In some embodiments
In, compared with other memories included in computing device 110,120, local storage 112,122 can be deposited to be relatively long-term
Store reservoir.In some embodiments, local storage 112,122 can be most long included in computing device 110,120
Phase memory assembly.In some embodiments, the speed buffering that local storage 112,122 can be associated with processor
Memory is separated and separated with RAM type memory.In some embodiments, local storage 112,122 can be embodied as and count
More than one memory assembly that the component of calculation device 110,120 is associated is (for example, more than one random access memory
(RAM) component or disk drive memory).
In some embodiments, weblication 140 can be configured to be performed by web browser (not showing) or solved
Translate.This can be with that comprising machine executable code and can be configured directly to be performed by processor or via the operation of computing device
The native application that system is performed is contrasted, and in a certain embodiment, weblication 140 is without web browser
Auxiliary in the case of can not perform or show.Therefore, weblication 140 can be with the clear of private subscribers interface
Look at device built-in function (for example, out of described browser perform), and it is the commonly provided more rich than free-standing website and more interactive
Property but not as the cumbersome and huge feature of multipad and experience.Web browser can be by computing device (for example, calculating
Device 110,120) execution, can receive code (for example, HTML from remote server (for example, remote server of trustship website)
Code, Javascript), and reception code can be performed on the computing device by the user of computing device.Weblication
Example can be included in game, photo editor and the video player performed in browser.
In some embodiments, weblication 140 can be through managed application or encapsulated application program.Through
Managed application can comprising itself comprising webpage website at least a portion plus can especially with weblication or web
Relevant some metadata to allow weblication to perform a certain other particular functionalities as user of the user of application program.
This metadata can include (for example) description of title, application program of application program, the version of application program and apply journey
Any URL that sequence is used, the startup page comprising application program (that is, is browsed when user clicks on the icon through managed application
The webpage that device is gone to).The metadata can be contained in the inventory being hosted on the server of the server of developer or Numerical market
In file (for example .crx files).
Encapsulated application program can be considered as that its code is bundled so that user can download the content of weblication extremely
The weblication that a few part performs for browser.Encapsulated weblication can come independent of network insertion for
Family performs its feature, but successfully can on the computing device be locally executed by browser in the case of not access network.
Encapsulated weblication has the option using extension API, so as to allow the behavior of encapsulated application program change browser
Or outward appearance mode.
Fig. 2 is the schema for illustrating computing device 210 and storage system 250 according to an embodiment.Computing device
210 are configured to set up with the communication link (for example, unidirectional communications link, bidirectional communication link) of storage system 250 at least
A part.Although not shown in Fig. 2, storage system 250 can be configured to operate in cloud environment.Storage system 250 includes text
Part 29 and file manager 255.Although being not explicitly shown in Fig. 2, in this embodiment, file 29 can include and be stored in meter
Calculate the file in the local storage 265 of device 210.Therefore, file manager 255 can be with being locally stored in computing device 210
Place or the file being remotely stored in storage system 250 are associated.The file being locally stored can with included in storage system 250
File manager 255 it is synchronous and managed by file manager 255.
As shown in FIG. 2, computing device 210 includes file manager application program 230.File manager application program
230 it can be configured and interacted with the file manager 255 with storage system 250 (for example, access, trigger its operation).In some realities
Apply in scheme, file manager application program 230 can be to be configured in browser to operate (in the operation system based on browser
System in operate) weblication.Computing device 210 includes local storage 265 and processor 267.Processor 267 can be with
Any one of component of computing device 210 is associated, and available for any one of operation for performing computing device 210.
File manager application program 230, which is included, is configured to disposal with being carried by file manager 255 from storage system 250
The user interface disposer 236 of the related processing of the user interface of confession.File manager application program 230, which is included, to be filled by calculating
Putting 210 user is used for the state for changing one or more of the file 29 associated with storage system 250 (in some embodiment party
In case, via the user interface for the operating system that may be based on browser) state supervisor 232.File manager application journey
Sequence 230 is also comprising the login mould for being configured to dispose one or more user accounts (via user interface) associated with file 29
Block 234.
Computing device 210 includes and is configured to the communication link set up between computing device 210 and storage system 250 extremely
At least part of client link block 240.In some embodiments, it is logical between computing device 210 and storage system 250
Believe link can for wireless connection, wired connection, peer to peer connection, network connection, secure connection, encrypted connection and/or etc..
Computing device 210 is also comprising can be configured with the input unit for one or more operations for triggering computing device 210
280.In some embodiments, input unit 280 can be or can include (for example) mouse apparatus, key board unit, touch
Cushion device, microphone and/or etc..Computing device 210 includes display 270, and it can be any kind of display, for example, send out
Optical diode (LED) display, electrostatic touching device, resistive touchscreen device, surface acoustic wave (SAW) device, capacitive character are touched
Touch screen device, pressure-responsive device, surface capacitance device, projecting type capacitor touch (PCT) device and/or etc..If display
Device 270 is touch sensitive device, then display 270 can be used as input unit.For example, display 270 may be configured to display
The dummy keyboard (for example, imitating keyboard) of input unit can be used as by user.
Computing device 210 and/or the component of storage system 250 (for example, module, processor) can be configured with based on can wrap
Hardware, software, firmware, operating system, run time library containing one or more types and/or etc. one or more platforms
(for example, one or more similar or different platforms) and operate.In some embodiments, computing device 210 and/or storage system
250 component can be configured to operate in device clustering (for example, server farm).In this embodiment, it can be filled calculating
The feature and processing of putting the component of 210 and/or storage system 250 are distributed to several devices of device clustering.
The component of computing device 210 and/or the component of storage system 250 can be or can be comprising being configured to processing attribute
Any kind of hardware and/or software.In some embodiments, the component of the computing device 210 in Fig. 2 and/or storage system
System 250 component one or more parts can be or can comprising hardware based module (for example, digital signal processor (DSP),
Field programmable gate array (FPGA), memory), firmware module and/or module based on software be (for example, computer code mould
Block, the computer-readable instruction collection that can be performed at computer).For example, in some embodiments, computing device 210
Component and/or storage system 250 component one or more parts can be or can comprising be configured at least one processing
The software module that device (not showing) is performed.In some embodiments, the feature of component may be included in it is demonstrated in Figure 2
In those different modules and/or different components.
In some embodiments, one or more of the component of computing device 210 and/or the component of storage system 250
Can be or can be comprising being configured to handle the instruction being stored in memory (together with the instruction shown or except being shown
Beyond instruction) processor.For example, file manager application program 230 (and/or one part) can be or can be comprising warp
Configuration is with the combination of the processor and memory that perform the instruction related to the process to implement one or more functions.
In some embodiments, storage system 250 can be remote data base, local data base, distributed data base, pass
Be database, hierarchical data base and/or etc..In some embodiments, at least some parts of storage system 250 can be stored
(do not shown) in (for example, local storage) in the memory of computing device 210.In some embodiments, storage system 250
It can be or can include by the shared memory of multiple devices (such as computing device 210).In some embodiments, storage system
250 can be associated with the server unit (not showing) in network and be configured to serve the component of computing device 210.
Although not showing, in some embodiments, the component of computing device 210 and/or the component of storage system 250
It can be configured with (for example) data center (for example, cloud computing environment), computer system, one or more server/masters
Machine device and/or etc. in operate.In some embodiments, the group of the component of computing device 210 and/or storage system 250
Part can be configured to operate in network.Therefore, the component of computing device 210 and/or the component of storage system 250 can be configured
Can worked in various types of network environments comprising one or more devices and/or one or more server units.Lift
Example for, the network can be or can comprising LAN (LAN), wide area network (WAN) and/or etc..The network can be or can
Comprising wireless network and/or use (for example) gateway apparatus, bridger, exchanger and/or etc. implement wireless network.
The network can be segmented comprising one or more and/or can have and be based on such as Internet Protocol (IP) and/or proprietary protocol respectively
Plant the part of agreement.The network can include at least a portion of internet.
Fig. 3 is to illustrate the schema that can be provided by file manager to the user interface 300 of computing device.User interface
300 can be provided by file manager 155 demonstrated in Figure 1 and/or file manager 255 demonstrated in Figure 2.User interface
300 can be by computing device 110, one or more of 120 demonstrated in Figure 1 and/or computing device 210 demonstrated in Figure 2
Receive (for example, controlling at which).
As shown in fig. 3, listed files 320 is represented in user interface 300.Listed files 320 is included by title (row
Shown in 321) files that are represented to file L of file A.Listed files 320 includes a variety of letters on each of file
Breath, can use comprising size (being shown in row 322), date (being shown in row 323), type (being shown in row 324) and offline
Property (being shown in row 325).The file represented in listed files 320 can be assigned in some classifications, for example, web files,
Client file, long-range source file and/or etc..
As shown in fig. 3, even if listed files 320 can also be used comprising the file in plurality of classes is specified single
Represent in family interface 300 and in the single window for being denoted as " driver " file.In some embodiments, can be in driving
Other types of file is listed in device window, comprising being stored on external memory (such as USB (USB) device)
File, through download file and/or etc..
In this embodiment, the number person in the file that will be represented in listed files 320 is shown as being designated as offline
It can use.In row 325 be already fully filled solid box icon (with can bifurcation switch to solid box icon opening block diagram mark
It is contrasted) displaying is appointed as offline available file.In some embodiments, one or more of file is offline available
Property can by user via computing device (for example, computing device 110 demonstrated in Figure 1) specify.In such embodiment, refer to
Having determined the file of offline availability can be stored in the local storage of computing device.In some embodiments, if calculated
The local storage of device does not have adequate space, then can not specify the offline availability of extra file.
In this embodiment, the file represented in listed files 320 can be in one of several states.One
In a little embodiments, can the classification based on file and specify one or more of described state.In some embodiments, can base
In recently, cache memory is still uncached in the local storage of computing device and specifies institute by (or current)
State one or more of state.In some embodiments, the state of file can be specified (via the calculating from user by user
The instruction of device).In some embodiments, can acquiescently specified file state (without the computing device from user
In the case of clearly instructing).In some embodiments, can based on metadata associated with the file specified file shape
State.In other words, the state of file can be specified based on classification, the instruction from user, acquiescence, recently how in local high speed
Cache file or whether be uncached file (not in local cache) and/or etc. any combinations.In some implementations
In scheme, it can be represented in listed files 320 with icon, color scheme, font and/or another specify in the user interface 300
The file being in particular state of interior expression, so that the state of file can be readily recognized by obtaining user.
For example, be designated as (for example, nail is elected as) offline availability file due to file A, thus its can be at from
In line upstate.In this embodiment, easily file A can be identified as by solid box icon can be used for offline place
Reason.As another example, because file H offline availability is not designated, therefore it can be in online upstate.Cause
This, file H can be only used for communicating with storage system (for example, storage system 150) in computing device (for example, computing device 110)
When accessed by the computing device in the storage system.In this embodiment, the text associated with opening circular icon
Part is web files.For example, file G is associated with opening circle and is web files.Even if not explicitly specified by user
Offline availability, web files can also be in online upstate.In some embodiments, the default conditions of web files can
For online upstate.In some embodiments, the extension of offline available weblication can be used to access web texts
Part.In some embodiments, also may be such that and be cached in local storage (but simultaneously non-web file or not specified offline
Availability) file turn into offline available (until it from cache memory by untill removing), such as below with respect to Fig. 4
Discuss in further detail.
In some embodiments, the file being cached in local storage can be in threshold time period internal memory
The nearest accessed file of warp taken.Therefore, at least some files for clearly following closely choosing can be for outside the threshold time period
Access and it is not cached (be currently uncached in the local storage of computing device because recent file not yet by
Access) file.When clearly nail is selected, it can will be moved to local storage without high speed buffer storage file and it be carried out at a high speed
Caching.
User interface 300 demonstrated in Figure 3 or derivatives thereof can be by computing device (for example, calculating demonstrated in Figure 1
Device 110) one or more application programs (for example, web application, native application) at place use.For example, it is optional
Select one or more of interior file represented of the listed files 320 shown in user interface 300 and via e-mail should
Message is attached to program.In some embodiments, photo editing application program or word-processing application can be used
To access one or more of file represented in the listed files 320 shown in user interface 300.
Fig. 4 is to illustrate implementation to be used for from the storage system 450 based on cloud (for example, storage system demonstrated in Figure 1
150) (cache) file is taken out to be stored in local storage 412 (for example, local storage demonstrated in Figure 1
112) schema of the file system 400 of the exemplary methods of cached file is driven away in and from local storage 412.Figure
Shown in 4 and method described below is provided by way of example.In various embodiments, take out and/or drive away
The order of file can be different.In the following discussion, the exemplary methods for taking out (cache) file will be described, and
Then it will describe to be used for the corresponding method of the cached file of expeling (from local storage).
It can be used above for the technologies discussed of Fig. 1 to 3 and/or equipment to implement method demonstrated in Figure 4.Separately
Outside, method illustrated in Fig. 4 can be implemented in a dynamic fashion.For example, can based on several factors (for example change file,
File is deleted, file, closing file is opened, file is appointed as offline available (nail is selected), is appointed as offline may be used by file cancellation
With (cancel nail choosing) and/or etc.) and dynamically taking-up (cache) and/or expeling (removal) (on the basis of just carrying out)
File.Therefore, can based on several factors which (for example, the factor just described) and be constantly changing cache (storage) in local
The specific file of (for example, offline available) in memory 412.Moreover, the file included in local storage 412 is slow at a high speed
Rush memory cache and/or drive away file can be used for based on how many local storage cached file and/or
The amount of the local storage 412 needed for operation (for example, request of user) is asked in execution.In some embodiments, can base
It is high that file is performed or do not perform in the data network access style available for the local computing de comprising local storage 412
Speed caching.For example, if only cellular data network access is available, then as an example, can suspense file it is slow at a high speed
Deposit untill the access of wired or WiFi network is available.
As demonstrated in Figure 4, it (can take out, prefetch) file according to priority level cache.For example, in file system
In 400, the file (file of opening) 420 opened by user can be cached in local storage 412 with limit priority.
Therefore, when User logs in into the computing system comprising local storage 412 and provide will open cloud storage system 450 on spy
When determining instruction (for example, instruction for document files being opened in word processing device) of file, institute will be taken out from cloud storage system 450
State specific file and be cached in local storage 412.However, in some embodiments, or even beat in user
When opening, some file types can not be also cached in local storage 412.For example, in file system 400, Web files
(such as Web files 10) can not be cached in local storage 412, because the processing of this class file can be in cloud environment
Web application is disposed, and any advantage may be not present in this class file in local cache.
Also as demonstrated in Figure 4, can be with the second limit priority (after file of opening) at a high speed through following closely selection part 420
It is cached in local storage 412.In exemplary embodiment, in the height of the file (file that user opens) 420 of opening
After speed caching is completed, file system 400 can proceed to cache and (is specified by the user as offline available through following closely selection part 430
File, for example discussed on Fig. 3).In certain embodiments, if reaching that (or more than) can be used for cache memory
The threshold quantity of local storage 412, for example cache open file 420 or through follow closely selection part 430 when, file system
It is local to discharge that 400 (for example, including the computing device of local storage 412) can perform expeling process (such as described below)
Memory space in memory 412 is so that file prefetches (cache) continuation.Or, file system 400, which can be interrupted, (at least faces
When) cache memory.In other embodiments, if reaching that (or more than) can be used for being locally stored for cache memory
The threshold quantity of device 412, then the file for indicating to answer (needs) to close one or more openings can be provided a user and/or (needs) is answered
One or more files are cancelled nail choosing (cancellation is appointed as offline available) to allow the notice that cache memory continues.
In the example shown in Fig. 4, if receiving instruction and the file elder generation that file is appointed as being followed closely to choosing
Before be cached in local storage 412, then can not cache (retrieving) file again.Similarly, such as
Fruit receives the instruction for opening file and the file previous cache is in local storage 412, then can not be again high
Speed caching (retrieving) described file.
To the file 420 of opening and after the cache completion through following closely selection part 430, file system 400 can be then
Based on prefetching (cache) volume from cloud storage system 450 with giving each attribute of the associated file of (login) user
Outer file 440 (for being stored in local storage 412).In file system 400, cloud storage system 450 can be for given
User's traversing directories structure is so as to the list of construction associated documents attribute.This traversal may be in response to user and access him or she to deposit in cloud
Any one of file on storage system 450 and perform or can be performed as the part of the login process of user.
In exemplary embodiment, in the file 420 that cache is opened and after nail selection part 430, file system
Unite 400 it is cacheable accessed by user recently it is (for example, inspected by user and/or changed by user) and associated with user
The predetermined number file (for example, 50 files, 100 files or 200 files) of (being possessed by user), for example, warp recently
Inspect/modified (accessed) file 442.By cache (taking-up), the determination of which nearest accessed file 442 can be based on
Be contained in the stored file of user each of cloud storage system 450 one or more corresponding document attributes (for example,
Collected during file directory traversal discussed herein above).For example, on inspection to determine the file category of cache which file
Property can include " lastViewedByMeDate " attribute or " modifiedByMeDate " attribute.
For example, if being 50 files by the predetermined number of the nearest accessed file 442 of cache, then deposit
The nearest modified file of reservoir system 400 cacheable 25 and 25 are recently through inspecting (but unmodified) file.Can be first
First cache can be with 25 recently through inspecting the nearest modified file of the alternate mode cache of file 25.Another
In one embodiment, cacheable may or may not be comprising nearest modified file 50 of accumulator system 400 are recently through inspection
Depending on file.In another embodiment, the nearest modified file of accumulator system 400 cacheable 50 and non-cache is only
The nearest file through inspecting (and unmodified).As discussed previously, if reaching that (or more than) can be used for cache memory
Local storage 412 threshold quantity, then file system 400 can perform expeling process (such as described below) to discharge this
Memory space in ground memory 412 is continued with allowing file to prefetch (cache), or alternatively, file system 400 can stop
Only by cache memory in local storage 412.Storage threshold quantity can be used as total memory space in local storage 412
Percentage calculate or may be designated as the fixed storage space amount in local storage 412.If moreover, cached text
The total number of part reaches the threshold value (for example, 500,1,000,5,000 etc.) of the upper limit for the cached file for indicating to be allowed,
So file system 400 can stop high speed buffer storage file.
After cache recently accessed file 442, such as described above, file system 400 can then at a high speed
Caching is recently with giving the predetermined number file of (login) users to share (such as by using with giving (login) use
Family is associated corresponding " sharedWithMeDate " file attribute of the file of (being possessed by user)), for example, recently through shared text
Part 444.For example, if being 25 by the nearest predetermined number through shared file 444 of cache, then file system
400 cacheable (and previously selected or be accessed recently and not high due to File Open, by nail with given users to share recently
Speed caching) 25 files.In exemplary embodiment, file system 400 can be shared the nearest warp of cache in this way
File 444 is untill cache predetermined number is nearest through shared file (for example, 25 files).In other embodiments
In, as demonstrated in Figure 4, the cache recently through shared file 444 can be delayed with the high speed to nearest accessed file 442
Deposit merging.For example, if by 50 files of cache predetermined number, then file system 400 can be for given user
In nearest modified file, recently through inspecting file and/or recently through being replaced between shared file until cache
Untill predetermined number file (50 files).Or, if reaching that (or more than) can be used for the storage of cached file
The threshold quantity in space, then file system 400 can stop high speed buffer storage file.
After to predetermined number, the cache through shared file 444 is completed recently, such as just described, file
System 400 can then cache " correlation " file 446.Associated documents 446 can be and one or more previously cached texts
Part (for example, open file 420, through follow closely selection part 430, recently accessed file 442 and/or recently through shared file 444)
Related file.For example, associated documents 446 can be with the file in previous cached file identical catalogue.
In other embodiments, associated documents 446 can be the file with previous cached file identical file type.Again
In some embodiments, other criterions can be used to determine one or more associated documents of previous cached file.
In file system 400, the several method for cache associated documents 446 is possible.In a reality
Apply in scheme, it may be determined that it is each previously cached file all associated documents 446 (with those file phases of cache
Same order), and all associated documents 446 of given previously cached file can be next previously through at a high speed in cache
It is cached before the associated documents 446 of cache file.For example, if three files of previous cache:First
Individual is file A, second to be file B and the 3rd be file C, then in this embodiment, file A all associated documents
It will be cached before high speed buffer storage file B or file C any associated documents 446.Similarly, file B all phases
Closing file 446 will be cached before high speed buffer storage file C any associated documents.Therefore, file C associated documents
446 will finally be cached, i.e. associated documents 446, follow-up then file B associated documents in high speed buffer storage file A
After 446.
In another embodiment, can by the associated documents 446 in each of previous cached file it
Between carry out alternately and cache associated documents 446, for example pass through each previously cached file of cache in turn
One associated documents.Illustrating for previous cached File A, file B and file C is reused, in this example
In, a cacheable file A associated documents, a follow-up then file B associated documents, follow-up then file C
One associated documents, then repeats the sequence.In this method, for example it can be used with similar mode as described above
Some criterions (such as " lastViewedByMeDate " attribute, " modifiedByMeDate " attribute and/or
" sharedWithMeDate " attribute) determine the given previously cached text of cache (for example, each repeatedly locate)
The order of the associated documents 446 of part.
When cache associated documents 446, the process can be continued until all associated documents 446 of cache, warp
The number of high speed buffer storage file reaches cached file threshold number or cached file (file 420, the warp of opening
Nail selection part 430, recently accessed file 442, recently through shared file 444 and associated documents 446) used the number of threshold quantity
According to untill storing (in local storage 412).If moreover, with described over-over mode cache associated documents 446, that
Once also all associated documents 446 of the given previously cached file of cache, just can skip given previously warp
The associated documents cache of high speed buffer storage file with carry out it is follow-up repeatedly.
In certain embodiments, the set of associated documents 446 can for greatly (for example, with local storage 412 can
Compared with cache memories store space).In other embodiments, can be difficult to (or can not possibly) determine really with previously passing through
The set of the related associated documents 446 of high speed buffer storage file the, because document directory structure (example of the not good given user of definition
Such as, the file of all users is stored in single catalogue or decimal destination directory).In such example, file system 400 can be through
Configure to abandon cache associated documents.
In other embodiments, associated documents 446 can otherwise be determined.For example, given previously cached text
The associated documents 446 of part can be included in the subdirectory or parent directory of the previously catalogue that cached file is located therein
The file included in (for example, its not root).In other embodiments, associated documents can be determined in still other mode
446.For example, associated documents 446 can include the file in the catalogue for being located at and being browsed by user (user of login).Depending on specific
Embodiment, several other methods can be used to determine associated documents 446.
As indicated above, caching to the file of local storage 412 can limit by one or more.For example, this
The amount of memory space in ground memory 412 available for cache memory can be limited.In some embodiments, can will be local
Amount of memory in memory 412 available for cache memory is defined as fixed storage space amount.In other embodiments,
Amount of memory in local storage 412 available for cache memory can be defined as always depositing in local storage 412
Store up the percentage in space.In still other embodiments, the number for the cached file that can be stored in local storage 412
The threshold number of cached file can be limited to.No matter to determine to can be used for file slow at a high speed in local storage 412
The criterion of the amount in the space deposited is how, all will occur wherein by cache memory be defined as " expire " so as to indicate can not high speed
Cache the situation of extra file.In such situation, drive for example can be performed in file system 400 with manner described below
Except process (is indicated) by the arrow 460 in Fig. 4.
In exemplary embodiment, when it is determined that the file cache included in local storage 412 is
Man Shi, it is essentially the priority Layer for being once used to file of the cache included in file cache that can be used
The priority level of secondary inverse level drives away file.The number for the file driven away will depend on particular.Citing
For, file can be driven away untill discharging the given amount of storage available for cache memory.In other embodiments, it can drive
Except file is untill a certain percentage in release general act cache memories store space.In still other embodiments,
File can be driven away untill the file cache amount of memory needed for release cache specific file.Again
In some embodiments, file can be driven away until the number of cached file is less than untill driving away threshold value.It can be used several
Other methods determine the number (data volume) of the file to be driven away.
It can be further determined that by the corresponding nearest timestamp of file from cache memory and drive away the file
Order.For example, when high speed buffer storage file first, it can be assigned and indicate its timestamp (date/time when being cached
Stamp).In certain embodiments, when accessing cached file every time, it is corresponding slow through high speed to reflect that its timestamp may be updated
Deposit the time of the last access (inspect and/or change) of file.Therefore, driving away process 460 can not be with cached file quilt
The definite reversed sequence of cache drives away the cached file, because the process of expeling can be based on nearest timestamp
(timestamp of the time from cache or from the timestamp accessed recently).
In an example embodiment, driving away process 460 can be slow at a high speed from the file in local storage 412 in the following manner
Rush memory and drive away file.Associated documents 446 can be driven away first, wherein the associated documents 446 with oldest timestamp first by
Drive away and the associated documents with newest timestamp are finally purged.As indicated above, once the file of release scheduled volume is high
Fast buffer storage memory space, just can interrupt file and drive away process 460.In this example, once driving away all slow through high speed
Associated documents 446 are deposited, just can start to drive away recently with oldest timestamp through shared file 444, proceed to has in the reverse order
Newest timestamp it is nearest through shared file 444.Again, once the file cache storage of release scheduled volume is empty
Between, it just can interrupt file and drive away process 460.Once drive away all cached nearest through shared file 444, just can be most
Old timestamp starts to drive away accessed file 442 recently, proceeds in the reverse order with the nearest accessed of newest timestamp
File 442.Again, once the file cache memory space of release scheduled volume, just can interrupt file and drive away process
460.In other embodiments, it can merge cached nearest through shared file 444 and cached nearest warp
The expeling of accessing file 442, wherein the two cached file sets be based on its timestamp and from oldest timestamp to
Newest timestamp is purged as a group.In the mode similar to discussed herein above, once the file of release scheduled volume is high
Fast buffer storage memory space, just can interrupt file expeling.Certainly, several other methods can be used slow at a high speed from file
Rush memory and drive away file.
The text needed for driving away All Files 440 from the file cache of local storage 412 and not discharging yet
In the case of the amount in part cache memories store space, can provide request user to user (for example, the user logged in) will
File cancels nail choosing and/or closes file so as to the notice for allowing cache memory to proceed.In other embodiments,
Can by file system 400 automatically by file cancel nail choosing, for example by using with for being driven from file cache
Except the similar criterion of the criterion of file 440.For example, timestamp (oldest to newest) that can be based on file and automatically by it
Cancel nail choosing.
Fig. 5 is the flow chart for illustrating the method related to file disposal.As demonstrated in Figure 5, computing device is set up
With at least a portion (frame 500) of the communication link between the storage system that is operated in cloud environment.
As demonstrated in Figure 5, storage represents the listed files of multiple files, wherein at least first of the multiple file
Point it is stored in the local storage of the computing device and the Part II of the multiple file is stored in the storage system
In (frame 510).In certain embodiments, the listed files can be stored at the cloud environment and be accessed from the cloud environment.
In certain embodiments, the listed files can be stored at the computing device and be accessed from the computing device.
Specified based on the file class associated with the file from the listed files from the listed files
The offline availability (frame 520) of the file.In certain embodiments, it can be specified based on the classification associated with the file
The file.In certain embodiments, can based on by user via the instruction that the computing device is triggered specify the file.
In certain embodiments, can acquiescently or the cached state based on the file and specify the file.
Fig. 6 A to 6C are the flow charts for illustrating the method related to cache memory.Shown in Fig. 6 A to 6C
File method of disposal (for example) described herein can be used together with implementing each other in method.Such as institute's exhibition in Fig. 6 A
Show, at least a portion (frame 600) for the communication link for setting up computing device between the storage system that is operated in cloud environment.
As shown in Fig. 6 A, the request (frame 605) for opening the first file being stored in the storage system is received.Ring
Should be in the request for opening first file, by the first cache memory being locally stored in the computing device
In device, first file is with the first priority cache (frame 610).In certain embodiments, first file
Can be with one of multiple files of first priority cache.The multiple file is (preferential with described first
Level) it may be in response to open the respective request of each of the multiple file and be cached in the described of the computing device
In local storage.
Also as shown in Fig. 6 A, receiving makes the second file being stored in the storage system be asked as available offline
Ask (frame 615).In response to making second file turn into the offline available request, by second cache memory in
In the local storage of the computing device (frame 620), second file is with less than first priority
Two priority caches.In certain embodiments, second file can be with second priority cache
One of multiple files.The multiple file (having second priority) is in response to every in the multiple file in making
One turns into offline available respective request and is cached in the local storage of the computing device.
As further shown in Fig. 6 A, the 3rd cache memory that predictably will be stored in the storage system
In the local storage of the computing device (frame 625).3rd file can be based on the 3rd file one or
Multiple attributes and select, and the 3rd file can less than second priority third priority and cache.
3rd file (at frame 625) can be with one of multiple files of the third priority cache.
In certain embodiments, it can be included with the multiple file of third priority cache:Based on corresponding last modification day
Phase and cache the first predetermined number file;Based on accordingly finally inspecting the date and the predetermined number of cache second is literary
Part;The predetermined number file of cache the 3rd based on the corresponding shared date, and/or based on its within the storage system with
One or more previously cached files relation and the predetermined number file of cache the 4th.In other embodiments,
It can be included with the multiple file of third priority cache by based on the text being stored in the storage system
Date high speed buffer storage file is corresponding to what it is based on the file finally inspects date high speed buffer storage file for the corresponding last modification of part
Between carry out cache predetermined number file repeatedly.
In certain embodiments, (Fig. 6 A's) described first file, second file and the 3rd file can be based on
File available cache memories store in its respective priority and the local storage based on the computing device
The amount of capacity and be cached in the local storage of the computing device.For example, can (example in order of priority
Such as, for the file of identical cache priority, also use date is stabbed) high speed buffer storage file, until meeting or high more than file
Fast cache threshold (for example, number of files, data volume and/or etc.) untill, such as it is discussed herein.
As indicated above, method illustrated in Fig. 6 B can come together to implement together with Fig. 6 A method, and for
The purpose illustrated, will so be described.As demonstrated in Figure 6 B, for opening and being stored in the storage system is received
The request (frame 630) of four files.In response to receiving the request for opening the 4th file, if by the described 4th
Cache memory will exceed cache memory threshold value in the local storage of the computing device, then from described
The local storage of computing device drives away (removal) described 3rd file (frame 635).Will be described with first priority
4th cache memory is in the local storage of the computing device (frame 640).
As indicated above, method illustrated in Fig. 6 C can be (with similar to method illustrated in Fig. 6 B
Mode) come together to implement together with Fig. 6 A method, and for illustrating purposes, will so be described.As in Fig. 6 C
Shown, receive the request (frame 645) that the 3rd file is opened from the local storage of the computing device.In response to
The request of frame 645, described first is changed into by the cache priority of the 3rd file from the third priority
Priority (frame 650), and change finally inspecting the date (655) for the 3rd file.
Fig. 7 is the flow chart for illustrating the method related to the expeling of cached file.As shown in fig. 7,
At least a portion (frame 700) for the communication link that computing device is set up between the storage system that is operated in cloud environment.It is described
Computing device can include the local storage being configured to from the storage system high speed buffer storage file.Reception has met or exceeded
The instruction (frame 710) of the cache memory threshold value of the local storage of the computing device.In response to the finger at frame 710
Show, from the local storage of the computing device drive away at least a portion (such as) of one group of cached file until
Meet untill driving away threshold value.Described at least a portion of described group of cached file can be from lowest cache priority
Drive away to highest cache priority and based on the corresponding timestamp of each file in described group of cached file
And drive away.As shown in fig. 7, driving away preferential with first cache priority or second cache
The confirmation (730) from user is asked before the file of level.In certain embodiments, there can not be the first cache driving away
The file (file of opening) of priority or with the second cache priority file (through follow closely selection part) before ask this
Confirm.
In certain embodiments, described group of cached file can include first with the first cache priority
File, first file is in response to opening the request of first file and cache.Described group of cached text
Part can also include the second file with the second cache priority, and second file is in response to making second file
The cache as offline available request, second priority is less than first priority.Described group slow through high speed
Deposit file and can further include the 3rd file with the 3rd cache priority, the 3rd file is based on last modification
Date and it is last inspect at least one of date and cache, the 3rd cache priority is high less than described second
Fast cache priority level.The cached file still can further include the 4th text with the 4th cache priority
Part, the 4th file cache based on the date for sharing the file, the 4th cache priority is less than
3rd cache priority.Described group of cached file also can further include preferential with the 5th cache
5th file of level, the 5th cache priority is less than the 4th cache priority, and the 5th file is
Based on its within the storage system with first file, second file, the 3rd file and/or it is described 4th text
The relation of at least one of part and cache.
So that with the similar mode discussed above for Fig. 6 C, can receive access box 720 described group is cached
The request of file in file, wherein asking the file of access has the high speed for being less than the highest cache priority
Cache priority level.In response to this request, the cache priority that can will ask the file accessed is changed into described
Highest cache priority (for example, first cache priority).
In general aspect, a kind of computer-readable storage medium can be configured to store causes one or more upon execution
The instruction of the process of computing device one.The process can comprising set up computing device and the storage system that is operated in cloud environment it
Between communication link at least a portion.The process can represent the use of the listed files of multiple files comprising access comprising storage
Family interface, wherein at least Part I of the multiple file be stored in it is in the local storage of the computing device and described many
The Part II of individual file is stored in the storage system.
In another general aspect, a kind of computer-readable storage medium can be configured to store cause upon execution one or
The instruction of multiple processes of computing device one.The process can include and set up computing device and the storage system operated in cloud environment
At least a portion of communication link between system.The process can represent the listed files of multiple files, wherein institute comprising storage
State multiple files at least Part I be stored in the local storage of the computing device and the multiple file second
Part is stored in the storage system, and can include in response at least one of instruction for being received from the computing device or
The part of the listed files is specified based on the file class associated with least a portion of the listed files
Offline availability.
In another aspect, a kind of equipment can operate in cloud environment comprising being configured to and be configured to store multiple texts
The storage system of part.At least Part I of the multiple file is stored in the storage system, and the multiple file
Part II is synchronous in the local storage of computing device.In some embodiments, the storage system includes file pipe
Device is managed, the file manager is configured to provide the user for including the list for representing the multiple file to the computing device
Interface.
In another general aspect, a kind of computer-readable storage medium can be configured to store cause upon execution one or
The instruction of multiple processes of computing device one.The process can include and set up computing device and the storage system operated in cloud environment
At least a portion of communication link between system.The process can be filled comprising the multiple files of storage and in response to being calculated from first
The download request put and a part for the multiple file is sent from storage system to the first computing device for cache
At first computing device.Sent to the second computing device comprising the listed files for representing the multiple file and include institute
State the user interface of the part being cached at the first computing device of multiple files.
The embodiment of various technologies described herein can be with Fundamental Digital Circuit or with computer hardware, solid
Part, software are implemented with its combination.Embodiment can be embodied as computer program product, i.e. visibly be embodied in information load
In body (for example, being embodied in machine-readable storage device (computer-readable media)) with by data processing equipment (for example, can compile
Thread processor, a computer or multiple computers) perform or control the data processing equipment operation computer program.Cause
This, computer-readable storage medium can be configured to store causes processor (for example, the processing at host apparatus upon execution
Processor at device, computing device) perform a process instruction.Compiling language (can be included with any type of programming language
Speech or interpretive language) write computer program (for example, computer program as described above), and portion can be come in any form
The computer program is affixed one's name to, including is deployed as stand-alone program or is deployed as module, component, subroutine or is adapted in a computing environment
The other units used.Computer program can be deployed with a computer or at a site or across multiple
Site is distributed and handled on multiple computers of interconnection of telecommunication network.
Method and step can be performed by one or more programmable processors of execution computer program, with by input data
Operated and produce output and carry out perform function.Procedure can also be by dedicated logic circuit (for example, FPGA (field-programmables
Gate array) or ASIC (application specific integrated circuit)) perform, and equipment can be embodied as the dedicated logic circuit.
For example, the processor for being suitable for handling computer program includes general purpose microprocessor and special microprocessor two
Person, and any kind of digital computer one or more any processors.In general, processor will be from read-only storage
Or random access memory or both receives instruction and data.The element of computer may include at least one for execute instruction
Processor and one or more storage arrangements for store instruction and data.In general, computer can also include and be used to deposit
Store up one or more mass storage devices (for example, disk, magneto-optic disk or CD) of data or through being operatively coupled with from described
One or more mass storage devices receive data or transmit data to it or not only received data but also transmitted data.It is suitable for embodying
Computer program instructions and the information carrier of data include the nonvolatile memory of form of ownership, for example, include:Partly lead
Body memory device, such as EPROM, EEPROM and flash memory device;Disk, for example, internal hard or can load and unload magnetic
Disk;Magneto-optic disk;And CD-ROM and DVD-ROM CDs.The processor and memory can by supplemented or simultaneously
Enter in dedicated logic circuit.
Interacted to provide with user, embodiment may be implemented on computer, the computer has for user
The display device of display information is (for example, cathode-ray tube (CRT), light emitting diode (LED) or liquid crystal display (LCD) monitoring
Device) and the user can so as to computer provide input keyboard and indicator device (for example, mouse or trace ball).Also it can make
There is provided with the device of other species and to be interacted with user;For example can be any form there is provided the feedback to the user
Sensory feedback, for example, visual feedback, audio feedback or touch feedback;And the input from the user can be in any form
To receive, sound, voice or sense of touch are included.
Embodiment may be implemented in computing system and (aft-end assembly be included, for example, being used as data server;Or include centre
Part component, for example, apps server;Or comprising front end assemblies, for example, can come to hand over embodiment via it with user
Mutual graphical user interface or the client computer of Web browser;Or such rear end, any group of middleware or front end assemblies
Close) in.Component can be interconnected by any digital data communications form or media (for example, communication network).The example bag of communication network
Containing LAN (LAN) and wide area network (WAN), such as internet.
Referring to for " embodiment " or " embodiment " is meant to implement with reference to described in the whole text in this specification
Special characteristic, structure or characteristic described by scheme are contained at least one embodiment.Therefore, in this specification in the whole text
The appearance of phrase " in one embodiment " or " in one embodiment " are not necessarily all referring to same implementation in each place
Scheme.In addition, term "or" is it is intended to mean that inclusive "or" rather than alternative "or".
Although having illustrated and having described some features of described embodiment, the technology people of art herein
Member can find out many modifications, substitute, changes and equivalents now.It will be understood, therefore, that appended claims intend to cover
All such modifications and changes belonged in the range of the embodiment.It should be understood that only with side for example and not limitation
The embodiment is presented in formula, and can make the various changes in form and details.Equipment and/or method described herein
Any part can combine in any combination, except the combination of mutual exclusion.Embodiment described herein can be included
The functions of described different embodiments, component and/or the various combinations of feature and/or sub-portfolio.
Claims (20)
1. a kind of method, it includes:
At least a portion for the communication link that computing device is set up between the storage system that is operated in cloud environment;
Storage represents the listed files of multiple files, is filled wherein at least Part I of the multiple file is stored in described calculate
In the local storage put and the Part II of the multiple file is stored in the storage system;And
Specified based on the file class associated with the file from the listed files from described in the listed files
The offline availability of file, wherein the file from the listed files is the first file from the listed files,
And the file class is web file class;
At least the second file from the listed files is specified in response to the first instruction received from the computing device
Offline availability, second file is without high speed buffer storage file;And
Specify the offline available of at least the 3rd file being cached in the local storage from the listed files
Property.
2. according to the method described in claim 1, wherein the storage system as the computing device main storage system
And operate, and the local storage of the computing device is operated as the cache memory of the storage system.
3. the method according to claim 1 or claim 2, wherein the listed files is included:
To the reference for the web files for being produced and being stored in the storage system using weblication,
To the reference of the client file produced using the local application being installed at the computing device, and
Reference to the long-range source file of the remote source of the next comfortable cloud environment peripheral operation.
4. the method according to claim 1 or claim 2, wherein the listed files is across the computing device
The single listed files of the part for distributing to the computing device of the local storage and the storage system.
5. the method according to claim 1 or claim 2, wherein the computing device is to be connected remotely to the cloud ring
First computing device in border,
Methods described further comprises:
It is being connected remotely at the second computing device of the cloud environment access the listed files, is being that described second calculates dress
The listed files when place of putting is accessed is identical with listed files when being to access at first computing device.
6. the method according to claim 1 or claim 2, wherein described specify the file to be included in not from the meter
Calculate in the case that device receives clearly instruction and the file from the listed files is specified based on the file class
Offline availability.
7. the method according to claim 1 or claim 2, wherein the file from the listed files be based on
The file class and be designated as be in offline upstate in the first file, the listed files include the second file,
Second file is accessed and referred at the local storage of the computing device recently based on second file
It is set in the offline upstate, the listed files is included to be referred in response to the instruction from the computing device
It is set to the 3rd file in the offline upstate, and the listed files is included and is designated as in available shape online
The 4th file in state.
8. a kind of method, it includes:
At least a portion for the communication link that computing device is set up between the storage system that is operated in cloud environment;
Receive the request for opening the first file being stored in the storage system;
The request in response to opening first file, by first cache memory in the sheet of the computing device
In ground memory, first file is with the first priority cache;
Receive the offline available request of the second file for making to be stored in the storage system;
In response to making the offline available request of second file, second cache memory is filled in described calculate
In the local storage put, second file is with the second priority cache less than first priority
's;And
The 3rd cache memory that predictably will be stored in the storage system is in the described local of the computing device
In memory, the 3rd file is one or more attributes based on the 3rd file and selected that the 3rd file is
With the third priority cache less than second priority.
9. method according to claim 8, wherein first file, second file and the 3rd file are bases
File available cache memory in its respective priority and the local storage based on the computing device is deposited
Store up the amount of capacity and be cached in the local storage of the computing device.
10. the method according to claim 8 or claim 9, methods described further comprises:
Receive the request for opening the 4th file being stored in the storage system;And
In response to receiving the request for opening the 4th file:
If the 4th cache memory will be exceeded into file at a high speed in the local storage of the computing device
Cache threshold, then drive away the 3rd file from the local storage of the computing device;And
With first priority by the 4th cache memory in the local storage of the computing device.
11. the method according to claim 8 or claim 9, wherein first file is with first priority
One of multiple files of cache, the multiple file is in response in the phase for opening each of the multiple file
It should ask and be cached in the local storage of the computing device.
12. the method according to claim 8 or claim 9, wherein second file is with second priority
One of multiple files of cache, the multiple file is in response in making each of the multiple file offline may be used
Respective request and be cached in the local storage of the computing device.
13. the method according to claim 8 or claim 9, wherein:
3rd file is with one of multiple files of the third priority cache;And
Included with the multiple file of third priority cache:
Cache the first predetermined number file based on the corresponding last modification date;
Based on accordingly finally inspect the date and cache the second predetermined number file;And
The predetermined number file of cache the 3rd based on the corresponding shared date.
14. method according to claim 13, wherein entering one with the multiple file of third priority cache
Step comprising based on its within the storage system with one or more previously cached files relation and cache the 4th
Predetermined number file.
15. the method according to claim 8 or claim 9, wherein:
3rd file is with one of multiple files of the third priority cache;And
Included with the multiple file of third priority cache by slow at a high speed based on the corresponding last modification date
Deposit file and carry out cache predetermined number file repeatedly to based on corresponding finally inspect between date high speed buffer storage file.
16. the method according to claim 8 or claim 9, methods described further comprises:
Receive the request that the 3rd file is opened from the local storage of the computing device;
3rd file is changed into first priority from the third priority;And
Change the last of the 3rd file and inspect the date.
17. a kind of method, it includes:
At least a portion for the communication link that computing device is set up between the storage system that is operated in cloud environment, the calculating
Device includes the local storage being configured to from the storage system high speed buffer storage file;
Receive met or more than the computing device the local storage cache memory threshold value instruction;And
Indicated in response to described, one group of cached file is driven away at least from the local storage of the computing device
A part is untill meeting expeling threshold value, and described at least a portion of described group of cached file is slow from minimum high speed
Priority is deposited to highest cache priority and based on the corresponding time of each file in described group of cached file
Stab and drive away.
18. method according to claim 17, wherein described group of cached file is included:
The first file with the first cache priority, first file is in response to opening asking for first file
Ask and cache;
The second file with the second cache priority, second file is in response to making second file offline may be used
Request and cache, second cache priority are less than first cache priority;
The 3rd file with the 3rd cache priority, the 3rd file is inspected based on the last modification date and finally
At least one of date and cache, the 3rd cache priority are less than second cache priority;
The 4th file with the 4th cache priority, the 4th file is high based on the date for sharing the file
Speed caching, the 4th cache priority is less than the 3rd cache priority;And
The 5th file with the 5th cache priority, the 5th cache priority is slow at a high speed less than the described 4th
Deposit priority, the 5th file based on its within the storage system with first file, second file, described
The relation of at least one of 3rd file and the 4th file and cache.
19. method according to claim 18, methods described further comprises driving away with first cache
The confirmation from user is asked before the file of priority or second cache priority.
20. the method according to any claim in claim 17 or claim 18, methods described further comprises:
The request of the file in described group of cached file of access is received, the file of request access has less than described
The cache priority of highest cache priority;And
In response to the request, the cache priority of the file of access will be asked to change into the highest at a high speed
Cache priority level.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261643279P | 2012-05-05 | 2012-05-05 | |
US61/643,279 | 2012-05-05 | ||
US201261736722P | 2012-12-13 | 2012-12-13 | |
US61/736,722 | 2012-12-13 | ||
US13/841,368 | 2013-03-15 | ||
US13/841,368 US9594686B2 (en) | 2012-05-05 | 2013-03-15 | File handling within a cloud-based file system |
PCT/US2013/039411 WO2013169583A1 (en) | 2012-05-05 | 2013-05-03 | File handling within a cloud-based file system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104412249A CN104412249A (en) | 2015-03-11 |
CN104412249B true CN104412249B (en) | 2017-10-24 |
Family
ID=49513551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380023770.1A Active CN104412249B (en) | 2012-05-05 | 2013-05-03 | File disposal in file system based on cloud |
Country Status (4)
Country | Link |
---|---|
US (1) | US9594686B2 (en) |
KR (1) | KR102097300B1 (en) |
CN (1) | CN104412249B (en) |
WO (1) | WO2013169583A1 (en) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10409445B2 (en) | 2012-01-09 | 2019-09-10 | Activevideo Networks, Inc. | Rendering of an interactive lean-backward user interface on a television |
US9800945B2 (en) | 2012-04-03 | 2017-10-24 | Activevideo Networks, Inc. | Class-based intelligent multiplexing over unmanaged networks |
US9594686B2 (en) | 2012-05-05 | 2017-03-14 | Google Inc. | File handling within a cloud-based file system |
US20140136578A1 (en) * | 2012-11-15 | 2014-05-15 | Microsoft Corporation | Techniques to manage virtual files |
WO2014145921A1 (en) | 2013-03-15 | 2014-09-18 | Activevideo Networks, Inc. | A multiple-mode system and method for providing user selectable video content |
EP3005712A1 (en) | 2013-06-06 | 2016-04-13 | ActiveVideo Networks, Inc. | Overlay rendering of user interface onto source video |
US20150039659A1 (en) * | 2013-07-30 | 2015-02-05 | William F. Sauber | Data location management agent using remote storage |
US10831731B2 (en) * | 2014-03-12 | 2020-11-10 | Dell Products L.P. | Method for storing and accessing data into an indexed key/value pair for offline access |
US9002990B1 (en) | 2014-03-12 | 2015-04-07 | Instart Logic, Inc. | Fast cache purge in content delivery network |
US9549040B2 (en) | 2014-03-12 | 2017-01-17 | Instart Logic, Inc. | First cache purge optimization handling of unavailable nodes |
US9788029B2 (en) | 2014-04-25 | 2017-10-10 | Activevideo Networks, Inc. | Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks |
WO2016032904A1 (en) * | 2014-08-27 | 2016-03-03 | Mokhtarzada Holdings, Llc | Method and system for expanding storage capacity of a drive using cloud storage systems |
US10523985B2 (en) * | 2014-12-24 | 2019-12-31 | Activevideo Networks, Inc. | Managing deep and shallow buffers in a thin-client device of a digital media distribution network |
US10963430B2 (en) * | 2015-04-01 | 2021-03-30 | Dropbox, Inc. | Shared workspaces with selective content item synchronization |
US9922201B2 (en) | 2015-04-01 | 2018-03-20 | Dropbox, Inc. | Nested namespaces for selective content sharing |
US20160349967A1 (en) * | 2015-05-28 | 2016-12-01 | Rockwell Automation Technologies, Inc. | Offline investigation in an industrial automation environment |
US9851965B2 (en) | 2015-06-19 | 2017-12-26 | Microsoft Technology Licensing, Llc | Storing optimization for customization resources |
US11892981B2 (en) * | 2015-08-28 | 2024-02-06 | Airwatch Llc | On demand file sync |
US11108883B2 (en) | 2015-09-04 | 2021-08-31 | Google Llc | Systems and methods for remote network topology discovery |
US9479567B1 (en) | 2015-10-29 | 2016-10-25 | Dropbox, Inc. | Synchronization protocol for multi-premises hosting of digital content items |
TWI581112B (en) * | 2015-12-23 | 2017-05-01 | 南臺科技大學 | Tool system for cloud hard disk and method for operating the same |
KR102222375B1 (en) * | 2015-12-23 | 2021-03-03 | 삼성전자주식회사 | Method for file management and an electronic device thereof |
US10305729B2 (en) * | 2016-09-02 | 2019-05-28 | Nokia Of America Corporation | Systems and methods of providing an edge cloud storage and caching system operating over a local area network |
US10341436B2 (en) * | 2016-09-14 | 2019-07-02 | Dell Products L.P. | Using cloud storage as temporary cache for backup |
CN106445467A (en) * | 2016-09-28 | 2017-02-22 | 广东芬尼克兹节能设备有限公司 | Operating variable synchronization method and system |
US10248659B2 (en) | 2016-10-04 | 2019-04-02 | International Business Machines Corporation | Consistent hashing configurations supporting multi-site replication |
US10891233B2 (en) * | 2018-06-28 | 2021-01-12 | Intel Corporation | Intelligent prefetch disk-caching technology |
US11290531B2 (en) | 2019-12-04 | 2022-03-29 | Dropbox, Inc. | Immediate cloud content item creation from local file system interface |
US11150840B2 (en) * | 2020-02-09 | 2021-10-19 | International Business Machines Corporation | Pinning selected volumes within a heterogeneous cache |
US11956156B2 (en) * | 2020-09-10 | 2024-04-09 | Intel Corporation | Dynamic offline end-to-end packet processing based on traffic class |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011023134A1 (en) * | 2009-08-28 | 2011-03-03 | Beijing Innovation Works Technology Company Limited | Method and system for managing distributed storage system through virtual file system |
CN101997929A (en) * | 2010-11-29 | 2011-03-30 | 北京卓微天成科技咨询有限公司 | Data access method, device and system for cloud storage |
CN102292698A (en) * | 2009-02-04 | 2011-12-21 | 思杰系统有限公司 | Methods and systems for automated management of virtual resources in a cloud computing environment |
CN103180842A (en) * | 2010-10-28 | 2013-06-26 | Sk电信有限公司 | Cloud computing system and data synchronization method therefor |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6345318B1 (en) * | 1998-10-07 | 2002-02-05 | International Business Machines Corporation | System for maintaining a user-modifiable confirmation message configuration record that specifying with respect to a plurality of operations whether to communicate a confirmation message |
US20030055828A1 (en) * | 2001-03-29 | 2003-03-20 | Koch Kevin S. | Methods for synchronizing on-line and off-line transcript projects |
US6687793B1 (en) * | 2001-12-28 | 2004-02-03 | Vignette Corporation | Method and system for optimizing resources for cache management |
EP1595259A1 (en) | 2003-02-12 | 2005-11-16 | Koninklijke Philips Electronics N.V. | Storage medium with reserved area for file system data and application start-up data |
KR20050122251A (en) * | 2003-04-14 | 2005-12-28 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Allocation class selection for file storage |
US7802065B1 (en) * | 2004-05-03 | 2010-09-21 | Crimson Corporation | Peer to peer based cache management |
US8010498B2 (en) | 2005-04-08 | 2011-08-30 | Microsoft Corporation | Virtually infinite reliable storage across multiple storage devices and storage services |
US20070220417A1 (en) * | 2006-03-17 | 2007-09-20 | Sonolink Communications Systems, Llc | System and method for editing online documents |
US7711890B2 (en) * | 2006-06-06 | 2010-05-04 | Sandisk Il Ltd | Cache control in a non-volatile memory device |
US7849267B2 (en) | 2006-06-30 | 2010-12-07 | Moka5, Inc. | Network-extended storage |
KR101129092B1 (en) * | 2008-07-31 | 2012-03-26 | 에스케이플래닛 주식회사 | Web service providing system and web service providing method |
US8762642B2 (en) | 2009-01-30 | 2014-06-24 | Twinstrata Inc | System and method for secure and reliable multi-cloud data replication |
EP2309701A1 (en) | 2009-10-06 | 2011-04-13 | Telefónica, S.A. | Data storage device |
US8788628B1 (en) * | 2011-11-14 | 2014-07-22 | Panzura, Inc. | Pre-fetching data for a distributed filesystem |
US8996647B2 (en) | 2010-06-09 | 2015-03-31 | International Business Machines Corporation | Optimizing storage between mobile devices and cloud storage providers |
US9361395B2 (en) * | 2011-01-13 | 2016-06-07 | Google Inc. | System and method for providing offline access in a hosted document service |
US20120185767A1 (en) * | 2011-01-14 | 2012-07-19 | Apple Inc. | Modifying application behavior |
US8924500B2 (en) * | 2011-03-29 | 2014-12-30 | Amazon Technologies, Inc. | Local storage linked to networked storage system |
US9355115B2 (en) * | 2011-11-21 | 2016-05-31 | Microsoft Technology Licensing, Llc | Client application file access |
US9773051B2 (en) * | 2011-11-29 | 2017-09-26 | Box, Inc. | Mobile platform file and folder selection functionalities for offline access and synchronization |
US9594686B2 (en) | 2012-05-05 | 2017-03-14 | Google Inc. | File handling within a cloud-based file system |
-
2013
- 2013-03-15 US US13/841,368 patent/US9594686B2/en active Active
- 2013-05-03 CN CN201380023770.1A patent/CN104412249B/en active Active
- 2013-05-03 KR KR1020147032838A patent/KR102097300B1/en active IP Right Grant
- 2013-05-03 WO PCT/US2013/039411 patent/WO2013169583A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102292698A (en) * | 2009-02-04 | 2011-12-21 | 思杰系统有限公司 | Methods and systems for automated management of virtual resources in a cloud computing environment |
WO2011023134A1 (en) * | 2009-08-28 | 2011-03-03 | Beijing Innovation Works Technology Company Limited | Method and system for managing distributed storage system through virtual file system |
CN103180842A (en) * | 2010-10-28 | 2013-06-26 | Sk电信有限公司 | Cloud computing system and data synchronization method therefor |
CN101997929A (en) * | 2010-11-29 | 2011-03-30 | 北京卓微天成科技咨询有限公司 | Data access method, device and system for cloud storage |
Also Published As
Publication number | Publication date |
---|---|
WO2013169583A1 (en) | 2013-11-14 |
US20130297887A1 (en) | 2013-11-07 |
CN104412249A (en) | 2015-03-11 |
KR20150013191A (en) | 2015-02-04 |
US9594686B2 (en) | 2017-03-14 |
KR102097300B1 (en) | 2020-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104412249B (en) | File disposal in file system based on cloud | |
US11599546B2 (en) | Stream browser for data streams | |
US9916390B2 (en) | Managing web browser cache for offline browsing | |
US8386955B1 (en) | User-optimized content for web browsing windows | |
AU2021232817A1 (en) | Methods, systems, apparatus, products, articles and data structures for cross-platform digital content | |
RU2659481C1 (en) | Optimized architecture of visualization and sampling for batch processing | |
US20130019159A1 (en) | Mobile web browser for pre-loading web pages | |
US9110568B2 (en) | Browser tab management | |
TWI450107B (en) | Method and computer readable storage media for web data usage platform | |
JP6186015B2 (en) | Share content items | |
US9177022B2 (en) | User pipeline configuration for rule-based query transformation, generation and result display | |
US20170168959A1 (en) | Managing and organizing web browser cache | |
CN104133852B (en) | Web access method, device, server and terminal | |
CN107908472A (en) | Data synchronization unit, method and computer-readable recording medium | |
US20160170720A1 (en) | Bi-directional editing between visual screen designer and source code | |
CN111901294A (en) | Method for constructing online machine learning project and machine learning system | |
CN105378728B (en) | Device and method for indicating and manipulating metadata | |
US10210172B1 (en) | File system integration and synchronization between client and server | |
CN109661662A (en) | Query result is subjected to ranking for correlation using external context | |
CN102520841A (en) | Collection user interface | |
CN107992529A (en) | A kind of key word association method and apparatus | |
CN107977469A (en) | To the method, apparatus and terminal being managed recently using file | |
JP2007133568A (en) | Multilayer work support device, and allocation method, display method, and program for the same multilayer work support device | |
US10242102B2 (en) | Network crawling prioritization | |
CN106503009A (en) | Show the transfer method and device of data in the page |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: American California Patentee after: Google limited liability company Address before: American California Patentee before: Google Inc. |