TWI709862B - 用於預測性檔案快取及同步之技術 - Google Patents
用於預測性檔案快取及同步之技術 Download PDFInfo
- Publication number
- TWI709862B TWI709862B TW105112834A TW105112834A TWI709862B TW I709862 B TWI709862 B TW I709862B TW 105112834 A TW105112834 A TW 105112834A TW 105112834 A TW105112834 A TW 105112834A TW I709862 B TWI709862 B TW I709862B
- Authority
- TW
- Taiwan
- Prior art keywords
- file
- computing device
- cache
- user
- partition
- Prior art date
Links
Images
Classifications
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- 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
- G06F12/0871—Allocation or management of cache space
-
- 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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
- G06F12/0848—Partitioned cache, e.g. separate instruction and operand caches
-
- 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
- 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/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- 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/15—Use in a specific computing environment
- G06F2212/154—Networked environment
-
- 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/26—Using a specific storage system architecture
- G06F2212/263—Network storage, e.g. SAN or NAS
-
- 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/28—Using a specific disk cache architecture
- G06F2212/282—Partitioned 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/31—Providing disk cache in a specific location of a storage system
- G06F2212/314—In storage network, e.g. network attached 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
-
- 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/60—Details of cache memory
- G06F2212/6024—History based prefetching
-
- 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/62—Details of cache specific to multiprocessor cache arrangements
- G06F2212/621—Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
用於預測性快取之技術包括一計算裝置來接收該計算裝置之一或多個感測器產生之感測器資料、以及基於該感測器資料來決定該計算裝置之一裝置脈絡。基於該裝置脈絡,該計算裝置可決定具有與該計算裝置之一使用者最近存取的另一檔案類似特性之一欲快取檔案。該計算裝置包括一檔案快取,其具有一第一分區,用以儲存識別來具有與一使用者最近存取之檔案類似特性的檔案、以及一第二分區,其用以儲存基於該使用者之存取型樣而被識別的檔案。該計算裝置可將該決定檔案儲存至該第一分區。
Description
本發明係有關於用於預測性檔案快取及同步之技術。
使用上線與離線之輕型計算裝置來執行大量工作(例如,編輯文件、草擬電子郵件、聽音樂、等等)於近幾年來已快速增加。該類離線任務通常相當依賴檔案快取,其包含局部儲存檔案以便於檔案擷取時降低網路額外負擔與延遲。例如,檔案快取主要由網頁伺服器來使用以降低網路頻寬使用率、潛伏以及伺服器使用率。傳統快取方案通常包含以一無區別方式來儲存與刪除少量內容。結果是,使用傳統快取技術之計算裝置通常可快取該使用者從未再次使用之內容、及/或貿然刪除仍需要之內容(例如,因為儲存該內容之一預定週期已終止)。
依據本發明之一實施例,係特地提出一種用於預測性檔案快取之計算裝置,該計算裝置包含:一檔案快取,其包括(i)一第一分區,其用以儲存被識別為與該計算裝置
之一使用者最近存取的檔案具有類似特性之檔案、及(ii)一第二分區,其用以儲存基於該使用者之存取型樣而被識別的檔案;一脈絡決定模組,其用以:(i)接收該計算裝置之一或多個感測器產生之感測器資料、及(ii)基於該感測器資料來決定該計算裝置之一裝置脈絡;以及一快取模組,其用以:(i)基於該裝置脈絡來決定與該使用者最近存取之另一檔案具有類似特性的一欲快取檔案、及(ii)將該決定檔案儲存至該檔案快取之該第一分區。
100‧‧‧系統
102‧‧‧計算裝置
104‧‧‧網路
106‧‧‧雲端伺服器
110‧‧‧處理器
112‧‧‧輸入/輸出子系統
114‧‧‧記憶體
116‧‧‧資料儲存器
118‧‧‧通信電路
120‧‧‧感測器
122‧‧‧周邊裝置
124‧‧‧檔案快取
126‧‧‧快取政策
128‧‧‧使用者快取政策
130‧‧‧企業快取政策
200‧‧‧環境
202‧‧‧脈絡決定模組
204‧‧‧快取模組
206‧‧‧檔案同步模組
208‧‧‧使用者介面模組
210‧‧‧通信模組
300、500‧‧‧方法
302、304、306、308、310、312、314、316、318、320、322、324、326、328、330、502、504、506、508、510、512、514、516‧‧‧方塊
600‧‧‧檔案名稱空間
602‧‧‧雲端檔案
604、606‧‧‧分區
該等附圖中,本文所述之概念係藉由範例而非藉由限制來加以繪示。為了簡化與清晰舉例解說,該等圖形繪示之元件不需按比例來描繪。而考量適當性,參考標記已於該等圖形中重覆以指出相對應或相同元件。
圖1為一用於檔案快取與同步之一系統的至少一實施例之簡化方塊圖;圖2為一圖1之系統的一計算裝置之一環境的至少一實施例之簡化方塊圖;圖3至4為一用於檔案快取與同步之一方法的至少一實施例之簡化流程圖;圖5為一用於決定欲快取檔案之一方法的至少一實施例之簡化流程圖;以及圖6為一圖1之系統的一檔案名稱空間之至少一實施例的簡化方塊圖。
本揭示內容之概念對各種不同修改與替代型式相當敏感的情況下,其特定實施例已藉由該等圖式中之範例來顯示且於本文詳細說明。然而,應了解其不意欲將本揭示內容之概念限制在揭示之特定型式中,而是相反地,該意欲係用於涵蓋與本揭示內容以及該等後附請求項一致之所有修改、等效元件、以及替代物。
規格說明中參照為“一實施例”、“某一實施例”、“一繪示實施例”等等,指出該所述實施例可包括一特定特徵、結構、或特性,但每一實施例可或可不需包括該特定特徵、結構、或特性。此外,該類片語不需參照相同實施例。再者,一特定特徵、結構、或特性結合一實施例來說明時,不論是否明確說明皆認為其位於業界熟於此技者的知識中以結合其他實施例來實現該類特徵、結構、或特性。此外,應體認包括在一清單中、以“至少一A、B、與C”的格式之項目可表示(A);(B);(C);(A與B);(B與C);(A與C);或(A、B、與C)。同樣地,以“A、B、或C的至少其中之一”的格式所列之項目可表示(A);(B);(C);(A與B);(B與C);(A與C);或(A、B、與C)。
某些實例中,該等揭示實施例可以硬體、韌體、軟體、或其任何組合來執行。該等揭示實施例亦可作為一或多個暫態或非暫態機器可讀(例如,電腦可讀)儲存媒體上承載或儲存之指令來予以執行,該等指令可由一或多個處理器來讀取與執行。一機器可讀儲存媒體可作為任何儲存
裝置、機構、或以可由一機器(例如,一依電性或非依電性記憶體、一媒體碟片、或其他媒體裝置)讀取之一型式來儲存或傳送資訊的其他實體結構來予以具體化。
該等圖式中,某些結構或方法特徵可以特定安排及/或順序來顯示。然而,應體認該類特定安排及/或順序可不需要。而是,某些實施例中,該類特徵可以與該繪示圖形中所示的不同之方式及/或順序來安排。此外,一特定圖形中包括一結構或方法特徵並不表示暗喻該類特徵需在所有實施例中,而某些實施例中,可不包括或可與其他特徵組合。
現參照圖1,用於檔案快取及同步之一系統100包括一計算裝置102、一網路104、以及一雲端伺服器106。如下文詳細說明,該繪示實施例中,該計算裝置102可基於(例如,從該雲端伺服器106)產生、作為該計算裝置102隨後使用之感測器資料與預測性快取檔案來決定該計算裝置102之一裝置脈絡。例如,某些實施例中,該計算裝置102可識別以及快取與該計算裝置102之一使用者最近存取的其他檔案類似特性之檔案。此外,如下所述,該計算裝置102可藉由將修改的快取檔案儲存至該雲端伺服器106來同步該系統100之檔案。應體認本文所述之該檔案快取與同步技術可比傳統技術更有效快取,同時例如,可降低儲存器需求(例如,藉由更智慧地識別快取檔案)以及陳述各種不同的安全考量(例如,藉由於一特定時間點來降低快取至一裝置之內容量)。此外,某些實施例中,該等繪示技術可改善
一特定計算裝置之快取命中率。
該繪示計算裝置102可作為能夠執行本文所述之功能的任何類型的計算裝置來予以具體化。例如,該計算裝置102可作為一膝上型電腦、平板電腦、筆記型電腦、小筆電、超筆電TM、行動電話、智慧型手機、隨身計算裝置、個人數位助理、行動網際網路裝置、併合裝置、桌上型電腦、伺服器、路由器、交換器、及/或任何其他計算/通信裝置來予以具體化。如圖1所示,該繪示計算裝置102包括一處理器110、一輸入/輸出(“I/O”)子系統112、一記憶體114、一資料儲存器116、一通信電路118、一或多個感測器120、以及一或多個周邊裝置122。當然,其他實施例中,該計算裝置102可包括其他或額外構件,諸如於一典型計算裝置中共同發現的構件(例如,各種不同的輸入/輸出裝置及/或其他構件)。此外,某些實施例中,一或多個該等繪示構件可合併於另一構件中、或以其他方式形成另一構件的一部分。例如,某些實施例中,該記憶體114、或其一部分可合併於該處理器110中。
該處理器110可作為能夠執行本文所述之功能的任何類型的處理器來予以具體化。例如,該處理器110可作為一(多個)單一或多核心處理器、數位信號處理器、微控制器、或其他處理器或處理/控制電路來予以具體化。同樣地,該記憶體114可作為能夠執行本文所述之功能的任何類型依電性或非依電性記憶體或資料儲存器來予以具體化。操作時,該記憶體114可儲存該計算裝置102之操作期間使用
的各種不同資料與軟體,諸如作業系統、應用程式、程式、程式庫、以及驅動程式。該記憶體114經由該I/O子系統112來通信上耦合至該處理器110,其可作為促進與該處理器110、該記憶體114、以及該計算裝置102之其他構件的輸入/輸出操作之電路及/或構件來予以具體化。例如,該I/O子系統112可作為以下元件來予以具體化、或另外包括記憶體控制器集線器、輸入/輸出控制集線器、韌體裝置、通信鏈接(亦即,點對點鏈接、匯流排鏈接、線路、纜線、光導、印刷電路板追蹤、等等)及/或其他構件與子系統以促進該等輸入/輸出操作。某些實施例中,該I/O子系統112可形成一晶載系統(SoC)之一部分、且連同該處理器110、該記憶體114、以及該計算裝置102之其他構件,來併入一單一積體電路晶片上。
該資料儲存器116可作為組配用於短期或長期的資料儲存器之任何類型的裝置或多個裝置,諸如,例如,記憶體裝置與電路、記憶卡、硬碟驅動器、固態驅動器、或其他資料儲存裝置。如本文所述,該計算裝置102之操作期間,該資料儲存器116及/或該記憶體114可儲存各種不同的資料。例如,該繪示實施例中,該資料儲存器116包括一檔案快取124與一或多個快取政策126。如本文所述,該檔案快取124組配來儲存該計算裝置102之快取檔案。某些實施例中,該檔案快取124可形成該資料儲存器116及/或該記憶體114之一部分。應體認該系統100使用之檔案可儲存至圖6中所示之一檔案名稱空間600。如圖所示,該繪示檔案
名稱空間600包括該檔案快取124與雲端檔案602(例如,儲存於該雲端伺服器106上或另外於一雲端計算環境中之檔案)。此外,該繪示檔案名稱空間600中之檔案快取124包括兩個分區:一分區604,其組配來儲存基於該計算裝置102之一使用者的存取型樣來識別之檔案、以及一分區606,其組配來儲存識別為類似(例如,具有類似特性)該計算裝置102之該使用者最近存取的檔案之檔案。應體認某些實施例中,該等分區604、606之每一個可分布在該記憶體114及/或該資料儲存器116中。某些實施例中,該等分區604、606可被動態決定使得該等分區604、606之每一個使用的儲存空間量會隨時間不同及/或改變。
該快取政策126包括該計算裝置102用以快取檔案之規則。依照該特別實施例,該快取政策126可包括一使用者快取政策128(例如,包括針對快取檔案之使用者定義的規則)及/或一企業快取政策130(例如,針對該計算裝置102之一企業環境中的快取檔案之規則)。該快取政策126可包括有關裝置類型、容量、可用儲存器、網路連接、位置、時間、使用者脈絡、環境、及/或其他特性之規則。某些實施例中,該等規則可識別“必須”一直快取之檔案及/或“必須從不”快取之檔案。例如,該快取政策126可包括將一特定位置識別為不安全之一規則,使得若該計算裝置102決定位於該特定位置時,一或多個快取檔案應被刪除。
該通信電路118可作為能夠將該計算裝置102與該網路104上之其他遠端裝置(例如,雲端伺服器106)間
的通信賦能之任何通信電路、裝置、或其集合來予以具體化。該通信電路118可組配來使用任何一或多個通信技術(例如,無線或有線通信)與相關聯協定(例如,乙太網路、藍芽®、Wi-Fi®、WiMAX、LTE、5G、等等)以實現該類通信。
該等感測器120可作為組配來產生指出該計算裝置102之一環境或脈絡及/或該計算裝置102之使用者的資料/信號之任何感測器來予以具體化。各種不同實施例中,該等感測器120可作為下列元件來予以具體化、或另外包括,例如,慣性感測器(例如,一慣性測量單元)、位置感測器(例如,GPS感測器/系統)、鄰近感測器、光學感測器、光感測器、聲響感測器、溫度感測器、動作感測器、壓電感測器、鏡頭、及/或其他類型的感測器。當然,該計算裝置102亦可包括組配來促進使用該(等)感測器120之構件及/或裝置。依照該特定實施例,該等感測器120可包括硬體感測器及/或軟體感測器(例如,來決定月曆事件與其他應用程式資料)。
該等周邊裝置122可包括任何數量的額外周邊或介面裝置,諸如揚聲器、麥克風、額外儲存裝置、等等。包括於該等周邊裝置122中之特定裝置可依照,例如,該計算裝置102之類型及/或所需的使用。
該網路104可作為能夠促進該計算裝置102與遠端裝置(例如,該雲端伺服器106)間之通信的任何類型之通信網路來予以具體化。就本身而言,該網路104可包括一或
多個網路、路由器、交換器、電腦、及/或其他中介裝置。例如,該網路104可作為下列元件來予以具體化、或另外包括一或多個蜂巢式網路、電話網路、區域或廣域網路、公眾可用全球網路(例如,網際網路)、一特定網路、或其任何組合。
該雲端伺服器106可作為能夠執行本文所述之功能的任何類型的計算裝置來予以具體化。例如,某些實施例中,該雲端伺服器106可類似上文所述之該計算裝置102。亦即,該雲端伺服器106可作為一伺服器、一機架安裝伺服器、一刀鋒伺服器、桌上型電腦、膝上型電腦、平板電腦、筆記型電腦、小筆電、超筆電TM、行動電話、智慧型手機、個人數位助理、行動網際網路裝置、隨身計算裝置、併合裝置、及/或任何其他計算/通信裝置來予以具體化。此外,該雲端伺服器106可包括類似上文所述之該計算裝置102的構件。該計算裝置102之該等構件的說明可等同應用在該雲端伺服器106之構件的說明、且為了清晰說明於本文不再重覆。此外,應體認該雲端伺服器106可包括其他構件、子構件、以及於一計算裝置中共同發現之裝置,其於上文參照該計算裝置102即不再說明,且為了清晰說明於本文不再說明。
現參照圖2,使用上,該計算裝置102建立一環境200作預測性檔案快取及同步。該計算裝置102之繪示環境200包括一脈絡決定模組202、一快取模組204、一檔案同步模組206、一使用者介面模組208、與一通信模組210。該環
境200之各種不同模組可作為硬體、軟體、韌體、或其一組合來予以具體化。例如,該環境200之各種不同模組、邏輯、以及其他構件可形成該處理器110或該計算裝置102之其他硬體構件的一部分、或另外由該等構件建立。就本身而言,某些實施例中,該環境200之一或多個模組可作為電氣裝置之一電路或集合(例如,一脈絡決定電路、一快取電路、一檔案同步電路、一使用者介面電路、及/或一通信電路)來予以具體化。此外,某些實施例中,一或多個該等繪示模組可形成另一模組的一部分、及/或一或多個該等繪示模組可彼此獨立。
該脈絡決定模組202可組配來接收該等感測器120產生之感測器資料、分析該接收之感測器資料、以及決定該計算裝置102之一脈絡。例如,該脈絡決定模組202可決定該計算裝置102之位置、該網路連接狀態、該使用者月曆上之事件、網路頻寬、(例如,該記憶體114及/或該資料儲存器116中)可用的儲存器、該目前時間、裝置容量、執行的應用程式、及/或該計算裝置102之其他特性。
該快取模組204可組配來(例如,基於該計算裝置102及/或該快取政策126之脈絡)決定儲存至該檔案快取124及/或從其刪除之檔案。如此執行中,該快取模組204可基於該計算裝置102之一使用者的存取型樣來識別檔案。例如,某些實施例中,該快取模組204可識別該使用者最近存取之一預定數量的檔案。再者,該繪示實施例中,該快取模組204可識別儲存至該檔案快取124及/或從其刪除之檔案,其
類似(例如,具有類似特性)該使用者最近(例如,目前)存取之其他檔案。應體認該快取模組204可以任何適當方式來決定各種不同檔案間之“類似性”。例如,某些實施例中,該等檔案中具有共同檔案名稱、共同檔案類型、及/或共同關鍵字之檔案可視為彼此“類似”或相關。
該檔案同步模組206可組配來擷取檔案以便從該雲端伺服器106快取、並將更新/修改檔案發送至該雲端伺服器106來確認該系統100中之檔案同步。例如,該檔案同步模組206可從該雲端伺服器106擷取一檔案並將該檔案儲存至該檔案快取124。該使用者可存取該檔案,例如,該計算裝置102離線(例如,與該網路104中斷連線)時並修改該檔案。就本身而言,該檔案同步模組206可以該修改檔案來更新該雲端伺服器106(例如,該計算裝置102再次上線時)。
該使用者介面模組208可允許該計算裝置102之一使用者與該計算裝置102互動。例如,如上所述,某些實施例中,該計算裝置102可包括一使用者快取政策128。此外,某些實施例中,該使用者可置換一企業快取政策130之一或多個政策。就本身而言,該使用者介面模組208可解譯與處理該使用者提供之輸入。
該通信模組210可處置該計算裝置102與該系統100之其它計算裝置(例如,該雲端伺服器106)間的通信。例如,如本文所述,該計算裝置102可從該雲端伺服器106擷取檔案並將檔案儲存其中以執行預測性檔案快取及同步。
現參照圖3至4,使用上,該計算裝置102可執行
用以檔案快取及同步之一方法300。該繪示方法300從圖3之方塊302開始,其中該計算裝置102決定是否執行預測性快取。若是如此,方塊304中,該計算裝置102接收該等感測器120產生之感測器資料。如上所述,該感測器120組配來產生指出該計算裝置102及/或該計算裝置102之使用者的一環境或脈絡之資料/信號。特別是,方塊306中,該計算裝置102可接收該計算裝置102之一或多個硬體感測器產生的硬體感測器資料。例如,該計算裝置102可接收指出該計算裝置102之一位置、該計算裝置102之一或多個構件的一硬體狀態、該計算裝置102之一實體環境、及/或適合執行本文所述之功能的其他特徵、參數、與特性之資料。此外,方塊308中,該計算裝置102可從一或多個軟體應用程式接收感測器資料及/或其他軟體感測器資料。例如,該計算裝置102可接收指出一特定軟體應用程式之一執行狀態、一應用程式執行之結果的資料、及/或適合執行本文所述之功能的其他軟體資料(例如,月曆事件)。
方塊310中,該計算裝置102可基於該接收的感測器資料來決定該計算裝置102之脈絡。應體認該計算裝置102可使用適合基於感測器資料來決定脈絡資訊之任何適當的技術、演算法、及/或機構來分析該計算裝置102之感測器資料。依照該特定實施例,該計算裝置102使用及/或識別之脈絡與脈絡參數可不相同。例如,各種不同實施例中,該計算裝置102可(例如,基於GPS資料、影像技術、及/或其他適當演算法來)決定該計算裝置102之位置、該計算
裝置102之網路連接狀態(例如,於一特定時間點,該計算裝置102是否通信上耦合至該網路104及/或該雲端伺服器106)、該使用者(例如,基於該使用者虛擬月曆)欲參加之即將來臨事件、可用的網路頻寬、可用的儲存器、該目前時間、裝置容量(例如,最大處理容量)、目前執行的應用程式、及/或該計算裝置102之其他特性與脈絡參數。某些實施例中,該計算裝置102可基於該決定的脈絡來產生該計算裝置102之一脈絡設定檔及/或該計算裝置102之一特定使用者。
方塊312中,該計算裝置102可擷取該計算裝置102及/或該計算裝置102之使用者的一或多個快取政策126。例如,方塊314中,該計算裝置102可擷取該計算裝置102之一特定使用者的一使用者快取政策128(亦即,一使用者定義的快取政策)。此外,某些實施例中,方塊316中,該計算裝置102可擷取一企業快取政策130。如上所述,該快取政策126可包括基於一檔案之一或多個參數、(例如,該計算裝置102之)脈絡資料、及/或其他適當資料來快取特定的檔案之規則。例如,某些實施例中,該快取政策126可包括基於裝置類型、容量、可用儲存器、網路連接、位置、時間、使用者脈絡、環境、及/或其他特性的規則。
方塊318中,該計算裝置102可基於該計算裝置102之決定脈絡及/或該快取政策126來決定快取哪些檔案(例如,儲存至該檔案快取124及/或從該檔案快取124刪除)。為如此執行,該計算裝置102可執行如圖5所示之一方法500。
該繪示方法500從方塊502開始,其中該計算裝置102可基於存取型樣來決定快取哪些檔案。例如,該計算裝置102可識別該計算裝置102或該計算裝置102之一特定使用者最近存取、可儲存一預定時間量之一預定數量的檔案。
方塊504中,該計算裝置102可基於預測性快取技術來決定快取哪些檔案。例如,方塊506中,該計算裝置102可識別類似該計算裝置102或、更特定於,該計算裝置102之一特定使用者最近存取的檔案之檔案。藉由如此執行,某些實施例中,該計算裝置102可基於該決定的脈絡來預測一使用者的需求。如上文指出,該計算裝置102可以任何適當方式來決定各種不同檔案間之“類似性”。例如,該計算裝置102可識別具有檔案名稱、檔案類型、(例如,該檔案本身中的)關鍵字、檔案大小、(多個)時戳、及/或與該計算裝置102或一特定使用者最近/目前存取的檔案之對應特性匹配或接近匹配之其他適當的檔案特性或元資料之檔案(例如,儲存於該雲端伺服器106中之檔案)。例如,若該計算裝置102決定一使用者(例如,經由課稅準備軟體)來數位化準備課稅,則該計算裝置102可識別用以快取至該檔案快取124、有關該使用者課稅之準備(例如,前一年課稅檔案)的檔案。另一實施例中,該計算裝置102可識別公路圖檔案、專案計畫、簡報、日誌物品、及/或有關特定專案工作之其他檔案。應體認用來決定兩個檔案是否類似之檔案特性,可作為分析與比較來決定該等個別檔案的特定特性是否在一參考變異中彼此匹配之相關聯檔案的任何特性或特徵來
予以具體化。例如,該等檔案特性可包括存取日期/時間、相關標的、內容、及/或其他適當的檔案特性。
此外,方塊508中,該計算裝置102可識別有關於一使用者虛擬月曆上識別之一或多個即將來臨的事件/會議之檔案。例如,該計算裝置102可決定該使用者將搭機飛行(例如,離線)至與投資者之一市郊會議、並識別有關該會議之快取檔案(例如,使該使用者能夠離線,諸如飛行期間工作)。就本身而言,應體認某些實施例中,該計算裝置102可識別該計算裝置102之使用者最近未(或從未)存取之快取檔案。
方塊510中,若有的話,該計算裝置102可決定哪個檔案從該檔案快取124刪除。如此執行中,方塊512中,該計算裝置102可基於存取型樣來識別待刪除之檔案。例如,該計算裝置102可識別該分區604中一或多個最近最少存取的檔案、或另外決定一或多個檔案應基於該計算裝置102或該使用者之存取型樣來刪除。方塊514中,該計算裝置102可基於預測性快取來識別待刪除之檔案。例如,該計算裝置102可(例如,基於該裝置脈絡與該快取政策126來)決定該計算裝置102目前位於一不安全位置,而因此,識別為了安全性目的從該檔案快取124刪除之一或多個機密檔案。此外,某些實施例中,方塊516中,該計算裝置102可識別目前儲存於該檔案快取124中之檔案,該等檔案應被刪除來挪出“空間”給該新識別的欲快取檔案、或由其置換。當然,某些實施例中,該計算裝置102可將該新的識別/決定檔案
儲存至該檔案快取124,而不需刪除已儲存於該檔案快取124中之其他檔案。此外,如上述該檔案快取124為動態之某些實施例中,該計算裝置102可刪除/置換一分區604、606中之一或多個檔案,來挪出“空間”給儲存至其他分區604、606之一或多個檔案。
返回圖3,應體認該計算裝置102可使用基於該裝置脈絡及/或該快取政策126來決定哪個快取檔案(亦即,哪個檔案儲存至該檔案快取124及/或從該檔案快取124刪除)之任何適當的技術、演算法、及/或機構。該方法300前進至圖4之方塊320,其中該計算裝置102更新該檔案快取124。如此執行中,方塊322中,該計算裝置102可擷取識別來從該雲端伺服器106快取之檔案、以及將該等檔案儲存至該檔案快取124(例如,至該檔案快取124之對應分區604、606)。再者,方塊324中,該計算裝置102可刪除識別來從該檔案快取124刪除之檔案。某些實施例中,該計算裝置102可藉由將所有的零、所有的一寫入、或將一隨機位元型樣寫入該識別為刪除之檔案所儲存的記憶體位置來如此執行。當然,如上所述,其他實施例中,該計算裝置102可替代允許該類檔案被識別為快取之一或多個檔案直接置換。
如上所述,某些實施例中,該等繪示技術可允許該計算裝置102來確保檔案與該雲端伺服器106同步。就本身而言,方塊326中,該計算裝置102可決定儲存於該檔案快取124中之一或多個檔案自從從該雲端伺服器106擷取後是否已被修改。若是如此,方塊328中,該計算裝置102可
決定該計算裝置102是否離線(例如,與該雲端伺服器106中斷連接)。若該計算裝置102離線或另外因素無法與該雲端伺服器106通信,則該方法300返回至方塊328,其中該計算裝置102可再次決定該計算裝置102是否離線。換言之,該類實施例中,該方法300等待進行直到該計算裝置102再次通信上耦合至該雲端伺服器106為止。當然,該計算裝置102可嘗試週期性、重覆地、及/或用以響應使用者輸入或其他條件,而重新連接至該雲端伺服器106。方塊328中,若該計算裝置102決定其通信上耦合至該雲端伺服器106,則方塊330中,該計算裝置102可將該(等)修改檔案發送至該雲端伺服器106作檔案同步。
該方法300返回圖3之方塊304,其中該計算裝置102再次接收該計算裝置102之感測器資料以決定該裝置脈絡。同樣地,方塊330中,若該計算裝置102決定儲存於該檔案快取124中之檔案未被修改(亦即,所有檔案皆同步),則該方法300亦返回圖3之方塊304來接收感測器資料。當然,應體認某些實施例中,若該計算裝置102決定其已與該雲端伺服器106中斷連接,則該方法300可在任何點暫停,直到該計算裝置102與該雲端伺服器106重新連接為止。
本文揭示之技術的舉例解說範例將於下文中提供。該等技術之一實施例可包括上術範例之任何一個或多個範例、以及其任何組合。
範例1包括一種用於預測性檔案快取之計算裝置,
該計算裝置包括:一檔案快取,其包括(i)一第一分區,其用以儲存識別來具有與該計算裝置之一使用者最近存取的檔案類似特性之檔案、以及(ii)一第二分區,其用以儲存基於該使用者之存取型樣來識別的檔案;一脈絡決定模組,其用以執行下列步驟:(i)接收該計算裝置之一或多個感測器產生之感測器資料、以及(ii)基於該感測器資料來決定該計算裝置之一裝置脈絡;以及一快取模組,其用以執行下列步驟:(i)基於該裝置脈絡來決定具有與該使用者最近存取之另一檔案類似特性的一欲快取檔案、以及(ii)將該決定檔案儲存至該檔案快取之該第一分區。
範例2包括範例1之標的,而其中用以接收該感測器資料包含接收該計算裝置之一或多個硬體感測器產生的感測器資料。
範例3包括範例1與2之任一項的標的,而其中用以接收該感測器資料包含從一或多個軟體應用程式來接收資料。
範例4包括範例1至3之任一項的標的,而其中用以決定該欲快取檔案包含基於該裝置脈絡與該使用者定義之一快取政策來決定該欲快取檔案;而其中該快取政策包括針對快取檔案之使用者定義規則。
範例5包括範例1至4之任一項的標的,而其中用以決定該欲快取檔案包含基於該裝置脈絡與一企業快取政策來決定該欲快取檔案;而其中該企業快取政策包括針對該計算裝置之一企業環境中的快取檔案之規則。
範例6包括範例1至5之任一項的標的,且更包括一檔案同步模組來從一雲端伺服器擷取該欲快取檔案。
範例7包括範例1至6之任一項的標的,而其中該檔案同步模組用以響應該檔案已被修改之一決定,而進一步將該快取檔案發送至該雲端伺服器。
範例8包括範例1至7之任一項的標的,而其中該快取模組係用來基於該裝置脈絡而決定從該檔案快取刪除之一檔案。
範例9包括範例1至8之任一項的標的,而其中用以決定從該快取檔案刪除之檔案包含基於該使用者之存取型樣來決定從該第二分區刪除之一檔案。
範例10包括範例1至9之任一項的標的,而其中用以決定從該快取檔案刪除之檔案包含決定從該第一分區刪除之一檔案。
範例11包括範例1至10之任一項的標的,而其中用以決定該欲快取檔案包含識別有關於該使用者之一虛擬月曆上指出的一即將來臨事件之檔案。
範例12包括範例1至11之任一項的標的,而其中該特性包括檔案元資料。
範例13包括範例1至12之任一項的標的,而其中該特性包括一檔案名稱、一檔案類型、一檔案大小、一檔案時戳、或該檔案中之一關鍵字的至少其中之一。
範例14包括一種由一計算裝置作預測性檔案快取之方法,該方法包含下列步驟:由該計算裝置接收該計
算裝置之一或多個感測器產生之感測器資料;由該計算裝置基於該感測器資料來決定該計算裝置之一裝置脈絡;由該計算裝置基於該裝置脈絡來決定具有與該計算裝置之一使用者最近存取的另一檔案類似特性之一欲快取檔案;以及由該計算裝置將該決定檔案儲存至該計算裝置之一檔案快取的一第一分區,其中該檔案快取包括該第一分區,其用以儲存識別來具有與該使用者最近存取的檔案類似特性之檔案、以及一第二分區,其用以儲存基於該使用者之存取型樣來識別的檔案。
範例15包括範例14之標的,而其中接收該感測器資料包含接收該計算裝置之一或多個硬體感測器產生的感測器資料。
範例16包括範例14與15之任一項的標的,而其中接收該感測器資料包含從一或多個軟體應用程式來接收資料。
範例17包括範例14至16之任一項的標的,而其中決定該欲快取檔案包含基於該裝置脈絡與該使用者定義之一快取政策來決定該欲快取檔案,其中該快取政策包括針對快取檔案之使用者定義規則。
範例18包括範例14至17之任一項的標的,而其中決定該欲快取檔案包含基於該裝置脈絡與一企業快取政策來決定該欲快取檔案,其中該企業快取政策包括針對該計算裝置之一企業環境中的快取檔案之規則。
範例19包括範例14至18之任一項的標的,且更包
括由該計算裝置從一雲端伺服器擷取該欲快取檔案。
範例20包括範例14至19之任一項的標的,且更包括用以響應該檔案已被修改之一決定,由該計算裝置將該快取檔案發送至該雲端伺服器。
範例21包括範例14至20之任一項的標的,且更包括由該計算裝置基於該裝置脈絡,而決定從該檔案快取刪除之一檔案。
範例22包括範例14至21之任一項的標的,而其中決定從該快取檔案刪除檔案包含基於該使用者之存取型樣來決定從該第二分區刪除之一檔案。
範例23包括範例14至22之任一項的標的,而其中決定從該快取檔案刪除之檔案包含決定從該第一分區刪除之一檔案。
範例24包括範例14至23之任一項的標的,而其中決定該欲快取檔案包含識別有關於該使用者之一虛擬月曆上指出的一即將來臨事件之檔案。
範例25包括範例14至24之任一項的標的,而其中該特性包括檔案元資料。
範例26包括範例14至25之任一項的標的,而其中該特性包括一檔案名稱、一檔案類型、一檔案大小、一檔案時戳、或該檔案中之一關鍵字的至少其中之一。
範例27包括一種計算裝置,其包含一處理器;以及儲存有多個指令之一記憶體,該等指令由該處理器執行時可使該計算裝置來執行範例14至26之任一項的方法。
範例28包括一或多個機器可讀儲存媒體,其包含儲存其中之多個指令,該等指令用以響應由一計算裝置執行時,可形成一計算裝置來執行範例14至26之任一項的方法。
範例29包括一計算裝置,其包含用以執行範例14至26之任一項的方法之裝置。
範例30包括用於預測性檔案快取之一計算裝置,該計算裝置包含用以接收該計算裝置之一或多個感測器產生之感測器資料的裝置;用以基於該感測器資料來決定該計算裝置之一裝置脈絡的裝置;用以基於該裝置脈絡來決定具有與該計算裝置之一使用者最近存取的另一檔案類似特性之一欲快取檔案的裝置;用以將該決定檔案儲存至該計算裝置之一檔案快取的一第一分區之裝置,其中該檔案快取包括該第一分區,其用以儲存識別來具有與該使用者最近存取的檔案類似特性之檔案、以及一第二分區,其用以儲存基於該使用者之存取型樣來識別的檔案。
範例31包括範例30之標的,而其中該用以接收該感測器資料之裝置包含用以接收該計算裝置之一或多個硬體感測器產生的感測器資料之裝置。
範例32包括範例30與31之任一項的標的,而其中該用以接收該感測器資料之裝置包含從一或多個軟體應用程式來接收資料之裝置。
範例33包括範例30至32之任一項的標的,而其中用以決定該欲快取檔案之裝置包含用以基於該裝置脈絡與
該使用者定義之一快取政策來決定該欲快取檔案之裝置,其中該快取政策包括針對快取檔案之使用者定義規則。
範例34包括範例30至33之任一項的標的,而其中用以決定該欲快取檔案之裝置包含用以基於該裝置脈絡與一企業快取政策來決定該欲快取檔案之裝置,其中該企業快取政策包括針對該計算裝置之一企業環境中的快取檔案之規則。
範例35包括範例30至34之任一項的標的,且更包括用以從一雲端伺服器擷取該欲快取檔案之裝置。
範例36包括範例30至35之任一項的標的,且更包括用以響應決定該檔案已被修改,而將該快取檔案發送至該雲端伺服器之裝置。
範例37包括範例30至36之任一項的標的,且更包括用以基於該裝置脈絡而決定從該檔案快取刪除一檔案之裝置。
範例38包括範例30至37之任一項的標的,而其中用以決定從該快取檔案刪除之檔案的裝置,包含用以基於該使用者之存取型樣來決定從該第二分區刪除之一檔案的裝置。
範例39包括範例30至38之任一項的標的,而其中用以決定從該快取檔案刪除之檔案的裝置,包含用以決定從該第一分區刪除之一檔案的裝置。
範例40包括範例30至39之任一項的標的,而其中用以決定該欲快取檔案的裝置,包含用以識別有關於該使
用者之一虛擬月曆上指出的一即將來臨事件之檔案的裝置。
範例41包括範例30至40之任一項的標的,而其中該等特性包括檔案元資料。
範例42包括範例30至41之任一項的標的,而其中該等特性包括一檔案名稱、一檔案類型、一檔案大小、一檔案時戳、或該檔案中之一關鍵字的至少其中之一。
100‧‧‧系統
102‧‧‧計算裝置
104‧‧‧網路
106‧‧‧雲端伺服器
110‧‧‧處理器
112‧‧‧輸入/輸出子系統
114‧‧‧記憶體
116‧‧‧資料儲存器
118‧‧‧通信電路
120‧‧‧感測器
122‧‧‧周邊裝置
124‧‧‧檔案快取
126‧‧‧快取政策
128‧‧‧使用者快取政策
130‧‧‧企業快取政策
Claims (24)
- 一種用於預測性檔案快取之計算裝置,該計算裝置包含:一檔案快取,其包括(i)一第一分區,其用以儲存被識別為與該計算裝置之一使用者最近存取的檔案具有類似特性之檔案、及(ii)一第二分區,其用以儲存基於該使用者之存取型樣所識別的檔案;一脈絡決定電路,其用以:(i)接收該計算裝置之一或多個感測器所產生之感測器資料、及(ii)基於該感測器資料來決定該計算裝置之一裝置脈絡;一快取電路,其用以:(i)基於該裝置脈絡及包括用於在該計算裝置之一企業環境中快取檔案之規則的一企業快取政策,來決定與該使用者最近存取之另一檔案具有類似特性的一欲快取檔案、(ii)將該決定之檔案儲存至該檔案快取之該第一分區、(iii)基於該計算裝置的一實體位置基於感測器資料正處於一不安全位置之偵測,來決定一要從該檔案快取刪除之檔案;及(iv)隨時間動態調整該第一分區或該第二分區中之一或多者的大小,以降低該計算裝置上的一快取內容量;以及一使用者介面電路,其用以基於與該計算裝置的使用者互動,而置換該企業快取政策之一或多個規則。
- 如請求項1之計算裝置,其中接收該感測器資料包含接收該計算裝置之一或多個硬體感測器所產生的感測器 資料。
- 如請求項1之計算裝置,其中接收該感測器資料包含從一或多個軟體應用程式來接收資料。
- 如請求項1之計算裝置,其中決定該欲快取檔案包含基於該裝置脈絡與該使用者所定義之一快取政策來決定該欲快取檔案;以及其中該快取政策包括針對快取檔案之使用者定義規則。
- 如請求項1之計算裝置,更包含一檔案同步電路來從一雲端伺服器擷取該欲快取檔案。
- 如請求項5之計算裝置,其中該檔案同步電路進一步響應於該檔案已被修改之一決定而將該快取檔案發送至該雲端伺服器。
- 如請求項1之計算裝置,其中該快取電路係用來基於該裝置脈絡而決定一要從該檔案快取刪除之檔案。
- 如請求項7之計算裝置,其中決定該要從該快取檔案刪除之檔案包含基於該使用者之存取型樣來決定一要從該第二分區刪除之檔案。
- 如請求項7之計算裝置,其中決定該要從該快取檔案刪除之檔案包含決定一要從該第一分區刪除之檔案。
- 如請求項1之計算裝置,其中決定該欲快取檔案包含識別有關於該使用者之一虛擬月曆上所指出的一即將來臨事件之檔案。
- 如請求項1之計算裝置,其中該特性包括一檔案名稱、 一檔案類型、一檔案大小、一檔案時戳、或該檔案中之一關鍵字的至少其中之一。
- 如請求項1之計算裝置,其中決定一要從該檔案快取刪除之檔案係基於該計算裝置的一地理位置基於感測器資料正處於一不安全位置之偵測。
- 一種包含多個指令儲存其上之一或多個非暫態機器可讀儲存媒體,該等指令響應於一計算裝置之執行而致使該計算裝置用以:接收該計算裝置之一或多個感測器所產生之感測器資料;基於該感測器資料來決定該計算裝置之一裝置脈絡;基於該裝置脈絡及包括用於在該計算裝置之一企業環境中快取檔案之規則的一企業快取政策,來決定與該計算裝置之一使用者最近存取的另一檔案具有類似特性之一欲快取檔案;將該決定之檔案儲存至該計算裝置之一檔案快取的一第一分區,其中該檔案快取包括該第一分區,其用以儲存被識別為與該使用者最近存取的檔案具有類似特性之檔案,及一第二分區,其用以儲存基於該使用者之存取型樣所識別的檔案;基於該計算裝置的一實體位置基於該感測器資料正處於一不安全位置之偵測,來決定一要從該檔案快取刪除之檔案; 隨時間動態調整該第一分區或該第二分區中之一或多者的大小,以降低該計算裝置上的一快取內容量;以及基於與該計算裝置的使用者互動,而置換該企業快取政策之一或多個規則。
- 如請求項13之一或多個非暫態機器可讀儲存媒體,其中接收該感測器資料包含接收該計算裝置之一或多個硬體感測器所產生的感測器資料。
- 如請求項13之一或多個非暫態機器可讀儲存媒體,其中接收該感測器資料包含從一或多個軟體應用程式來接收資料。
- 如請求項13之一或多個非暫態機器可讀儲存媒體,其中決定該欲快取檔案包含基於該裝置脈絡與該使用者所定義之一快取政策來決定該欲快取檔案,其中該快取政策包括針對快取檔案之使用者定義規則。
- 如請求項13之一或多個非暫態機器可讀儲存媒體,其中該等多個指令進一步致使該計算裝置用以:從一雲端伺服器擷取該欲快取檔案;以及響應於該檔案已被修改之一決定,將該快取檔案發送至該雲端伺服器。
- 如請求項13之一或多個非暫態機器可讀儲存媒體,其中該等多個指令進一步致使該計算裝置基於該裝置脈絡來決定一要從該檔案快取刪除之檔案。
- 如請求項18之一或多個非暫態機器可讀儲存媒體,其中 決定該要從該快取檔案刪除之檔案包含基於該使用者之存取型樣來決定一要從該第二分區刪除之檔案。
- 如請求項18之一或多個非暫態機器可讀儲存媒體,其中決定該要從該快取檔案刪除之檔案包含決定一要從該第一分區刪除之檔案。
- 如請求項13之一或多個非暫態機器可讀儲存媒體,其中決定該欲快取檔案包含識別有關於該使用者之一虛擬月曆上所指出的一即將來臨事件之檔案。
- 一種用於由一計算裝置預測性檔案快取之方法,該方法包含:由該計算裝置接收該計算裝置之一或多個感測器所產生之感測器資料;由該計算裝置基於該感測器資料來決定該計算裝置之一裝置脈絡;由該計算裝置基於該裝置脈絡及包括用於在該計算裝置之一企業環境中快取檔案之規則的一企業快取政策,來決定與該計算裝置之一使用者最近存取的另一檔案具有類似特性之一欲快取檔案;由該計算裝置將該決定之檔案儲存至該計算裝置之一檔案快取的一第一分區,其中該檔案快取包括儲存被識別為與該使用者最近存取的檔案具有類似特性之檔案的該第一分區,及一用以儲存基於該使用者之存取型樣而被識別之檔案的第二分區;由該計算裝置基於該計算裝置的一實體位置基於 該感測器資料正處於一不安全位置之偵測,來決定一要從該檔案快取刪除之檔案;隨時間動態調整該第一分區或該第二分區中之一或多者的大小,以降低該計算裝置上的一快取內容量;以及基於與該計算裝置的使用者互動,而置換該企業快取政策之一或多個規則。
- 如請求項22之方法,更包含由該計算裝置基於該使用者之存取型樣與該裝置脈絡來決定一要從該第二分區刪除之檔案。
- 如請求項22之方法,其中決定該欲快取檔案包含識別有關於該使用者之一虛擬月曆上所指出的一即將來臨事件之檔案。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/750,618 | 2015-06-25 | ||
US14/750,618 US10725922B2 (en) | 2015-06-25 | 2015-06-25 | Technologies for predictive file caching and synchronization |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201712565A TW201712565A (zh) | 2017-04-01 |
TWI709862B true TWI709862B (zh) | 2020-11-11 |
Family
ID=57586117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105112834A TWI709862B (zh) | 2015-06-25 | 2016-04-25 | 用於預測性檔案快取及同步之技術 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10725922B2 (zh) |
EP (1) | EP3314480A4 (zh) |
CN (1) | CN107667352A (zh) |
TW (1) | TWI709862B (zh) |
WO (1) | WO2016209490A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10725922B2 (en) | 2015-06-25 | 2020-07-28 | Intel Corporation | Technologies for predictive file caching and synchronization |
US10225741B2 (en) * | 2016-12-12 | 2019-03-05 | International Business Machines Corporation | Security enabled predictive mobile data caching |
US11381657B2 (en) | 2019-04-05 | 2022-07-05 | Citrix Systems, Inc. | Enhanced file sharing systems and methods |
US11520908B2 (en) * | 2019-04-17 | 2022-12-06 | Lookout Inc. | Self-management of devices using personal mobile device management |
KR20210042753A (ko) * | 2019-10-10 | 2021-04-20 | 삼성전자주식회사 | 엣지 컴퓨팅 서비스를 위한 방법 및 장치 |
CN113760851B (zh) * | 2020-06-03 | 2024-02-27 | 浙江宇视科技有限公司 | 文件处理方法、装置、设备及介质 |
CN112527749B (zh) * | 2020-12-11 | 2023-07-18 | 平安科技(深圳)有限公司 | 缓存策略确定方法、装置、计算机设备及可读存储介质 |
CN113268201A (zh) | 2021-05-13 | 2021-08-17 | 三星(中国)半导体有限公司 | 基于文件属性的缓存管理方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7225211B1 (en) * | 2003-12-31 | 2007-05-29 | Veritas Operating Corporation | Multi-class storage mechanism |
US20070260476A1 (en) * | 2006-05-05 | 2007-11-08 | Lockheed Martin Corporation | System and method for immutably cataloging electronic assets in a large-scale computer system |
US20130232121A1 (en) * | 2012-03-01 | 2013-09-05 | Filetrek Inc. | Method and system for remote storage of data |
US20140095943A1 (en) * | 2012-09-28 | 2014-04-03 | Tobias M. Kohlenberg | Predictive precaching of data based on context |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5305389A (en) | 1991-08-30 | 1994-04-19 | Digital Equipment Corporation | Predictive cache system |
WO2005043325A2 (en) * | 2003-10-30 | 2005-05-12 | Thomas Lambers | System for distributing and vending data |
US7430638B2 (en) * | 2004-06-14 | 2008-09-30 | Mossman Holdings Llc | Adaptive input / output compressed system and data cache and system using same |
US20100162126A1 (en) | 2008-12-23 | 2010-06-24 | Palm, Inc. | Predictive cache techniques |
US8321521B1 (en) * | 2011-06-24 | 2012-11-27 | Limelight Networks, Inc. | Write-cost optimization of CDN storage architecture |
US8855189B1 (en) * | 2010-04-12 | 2014-10-07 | UV Networks, Inc. | Multi-stream transcoding system with cache memory management |
US10007523B2 (en) | 2011-05-02 | 2018-06-26 | International Business Machines Corporation | Predicting cache misses using data access behavior and instruction address |
US8626791B1 (en) | 2011-06-14 | 2014-01-07 | Google Inc. | Predictive model caching |
US10165007B2 (en) | 2011-09-15 | 2018-12-25 | Microsoft Technology Licensing, Llc | Securing data usage in computing devices |
US9182342B2 (en) | 2011-09-23 | 2015-11-10 | Motion Controls, Llc | Apparatus, system and method for using an LED to identify a presence of a material in a gas and/or a fluid and/or determine properties of the material |
WO2013075341A1 (zh) * | 2011-11-26 | 2013-05-30 | 华为技术有限公司 | 缓存文件替换方法、装置及*** |
US9690869B2 (en) | 2012-12-27 | 2017-06-27 | Dropbox, Inc. | Systems and methods for predictive caching of digital content |
US20140188768A1 (en) | 2012-12-28 | 2014-07-03 | General Electric Company | System and Method For Creating Customized Model Ensembles On Demand |
US20150127607A1 (en) * | 2013-01-10 | 2015-05-07 | Unicom Systems, Inc. | Distributed data system with document management and access control |
US10757214B2 (en) | 2013-12-20 | 2020-08-25 | Intel Corporation | Crowd sourced online application cache management |
US10725922B2 (en) | 2015-06-25 | 2020-07-28 | Intel Corporation | Technologies for predictive file caching and synchronization |
-
2015
- 2015-06-25 US US14/750,618 patent/US10725922B2/en active Active
-
2016
- 2016-04-25 TW TW105112834A patent/TWI709862B/zh not_active IP Right Cessation
- 2016-05-25 WO PCT/US2016/034055 patent/WO2016209490A1/en unknown
- 2016-05-25 EP EP16814949.0A patent/EP3314480A4/en not_active Ceased
- 2016-05-25 CN CN201680030302.0A patent/CN107667352A/zh active Pending
-
2020
- 2020-07-27 US US16/940,206 patent/US11436147B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7225211B1 (en) * | 2003-12-31 | 2007-05-29 | Veritas Operating Corporation | Multi-class storage mechanism |
US20070260476A1 (en) * | 2006-05-05 | 2007-11-08 | Lockheed Martin Corporation | System and method for immutably cataloging electronic assets in a large-scale computer system |
US20130232121A1 (en) * | 2012-03-01 | 2013-09-05 | Filetrek Inc. | Method and system for remote storage of data |
US20140095943A1 (en) * | 2012-09-28 | 2014-04-03 | Tobias M. Kohlenberg | Predictive precaching of data based on context |
Also Published As
Publication number | Publication date |
---|---|
US20160378665A1 (en) | 2016-12-29 |
CN107667352A (zh) | 2018-02-06 |
US20210049103A1 (en) | 2021-02-18 |
WO2016209490A1 (en) | 2016-12-29 |
EP3314480A4 (en) | 2019-01-16 |
US11436147B2 (en) | 2022-09-06 |
TW201712565A (zh) | 2017-04-01 |
US10725922B2 (en) | 2020-07-28 |
EP3314480A1 (en) | 2018-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI709862B (zh) | 用於預測性檔案快取及同步之技術 | |
US9952753B2 (en) | Predictive caching and fetch priority | |
US10762055B2 (en) | Utilizing user devices for backing up and retrieving data in a distributed backup system | |
US11347699B2 (en) | File system cache tiers | |
US11468013B2 (en) | Prioritizing content item synchronization based on sharing | |
US11080143B2 (en) | Systems and processes for data backup and recovery | |
CN108292300B (zh) | 用于管理对电子文档的协同编辑的自动保存的装置和方法 | |
US20140025737A1 (en) | Content suggestion for posting on communication network | |
JP2016529599A (ja) | コンテンツクリップボードの同期 | |
EP2951734B1 (en) | Providing a content preview | |
US20140304384A1 (en) | Uploading large content items | |
US20140337278A1 (en) | Managing conflicted copies | |
JP2020528614A (ja) | 分散ストレージ環境のための認知ファイルおよびオブジェクト管理のための方法、コンピュータ・プログラムおよびシステム | |
WO2018111696A1 (en) | Partial storage of large files in distinct storage systems | |
US11989159B2 (en) | Hybrid snapshot of a global namespace |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |