TW201546627A - 輸入資料之條件保存 - Google Patents

輸入資料之條件保存 Download PDF

Info

Publication number
TW201546627A
TW201546627A TW104106539A TW104106539A TW201546627A TW 201546627 A TW201546627 A TW 201546627A TW 104106539 A TW104106539 A TW 104106539A TW 104106539 A TW104106539 A TW 104106539A TW 201546627 A TW201546627 A TW 201546627A
Authority
TW
Taiwan
Prior art keywords
service
input data
request
file
cloud
Prior art date
Application number
TW104106539A
Other languages
English (en)
Inventor
Christopher Caliz
Brian Holley
Greg Akselrod
Ryan James
Yan Zhen
Gareth A Jones
Danny Amirault
Original Assignee
Microsoft Technology Licensing Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing Llc filed Critical Microsoft Technology Licensing Llc
Publication of TW201546627A publication Critical patent/TW201546627A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

此文件係關於保留輸入資料。一個實例包括取得讓服務在輸入資料上執行處理之請求,以產生輸入資料的輸出表示。此實例亦包括將準則應用到請求,並回應於確定符合準則而保留輸入資料。

Description

輸入資料之條件保存 【相關申請案】
本申請案係主張2014年4月16日申請之臨時申請案第61/980,443號之優先權的新型申請,該臨時申請案以引用之方式全文併入。
本發明係關於輸入資料之條件保存。
一些服務代表請求實體(如使用者或計算裝置)執行資源相對密集處理。舉例而言,圖形表示、加密、及訊號處理係為非常不同類型的資源密集處理,而可由服務執行。通常,請求實體可提交一或更多個輸入至給定服務,並從服務接收一或更多個輸出。舉例而言,客戶端裝置可提交請求到網路服務,並隨後從網路服務接收回應。作為另一實例,應用程式可請求本地端服務,以在給定計算裝置上執行某些功能。在大多數情況下,該服務將成功完成,並提供預期回應至請求實體。然而,可能存在服務無法提供預期結果至請求實體的情況。
本發明內容係提供以下面【實施方式】中進一步描述之簡化形式介紹概念之選擇。本發明內容並不意欲識別所主張之標的物之關鍵特徵或必要特徵,亦不意欲用於限制所主張之標的物之範圍。
該描述一般關於輸入資料之條件保存。一個實例包括可由計算裝置執行之方法或技術。該方法或技術可包括取得讓服務在輸入資料上執行處理之請求,以產生輸入資料的輸出表示。方法或技術亦可包括將準則應用至請求。若符合準則,則方法或技術可保留輸入資料。
另一實例包括雲計算系統,包括一或更多個硬體處理單元與一或更多個電腦可讀取儲存裝置。電腦可讀取儲存裝置可儲存電腦可執行指令,當由一或更多個硬體處理單元執行時,電腦可執行指令可導致雲計算系統在網路上接收服務請求。服務請求可包括輸入資料。電腦可執行指令亦可導致雲計算系統確定服務請求指示輸入資料不應由雲服務持續。電腦可執行指令亦可導致雲計算系統藉由回應於偵測失效而持續輸入資料,以覆蓋服務請求。
另一實例包括可由計算裝置執行之方法或技術。該方法或技術可包括具有輸入資料取得服務請求,並藉由評估服務請求之輸出將準則應用至服務請求。方法或技術亦可包括回應於偵測服務請求之輸出滿足準則而保留服務請求之輸入資料。
以上所列之實例意欲提供快速參考以輔助讀者,並且不意欲限定本文所述之概念之範圍。
100‧‧‧方法
102‧‧‧方塊
104‧‧‧方塊
106‧‧‧方塊
108‧‧‧方塊
110‧‧‧方塊
112‧‧‧方塊
114‧‧‧方塊
200‧‧‧環境
210‧‧‧雲計算系統
212‧‧‧處理資源
214‧‧‧記憶體/儲存資源
216‧‧‧服務供應商模組
218‧‧‧任務實現模組
220‧‧‧網路
230‧‧‧掃描器客戶端裝置
232‧‧‧處理資源
234‧‧‧記憶體/儲存資源
236‧‧‧服務請求模組
240‧‧‧平板客戶端裝置
242‧‧‧處理資源
244‧‧‧記憶體/儲存資源
246‧‧‧服務請求模組
250‧‧‧膝上型客戶端裝置
252‧‧‧處理資源
254‧‧‧記憶體/儲存資源
256‧‧‧服務請求模組
300‧‧‧數位筆記本
302‧‧‧標籤
304‧‧‧頁面
306‧‧‧背景內容
308‧‧‧位置
500‧‧‧附件
700‧‧‧桌面介面
702‧‧‧捷徑
1000‧‧‧網路瀏覽器
1002‧‧‧內容
實施方式中係參照隨附圖式描述。在圖式中,元件符號的最左邊數字係識別元件符合第一次出現之圖式。在說明書與圖式中之不同實例中之相同元件符號之使用係指示相似或相同項目。
第1圖圖示與本發明概念的一些實現一致的示例性方法或技術。
第2圖圖示與本發明概念的一些實現一致的示例性環境。
第3-12圖圖示與本發明概念的一些實現一致的示例性圖形使用者介面。
概論
在許多不同的情況下,其中請求實體請求來自服務的輸出,可能有時候請求實體無法接收預期輸出。舉例而言,服務可能無法正確地處理輸入資料,或服務可能由於策略原因決定不提供預期回應。若請求實體還沒有採取措施以保持輸入資料,則可能丟失輸入資料。一些實現可以藉由在符合特定準則時條件保存輸入資料,以減輕丟失輸入資料的影響。舉例而言,一些實施可藉由預設而在已完成處理任務之後刪除輸入資料,但藉由在服務偵測失效時保留請求實體的輸入資料而覆蓋此預設行為。
在一些情況下,服務可應用各種失效準則,以確定是否要保留輸入資料。此文件之目的,用語「失效準則」包 括指示請求實體將不會收到預期輸出的任何準則。在一些情況下,失效準則可指示所請求的處理未能合適地完成,如由於走樣/畸形的輸入資料、處理任務之崩潰/錯誤等。其他失效準則可由服務而關於決策,如因為儲存量或處理時間限制超出,服務可決定不提供請求實體所請求的輸出,而不論處理任務是否成功完成。
在一些實現中,服務可執行失效準則的早期偵測,如藉由評估輸入資料,並確定應該開始所請求的處理任務之前保留輸入資料。舉例而言,服務可執行預處理例式,而可偵測輸入資料畸形,並保留請求實體的畸形輸入資料,而不需開啟處理任務之執行。通常,輸入資料可經由許多不同機制而保留,許多不同機制包括從請求實體遠端持續輸入資料,或在檔案(如文件)中嵌入輸入資料,以提供給請求實體。
在一些情況下,取決於正在執行的特定處理任務與所考慮的失效類型,可能難以進行失效之早期偵測。舉例而言,在一些情況下,輸入資料可能不具有任何明顯瑕疵,而服務將繼續開啟所請求的處理任務。當處理任務正在執行時,服務可監視處理任務,以偵測是否符合某些失效準則。舉例而言,考慮設定處理任務可採取的時間量之時間限制(如一分鐘)的服務。請求實體可提供用於處理之輸入檔案給服務。處理任務可能要採取超過一分鐘時間限制的更長時間完成,而服務可在產生輸出之前決定殺掉任務。在這些情況下,因為請求實體將不會接收預期輸出,保留請求實體的輸入檔 案也可以是有用的(如請求實體可接收沒有任何輸出、錯誤訊息、部分完成輸出等)。
在一些情況下,處理任務可進行到結束,但服務仍可確定已發生失效。舉例而言,服務可將特定失效準則應用至處理任務之輸出並認定輸出係為失效情況。考慮處理任務產生之輸出實質上大於輸入資料之情況,且失效準則包括對輸出大小之政策限制,如輸出可具有不超過100百萬位元組的整體記憶體覆蓋區。假設服務接收5千位元組之輸入檔案,並成功地將輸入檔案處理為500百萬位元組的輸出檔案。在這些情況下,輸出檔案已產生正確並可用於提供給請求實體。然而,服務可藉由不提供輸出檔案給請求實體以執行大小限制。為了防止請求實體丟失輸入資料,服務可回應於確定已符合大小限制失效準則而保留輸入資料。
條件保存方法
下面的討論呈現可條件保留輸入資料之功能之概論。功能可藉由或代表各種類型的服務而執行。取決於具體實現,服務可實現為雲服務、本地端應用程式、函式庫例式、作業系統例式、及/或專用硬體電路。因此,功能可在軟體、硬體、或其組合中實現。
第1圖圖示與本發明概念的一些實現一致的示例性方法100。如以下所述,方法可在許多不同類型的裝置上實現,如藉由一或更多個雲伺服器、藉由客戶端裝置(如膝上型電腦、平板電腦、或智慧型電話)、或其組合。方法100可藉由在如請求實體之相同裝置上本地端執行之服務、藉由從 請求實體遠端執行之服務、或代表本地端或遠端服務而實現。
方法100開始於方塊102,其中從請求實體取得請求。舉例而言,請求可具有輸入資料,如文件、訊號數位樣本、或數位通訊。請求可請求對輸入資料執行處理任務,如文件之呈現、應用至數位樣本之轉換、或數位通訊之加密。在一些情況下,請求可取得輸入資料的不同表示(如將輸入資料呈現為圖像),或在其他情況下,請求可檢索其他資料(如檢索匹配輸入搜尋查詢的文件)。
方法100繼續至方塊104,其中將準則應用至請求。舉例而言,準則可為失效準則,以指示請求實體將不接收處理任務的預期輸出之情況。如以下所述,可在服務開啟處理任務之前,在服務成功完成處理任務並已取得輸出之後,或者處理任務正在進行中評估失效準則。
方法100繼續至確定方塊106,確定方塊106確定是否符合準則。在符合條件的情況下,方法繼續到方塊108與110。
當符合準則時,方塊108可保留請求之輸入資料。舉例而言,回應於確定準則已符合,輸入資料可在儲存中持續。在一些情況下,輸入資料在與請求實體(如雲儲存中之使用者帳戶)相關聯之指定儲存位置持續。
方塊110可提供輸入資料給請求實體。在一些實現中,可自動發送輸入資料給請求實體,以代替預期輸出。舉例而言,可將文件提供給請求實體,而非所請求的呈現圖像,可將訊號樣本提供給請求實體,而非所請求的轉換訊號,及/ 或可將未加密形式之通訊提供給請求實體,而非所請求的加密通訊。在其他情況下,輸入資料不提供給請求實體,直到接收進一步請求。舉例而言,服務可發送訊息給請求實體,以指示發生失效,且輸入資料已儲存而相關聯於使用者帳戶,以供後續存取,如藉由進一步請求。
返回參照確定方塊106,在沒有符合準則的情況下,方法繼續至方塊112與114。
當不符合準則時,方塊112可提供所請求的輸出到請求實體。舉例而言,所展開之文件、所轉換之訊號樣本、或加密數位通訊可提供給請求實體。在一些情況下,預設行為可提供所要求的輸出給請求實體,而並未也提供輸入資料給請求實體。
方塊114可刪除請求的輸入資料。舉例而言,所呈現的文件、所轉換的訊號樣本、及/或加密的數位通訊可藉由服務從儲存中刪除,而使得服務與請求實體不再能夠存取輸入資料。這可能是這種情況,如因為請求實體已接收預期輸出,則通常預期不需要進一步存取輸入資料。
雲場景
可執行方法100之一個具體場景中係為當雲服務執行方法時,同時與遠端客戶端裝置互動。考慮圖示示例性環境200的第2圖,包括經由網路220連接至各種客戶端裝置的雲計算系統210,各種客戶端裝置分別圖示為掃描器客戶端裝置230、平板客戶端裝置240、及膝上型客戶端裝置250。雲計算系統與客戶端裝置可具有各別處理資源212、232、 242、及252,以及記憶體/儲存資源214、234、244、及254,如下面更詳細地討論。
雲計算系統210可包括服務供應商模組216,以提供雲服務功能,如雲儲存、使用者帳戶等。雲計算系統亦可具有任務實現模組218,以執行由各種客戶端裝置請求的特定處理任務,如呈現、加密、訊號處理、文件建立/修改、搜尋等。應注意,在一些情況下,任務實現模組可從雲計算系統210遠端實行,如雲服務作為執行任務的第三方平台與請求任務的客戶端裝置之間的橋樑。在這樣的情況下,處理任務本身可從第三方平台上之雲計算系統執行。
客戶端裝置230、240、及250可具有服務請求模組236、246、及256的對應實例,以與服務供應商模組216互動。舉例而言,服務請求模組可為在獨立客戶端裝置上執行之啟用雲之應用程式的對應本地端實例之一部分,以檢索儲存在雲計算系統210上之各種資料項目。在一些情況下,雲計算系統提供使用者儲存部與雲服務儲存部二者。通常,雲儲存之雲服務儲存部可由雲服務用於與由雲服務處理相關聯的儲存,而使用者儲存部可用於提供雲儲存帳戶給獨立使用者。舉例而言,獨立使用者可能能夠藉由登入使用者帳戶從任何客戶端裝置存取他們的雲儲存,而客戶端裝置上的對應服務請求模組可檢索資料,如來自使用者帳戶的文件。在一些情況下,客戶端裝置可指定特定資料項目進行檢索,而在其他情況下,客戶端裝置與雲服務可利用使用者雲儲存帳戶自動同步本地端客戶端裝置資料。
呈現實例
如上所述,一些實現可執行請求實體的許多不同類型的處理任務。下面的討論提供實現中服務代表使用者執行呈現任務的一些附加細節。舉例而言,呈現任務可呈現提供為輸入資料的各種文件類型,如可移植文件格式(PDF)檔案、postscript(PS)檔案、文字處理檔案(如Microsoft Word®)、投影片展示檔案(如Microsoft PowerPoint®)、標記語言檔案(如可擴展標記語言(XML)、超文本標記語言(HTML))等。文件亦可從他們的原始文件格式呈現為各種圖像格式,如Joint Photographic Expert Group(JPEG)檔案、Tagged Image File Format(TIFF)檔案、bitmaps(BMP)等。
舉例而言,給定使用者可上傳及維護各種文件,並從其任何相關聯客戶端裝置存取。此外,使用者可能能夠提交請求給雲服務以呈現某些文件,然後雲服務可向使用者提供輸出圖像之存取。在一些情況下,雲服務可將輸出圖像檔案儲存在使用者的雲儲存帳戶中,以供後續存取,或可回應於呈現請求,而發送圖像檔案到使用者的客戶端裝置。舉例而言,如以下所述,雲服務可將圖像文件嵌入儲存在雲儲存帳戶中之另一文件。
為了術語之明確,術語「外部文件」係指具有另一文件嵌入其中之文件,而術語「嵌入文件」係指嵌入外部文件之文件。術語「嵌入圖像」係指嵌入外部文件之圖像。術語「輸入文件」係指一類型之輸入資料,如提供給服務以用於處理的文件。
緊接著討論係聚焦於雲場景中之呈現,但請注意,本文亦討論服務可在客戶端裝置上本地端執行。假設雲計算系統210從掃描器客戶端裝置230接收請求,以呈現輸入文件以取得對應圖像檔案,並包括外部文件(如HTML網頁)中所呈現的圖像檔案,以作為嵌入圖像。然後,雲服務可藉由發送具有所呈現的圖像檔案包括其中的外部文件,以提供任何客戶端裝置對外部文件之存取。
在一些情況下,雲服務可預設為在處理呈現請求之後刪除所接收的輸入文件。這可能是預期行為,因為一旦已完成呈現,使用者可能沒有進一步期望使用輸入文件。然而,考慮呈現請求失敗之情況下,例如因為呈現圖像大小超過一些預定約束(如呈現圖像可以不大於50百萬位元組)。在一些實現中,當偵測到失效時,雲服務可保留輸入文件,而非刪除輸入文件。舉例而言,雲服務可將輸入文件儲存在使用者的雲儲存中,或發送輸入文件返回給使用者(如他們的筆記型電腦、平板電腦等)。因為輸入文件已由雲服務自動保留,輸入文件尚未丟失,因此使用者不需要使用掃描器客戶端裝置230,以取得另一合適的輸入文件。
在一些情況下,雲服務亦可將輸入文件嵌入於外部文件中,以作為嵌入文檔,如作為不需要包括在外部文件中之附加資料物件(如圖像)。舉例而言,代替在外部文件中包括呈現圖像檔案,雲服務可在外部文件中包括原始格式的輸入文件。因此,雖然使用者可能不能夠看到所請求的外部文件中呈現的嵌入文件,他們可能能夠至少使用適當的應用程 式以查看嵌入文件。在PDF檔案的情況下,舉例而言,使用者可能能夠點擊嵌入在外部文件中之PDF檔案,並在獨立客戶端裝置上啟動PDF閱讀應用程式的本地端實例。
數位筆記本實例
在一些實現中,每一客戶端裝置230、240、及/或250可運行數位筆記本應用程式,如Microsoft OneNote®、Evernote®等。在這樣的實施中,雲計算系統210可提供數位筆記本雲服務,以在客戶端裝置上執行用於數位筆記本應用程式的本地端實例的各種支持功能。舉例而言,數位筆記本雲服務可提供用於使用者筆記本的雲儲存,執行各種檔案類型的呈現,並且亦可支持各種類型的內容增加(例如如下面所述的網頁剪輯)。亦如下面所述,數位筆記本係為圖像及/或其他文件類型可嵌入外部文件的一個實例,儘管許多其他類型的文件亦可作為外部文件(PDF、PS檔案、文字處理檔案、投影片呈現檔案、標記語言檔案等)。用於下列實例之目的,數位筆記本雲服務可以執行上面所討論的相對於服務供應商模組216的功能,而數位筆記本客戶端應用程式的本地端實例可執行上面所討論的相對於服務請求模組236、246、及/或256的其他功能。
第3圖圖示具有各種標籤302的示例性數位筆記本300。在此情況下,使用者具有在筆記本中打開的「Pets」標籤,而筆記本亦包括標題為「Vehicles」與「Musical Instruments」之標籤。在Pets標籤中為二個頁面304,當前打開的一個標題為「Chewy」,而另一個標題為「Boots」。當前 打開的「Chewy」頁面具有通常描述名為Chewy的遺傳譜系之狗的背景內容306與使用者希望放置呈現圖像內容之位置308。假設筆記本以第3圖中所示之狀態存在於使用者的雲儲存中,且使用者可經由任何客戶端裝置存取。
接著,假設使用者使用掃描器客戶端裝置230掃描他們的狗Chewy的照片。使用者可以這樣做,因為他們希望具有由雲服務呈現他們的狗的照片以及在位置308插入數位筆記本300的圖像。掃描器客戶端裝置可掃描照片,以取得PDF檔案,並發送PDF檔案到雲計算系統210。舉例而言,掃描器客戶端裝置可發送符合與在雲計算系統上運行的數位筆記本雲服務相關聯的API的請求訊息。訊息可指定PDF應呈現並包括在數位筆記本300中。在接收訊息之後,雲計算系統210可嘗試將PDF檔案呈現為圖像格式,如JPEG、BMP、TIFF或使用任務執行模組218的其他圖像檔案格式。
第4圖圖示成功完成呈現且不符合失效準則情況的數位筆記本300。在此情況下,呈現圖像文件由雲計算系統210包括在數位筆記本300之位置308中,且筆記本在使用者的雲儲存更新。然後,使用者可經由他們的任何客戶端裝置存取筆記本檔案。在此情況下,由掃描器客戶端裝置230所建立的PDF檔案可藉由雲計算系統在完成呈現之後刪除。此舉可能與使用者的期望一致,因為他們關心得到正確的圖像檔案到筆記本,並且可能不希望保持由掃描器客戶端裝置建立的PDF檔案。
第5圖圖示沒有成功完成呈現情況的數位筆記本 300。此處將討論雲計算系統210無法成功呈現PDF檔案或由於一或更多個各種原因將請求視為請求失敗。應注意,掃描器客戶端裝置230可能在發送請求到雲服務之後,不持續PDF的任何本地端副本。因此,若雲服務在請求成功時簡單地如完成般刪除PDF檔案,則使用者將需要重新掃描他們的照片,以取得Chewy用於筆記本的另一圖像。然而,在這種情況下,雲服務可將PDF檔案作為附件500嵌入數位筆記本300,如第5圖中所示。因此,即使使用者可能沒有從雲服務接收期望結果(具有呈現圖像的筆記本),使用者仍然可以存取PDF檔案,不需進一步重新建立PDF檔案。在一些情況下,雲服務可發送指示呈現失敗的錯誤訊息給一或更多個使用者的客戶端裝置。此外,雲服務可更新使用者的雲儲存中之筆記本,以包括代替呈現圖像檔案顯示的錯誤訊息。應注意,在此實例中,嵌入PDF檔案係從使用者經由其掃描器客戶端裝置接收,並非為最初由掃描器客戶端裝置請求的輸入資料的圖像格式。
應注意,可能存在使用者希望同時具有呈現圖像與PDF檔案本身包括在數位筆記本300中的情況。在這種情況下,掃描器客戶端裝置230可在請求訊息中指示PDF應呈現到數位筆記本300中並且亦以其原始檔案格式嵌入其中。在呈現成功完成的情況下,數位筆記本300可如第6圖出現具有呈現成功的圖像與嵌入其中的附件500(PDF檔案)。此外,若呈現失敗,則筆記本可如第5圖出現缺失呈現圖像,但包括嵌入PDF檔案。
此外,應注意,數位筆記本300可為各種檔案格式。舉例而言,一些實現可使用特定於筆記本應用程式之特有檔案格式,其中特有檔案格式支持其他操作,如筆記本上之繪圖、筆記本之剪輯部等。其他實現可使用更一般的檔案格式,如藉由維護筆記本為HTML檔案。
拖與放之實現
在先前的實例中,第一客戶端裝置(如掃描器)提交請求到雲服務中,而具有嵌入圖像的文件提供給第二客戶端裝置(如筆記型電腦)。在其他實現中,相同的客戶端裝置可以提供請求到雲服務中,並接收具有嵌入圖像的文件,如下面所述。
第7圖圖示可在客戶端裝置(如筆記型電腦客戶端裝置250)上顯示之示例性桌面介面700。在此具體實例中,桌面介面包括儲存在筆記型電腦客戶端裝置的本地端檔案系統(如硬碟驅動)之PDF檔案的捷徑702。使用者可將捷徑拖到數位筆記本300及位置308上。本地端筆記本應用程式可理解拖與放,以作為指令將請求發送到雲服務中,以呈現PDF檔案為圖像,並將圖像包括在數位筆記本300中。
在呈現成功之情況下,雲服務可更新數位筆記本300,以包括呈現圖像,並發送已更新筆記本返回給筆記型電腦客戶端裝置。在此情況下,桌面介面700可如第8圖出現圖像已成功呈現到數位筆記本300中。雲服務可能已經利用具有呈現圖像在其中的已更新筆記本更新雲儲存,而使得使用者可從其他客戶端裝置(如平板客戶端裝置240)存取已更 新筆記本。在此情況下,應注意,因為已由於成功呈現而符合使用者期望,PDF檔案並未嵌入在已更新筆記本中。
在呈現失敗的情況下,桌面介面700可出現如第9圖。此處,圖像並未呈現到數位筆記本300中。然而,雲服務已將PDF檔案嵌入到筆記本作為附件500,並更新使用者的雲儲存帳戶中之筆記本。因此,當使用者從他們的任何其他客戶端裝置存取已更新筆記本,他們可各別使用任何已安裝的PDF閱讀應用程式打開PDF檔案。換言之,雲服務已認識呈現失敗將導致未符合使用者期望,並主動確定PDF檔案應嵌入到筆記本檔案中。因此,這可視為適度降級使用者體驗,而在一定程度上減輕呈現失敗的影響。
網路剪取實例
在先前的具體實例中,呈現單一PDF檔案,以取得單一圖像。然而,應注意,PDF檔案之前述呈現係為示例性,並可根據所揭示之實現以呈現各種其他檔案類型。舉例而言,第10-12圖圖示可回應於單一請求而呈現多個不同的檔案類型之情況,如下面所討論。
第10圖圖示呈現網路瀏覽器1000之配置的桌面介面700。在此實例中,使用者已導航到稱為「abcdogpics.com」的網站,可主控使用者的狗與其他狗的圖像。此處,使用者可能希望從網站取得內容,並將內容包括在數位筆記本300中。使用者可使用剪取工具或其他內容識別工具,以選擇內容1002。應注意,環繞內容1002的粗體邊框傳達這是所選擇的內容。
在此實例中,內容1002包括二種不同類型的內容-HTML內容顯示為文本「Chewy’s Tree」與圖像。在此實例中,假設網站以BMP格式主控圖像。因此,使用者已剪取二個不同檔案類型(HTML與BMP)之內容,他們希望在他們的筆記本中呈現為一或更多個圖像。
內容1002之選擇可藉由本地端筆記本應用程式解釋為請求,以呈現內容1002,並將呈現內容放入數位筆記本300中。回應於內容之剪取,本地端筆記本應用程式可發送請求到雲服務,以執行呈現。在一些情況下,本地端筆記本應用程式可從網頁提取所選擇的內容,並發送內容到雲服務。在其他情況下,本地端筆記本應用程式可連同使用者希望呈現的網頁中之特定內容的一些識別發送網頁的統一資源定位符到雲服務(如請求可識別所選擇的內容的一或更多個HTML的屬性)。
在雲服務成功呈現由使用者識別的HTML與BMP內容之情況下,數位筆記本300可如第11圖出現。此處,剪取內容已成功呈現到數位筆記本300,也許是一或更多個JPG檔案。在此情況下,雲服務並未持續網頁或將網頁包括於筆記本中。
第12圖圖示呈現並未在雲服務中合適地完成之情況。在此情況下,沒有JPG圖像出現於位置308。但應注意,HTML檔案1200已嵌入至數位筆記本300中。因此,即使使用者不具有在他們的筆記本檔案中如預期呈現的JPG圖像,他們至少具有嵌入於筆記本主控內容,以供後續使用。此舉 可用於不同的情況下,例如若網域http://abcdogpics.com變得不可用,使用者沒有連接到網路等。應注意,在一些情況下,嵌入內容可包括整個主控網頁(包括嵌入BMP檔案),或僅由使用者所選擇的網頁的一部分(如BMP檔案與對應於文本「Chewy’s Tree」的HTML內容的部分)。
本地端實現
上述技術亦可在獨立計算裝置上以本地端執行。通常,給定計算裝置可具有服務與使用服務以用於特定處理的請求應用程式。舉例而言,服務可為作業系統例式、藉由其他應用程式及/或專用硬體執行的加密或壓縮功能、藉由數學或統計封包執行的數學例式等。
繼續於數位筆記本電腦與呈現上述之實例,考慮平板電腦客戶端裝置240及/或筆記型電腦客戶端裝置250具有都能夠呈現檔案的本地端呈現服務之情況。客戶端裝置仍然可使用雲服務以儲存檔案,如具有由客戶端裝置呈現的嵌入圖像的筆記本。然而,而非由雲服務執行呈現,而是由本地端呈現服務來做。
現在,考慮上述掃描器客戶端裝置230發送PDF檔案到雲服務以供呈現所導引的掃描器情況。可替換地,掃描器客戶端裝置可發送PDF檔案到平板客戶端裝置240及/或筆記型電腦客戶端裝置250以供呈現其上。本地端筆記本應用程式可評估輸入PDF、由本地端呈現服務使用的計算資源、及/或以類似於上述雲實現之方式的輸出圖像之特徵。
其他處理類型
在上述呈現實例中,各種檔案格式之文件係呈現為雲服務或本地端服務的不同檔案格式的圖像。通常,服務可執行給定請求實體(如使用者、應用程式、或裝置)的廣範圍處理任務。下面討論可實現上述技術的服務的一些不同類型。
應注意,給定呈現圖像可視為輸入檔案之代表,而處理任務可視為輸入資料從一個電子格式(如PDF檔案)到另一電子格式(如JPG檔案)之轉換。某些服務可執行其他類型的處理任務,亦將輸入資料轉換為輸入資料的不同代表。舉例而言,若輸入資料係為波形的時域樣本,則服務可使用轉移操作(如快速傅里葉轉換(FFT))將時域樣本轉換為頻域代表。如另一實例,加密服務可將未加密輸入資料轉換為輸入資料的加密代表。
將輸入資料轉換為輸入資料的不同代表的服務的另一實例係為將文件轉換為另一文件的服務。舉例而言,文件轉換服務可將第一文字處理格式(如Microsoft Word®)之文字處理文件轉換為第二文字處理格式(如OpenOffice®),或是不同的文件類型(如電子表格、標記語言文件、ASCII文本等)。當識別如那些本文所述之失效準則(如文件轉換服務不能合適地完成轉換,輸入或輸出文件太大,處理耗時太長或使用過多計算資源等)時,文件轉換服務可保留第一格式的輸入文件。
其他服務可能產生也許不被認為是輸入資料的代表的輸出。舉例而言,輸入資料可為具有各種搜尋術語的搜尋 查詢,而輸出可為匹配搜尋查詢之文件的列表。如另一實例,輸入資料可為數學值,而處理任務可在數學值與其他數學值之上執行各種操作,如增加輸入資料到常數中。
搜尋查詢的一個具體實例可為使用者輸入國際標準圖書編號(ISBN)到本地端應用程式(如上述之筆記本應用程式)之情況。本地端應用程式可提供ISBN到雲服務,其可以反過來試圖提供使用者一部分或所有書本身之數位副本,如書的PDF副本。在一些情況下,可能無法取得書之PDF。在這些情況下,雲服務可藉由提供書的購買網頁的URL給使用者,以回應使用者。在進一步實現中,雲服務可將書的購買服務網頁呈現到另一文件(如筆記本)中。在這兩種情況下,雲服務亦可在文件中包括書的ISBN,而使得使用者不需要稍後再次查找ISBN。
在其他實現中,本地端應用程式可執行上述之處理。舉例而言,回應於輸入ISBN之使用者,本地端應用程式可試圖下載書的數位副本。在無法取得書的數位副本的情況下,本地端應用程式可存取書的購買網頁的URL,以持續客戶端裝置上之網頁。在本地端應用程式建立/修改文件之情況下,本地端應用程式可請求網頁由本地端或遠端呈現服務呈現,並將呈現網頁插入至文件中。在呈現失敗的情況下,本地端應用程式可將網頁嵌入文件作為如先前所討論的物件,及/或可將ISBN嵌入文件中,而使得使用者不需要再次檢索的ISBN。
請求類型
在一些實現中,提供到服務之請求可包括指定請求應如何處理的各種欄位。在一些情況下,請求可明確地指示輸入資料是否應在由服務產生的輸出中提供。如上所述,當滿足某些失效條件時,服務可覆蓋請求。
舉例而言,在上述之具體實施例中,掃描器客戶端裝置230可發送請求到雲計算系統210,以指定應如何將PDF檔案包括於筆記本中。一些請求可包括一或更多個參數,以指示PDF是否應如第4圖所示呈現於數位筆記本300中,如第5圖所示嵌入筆記本,或如第6圖所示嵌入並呈現。如另一實例,將時域訊號轉換為頻域代表之請求可指示輸入訊號樣本是否應包括在具有訊號頻域代表的輸出中。
本文所揭示之技術可在請求指示服務不應該包括處理任務之輸出中之輸入資料的情況下執行。在這些情況下,當服務將輸入資料包括在輸出中時,服務可視為有效覆蓋請求參數。因為請求參數係依據服務請求將成功完成的假設,儘管這可能相反於表示於請求中之參數,輸出結果是可接受的。藉由覆蓋請求參數以回應所偵測的特定失效準則,可保留輸入資料,以供後續使用,而非丟失此資料。舉例而言,上述之呈現實例子,利用呈現請求而輸入之PDF、HTML、及/或BMP檔案保存在筆記本中。在如上所述之訊號轉換實例中,當由於一些原因而轉換失敗時,輸入訊號樣本可以用一些方式持續,而保持可由請求實體存取,如藉由在轉換未完成時在指定位置儲存樣本。訊號轉換服務可以這樣做,即使當請求實體請求放棄樣本時。
應注意,在一些情況下,請求實體可在作出請求之後預設刪除輸入資料。在上述之雲呈現實例中,雲計算系統210可在是否明顯成功完成呈現之前,或甚至實際上在呈現開啟之前,確認來自掃描器客戶端裝置230的請求。在雲服務將成功呈現PDF檔案之假設下,從雲裝置接收此確認可提示掃描器客戶端裝置,以刪除PDF檔案的本地端副本。在一些情況下,掃描器客戶端裝置不會意識到失敗的呈現。同樣地,在上述之訊號轉換實例中,當轉換失敗時,服務可預設刪除輸入樣本,而非將輸入樣本儲存在指定位置。
一些請求亦可指定如何佈置輸出資料。舉例而言,在呈現實例中,請求可指定輸出圖像應該包括在數位筆記本300中的特定位置。此外,請求可指定將呈現圖像包括在哪裡,如在現存標籤或頁面中之特定位置、藉由建立新標籤或頁面、在新筆記本中等。如另一實例,服務可為壓縮服務,以減少輸入圖像之大小。請求可指定要將輸出網頁中之圖像的壓縮版本包括在哪裡。
亦如上所述,請求可為代碼之形式,如標記語言格式,如HTML。在一些情況下,請求之代碼可用於建構輸出。舉例而言,在上述之呈現實例中,請求可為指向特定PDF檔案之網頁之HTML代表,例如:
上述之示例性請求包括請求服務執行呈現操作之參數,如「img data-render-src」。此參數係指向「myAppFileBlockName」,其為間接參照至包括在請求中之PDF之檔案名稱,PDF之檔案名稱係為「ChewyNextToTreePDF」。指定「data-attachment」之行係為服務之明確請求,以將PDF檔案嵌入至筆記本之頁面中。沒有此行可能指示PDF檔案不應該嵌入至筆記本頁面。如上所 述,在呈現操作失敗之情況下,服務可覆蓋請求,以省略此行,並將PDF檔案嵌入至筆記本頁面。
失效準則
如上所述,服務可在開啟相關聯處理任務之前確定已符合一些失效準則。其他失效準則可能在處理期間由於服務變得明顯,並甚至可能直到處理完成之後亦不明顯。因此,在一些情況下,可能立即確定服務請求將失敗,並在其他情況下,在服務將確認符合失效準則之前,將執行或甚至完成一些處理。
在一些情況下,在開始處理任務之前,可識別失效準則。舉例而言,在可藉由評估輸入資料以偵測失效之情況下,可執行失效之早期識別。舉例而言,如上所述之展示實現中,一些檔案類型(如MIME類型)可能無法支持呈現目的。因此,若輸入資料不為支持MIME類型(如沒有可用的呈現器),則可滿足失效準則。如另一實例,一個失效準則可為輸入資料的二進制大小可能不超過預定閥值(如15百萬位元組)。如另一實例,畸形輸入(如具有缺失的HTML標籤)亦可視為失效準則。在服務執行數學運算的情況下,失效準則可指定不由服務接受的某些資料類型(如無符號整數),並且亦可指定在輸出之上及/或下限值(如32位有符號整數的限制)。
可在開始處理任務之前識別的另一類型的失效準則係為失敗認證。舉例而言,假設數位證書、使用者名稱及密碼、或其他認證機制係用於認證輸入資料。若認證機制失敗, 則輸入資料可如本文所述保存,而不開啟處理任務。
在其他情況下,可偵測失效,同時進行處理。舉例而言,關於資源利用之失效準則可用於在處理期間識別失效。在一些情況下,失效準則可指定用於處理的某些電腦資源之限制,如用於處理給定請求的記憶體數量、處理器時間/週期量之限制、網路之資料傳輸量之限制等。若給定請求之處理超過這樣的限制,則請求可在完成之前失敗。舉例而言,在一些情況下,當符合準則時,可殺掉處理任務。在一些情況下,這樣的資源利用準則係隨著服務變化之負載而變動,而在其他情況下可為靜態。
處理期間偵測失效之另一實例係在處理檔案包括對遠端檔案之參照而參照無法解析或存取時發生。舉例而言,網路失效可防止遠端檔案被存取,或參照可識別使用者的本地端網路上之LAN儲存位址,由於特定LAN許可而無法存取服務。這些遠端檔案可能是使用者希望呈現至筆記本之檔案、使用者希望加密之檔案,使用者希望壓縮之檔案等。
在一些情況下,失效可能直到處理完成並產生輸出之後都不明顯。因此,一些失效準則係關於輸出特性,而服務可評估輸出,以確定是否符合這些準則。舉例而言,輸出資料的整體大小可為一個失效準則,如呈現圖像、轉換訊號、壓縮檔案等的總大小不可超過固定大小(如75百萬位元組)。在一些情況下,輸出可具有多個部件(如筆記本檔案之頁面、電子表格檔案之工作表等),而每一部件的大小可具有指定限制(如記憶體佔用不超過5百萬位元組)。其他實現可指定部 件數量限制,如呈現不超過30頁、電子表格中不超過10工作表等。
在一些情況下,輸出本身可能並非單獨導致失效。然而,輸出可為具有某些相關聯準則的資料集的一部分,並將輸出增加至該集可能導致資料集觸發準則。換言之,輸出本身不符合失效之準則,但在與該集中之其他項目聚集時則發生失效。舉例而言,使用者可具有雲儲存上之儲存配額(以位元組、百萬位元組、千百萬位元組等表示),而當儲存在使用者的雲儲存中的輸出導致使用者的總檔案儲存超過他們的儲存配額時,可符合失效準則。如另一實例,可以具有使用者可儲存在雲儲存中的文件總數量的固定限制,而不論各別檔案大小,如有100個文件,而輸出可能為第101個文件。
應注意,亦可能具有儲存在使用者的雲儲存中的輸入資料將導致超過他們的儲存配額的情況。一些實現可在失效的情況下覆蓋儲存配額,以至少暫時防止資料丟失,並提供使用者角度的相對軟失效。其他實現可在這些情況下刪除輸入資料。
其他失效準則可能關於處理實際崩潰或報告某種錯誤的情況。舉例而言,處理任務可報告輸入資料畸形,而呈現已中止。如另一實例,處理任務本身可具有在處理輸入資料時違反的一些約束(如虛擬記憶體限制)。
此外,應注意,使用者可能仍然能夠在一些失效情況下存取部分結果。舉例而言,假設服務規定呈現文件上30頁的限制,而呈現任務成功完成,並輸出50頁的呈現圖像。 因此,即使服務可提供整個呈現的50頁文件給使用者,而由於策略的原因只提供30頁給使用者。在這些情況下,服務可採取步驟以保留輸入資料,如藉由更新使用者的雲儲存中之筆記本,以包括50個呈現頁面之外的30以及PDF文件本身。在因為呈現任務在僅呈現一些頁面之後崩潰,而使用者並未接收所有50個呈現頁面的情況下,類似步驟亦可藉由服務執行。
如另一實例,考慮將資料庫檔案轉換為電子表格的服務。舉例而言,假設服務規定輸出電子表格中之10個工作表的限制,而電子表格建立任務成功完成,並輸出具有15個工作表的電子表格。因此,即使服務可提供整個15個表的電子表格給使用者,但由於策略的原因的提供只有10個工作表的電子表格給使用者。在這些情況下,服務可採取步驟以保存輸入資料,如將資料庫檔案嵌入至部分電子表格中,並將部分電子表格儲存在使用者的雲儲存中。在因為電子表格建立任務在僅建立一些工作表之後崩潰,而使用者並未接收所有15個工作表的情況下,類似步驟亦可藉由服務執行。
應注意,在一些情況下,在處理開始時,輸出特性可能不明顯。舉例而言,在呈現PDF的情況下,可能無法或有效地分析PDF,以確定呈現PDF將有多大、將包含多少頁面、各別頁面將有多大等。如另一實例,可能無法或有效地評估資料庫檔案,以確定將在輸出電子表格中建立多少不同的工作表。在這些情況下,允許處理任務完成而可評估輸出可能有用或必要。
更多實例
本文所述之各種實施例可包括藉由至少一個計算裝置執行的第一方法實例。第一方法實例可包括取得服務在輸入資料上執行處理以產生輸入資料之輸出代表的請求,對請求應用準則,以及回應於確定符合準則,而保存輸入資料。在第二方法實例中,第一方法實例的輸入資料可包括用於服務之文件以呈現而取得輸出代表。在第三方法實例中,對第一或第二方法實例中之請求應用準則可包括評估輸入資料。在第四方法實例中,對第一、第二、或第三方法實例之請求應用準則可包括評估用於執行服務的電腦資源。在第五方法實例中,對第一、第二、第三、或第四方法實例之請求應用準則可包括評估輸入資料之輸出代表。在第六方法實例中,第一至第五方法實例中之任意者之請求係代表具有相關聯雲儲存之使用者,而保留輸入資料包括將輸入資料儲存在使用者的相關聯雲儲存中。在一些進一步的方法實例中,第一至第五方法實例中之一些或所有者係藉由從請求實體(如應用程式)遠端執行的雲服務而執行,並可替代地藉由請求實體之計算裝置上執行的本地服務而執行。
本文所述之各種實施例亦可包括第一實例雲計算系統,包括一或更多個硬體處理單元與儲存電腦可執行指令的一或更多個電腦可讀取儲存裝置,當藉由一或更多個硬體處理單元執行時,導致第一實例雲計算系統接收包括網路上之輸入資料的服務請求,確定服務請求指示輸入資料不應由第一實例雲計算系統持續,並回應於偵測失效,而藉由持續輸 入資料以覆蓋服務請求。在第二實例雲計算系統實例中,第一實例雲計算系統實例之電腦可執行指令導致雲計算系統藉由在雲儲存中儲存輸入資料持續輸入資料。在第三實例雲計算系統實例中,第一或第二雲計算系統實例之電腦可執行指令導致雲計算系統藉由將輸入資料嵌入為文件中之物件持續輸入資料。在第四雲計算系統實例中,第一至第三雲計算系統實例之雲計算系統提供數位筆記本雲服務,而輸入資料係嵌入數位筆記本中。在第五雲計算系統實例中,第一至第四雲計算系統實例之服務請求係請求以呈現輸入資料。在第六雲計算系統實例中,第一至第五雲計算系統實例之輸入資料包括可攜式文件格式檔案。在第七雲計算系統實例中,第一至第六雲計算系統實例之電腦可執行指令導致雲計算系統藉由對輸入資料、服務請求之輸出、或用於處理服務請求之電腦資源中之至少一者應用準則以偵測失效。在其他實例中,客戶端裝置在本地端執行上述關於第一至第七雲計算系統之處理。
本文所述之各種實例可包括藉由至少一個計算裝置執行的第一附加方法實例。第一附加方法實例可包括取得具有輸入資料之服務請求,藉由評估服務請求之輸出以對服務請求應用準則,並回應於偵測服務請求之輸出滿足準則,而保留服務請求之輸入資料。在第二附加方法實例中,第一附加方法實例係由至少一個計算裝置上執行之本地端服務執行,該本地端服務代表亦在該至少一個計算裝置上執行之應用程式。在第三附加方法實例中,在第一或第二附加方法實 例中應用準則包括確定輸出之總記憶體佔用是否超過閥值。在第四附加方法實例中,對第一至第三附加方法實例應用準則包括確定輸出之任何部件是否具有記憶體佔用超過閥值。在第五附加方法實例中,應用第一至第四附加方法實例之準則包括確定儲存輸出是否導致超過儲存配額。在第六附加方法實例中,第一至第五附加方法實例之儲存配額包括與使用者帳戶相關聯的雲儲存配額。在第七附加方法實例中,保留第一至第六附加方法實例之輸入資料包括在與使用者帳戶相關聯的雲儲存中儲存輸入資料。
裝置實例
返回參照第2圖,如所示之環境200包括數個裝置。在此情況下,由於解釋之目的,裝置係描述為客戶端裝置與雲計算系統。在此實例中,客戶端裝置係表現為掃描器、平板電腦、及膝上型裝置。然而,其他類型之裝置可作為客戶端裝置,如智慧型電話、桌上型電腦、印表機、或可計算的家用電器。通常,只要裝置具有一些計算硬體,裝置可作為根據所揭示之實現之客戶端裝置。
雲計算系統210可包括一或更多個雲式伺服器類型之裝置,雖然在一些情況下,雲計算系統可包括任何前述的客戶端裝置類型。雲計算系統可與資料儲存通訊,資料儲存可與雲計算系統共同定位。當然並未圖示所有的裝置實現,其他裝置實現對於該領域具有通常知識者從以上及以下之敘述應該是明顯的。
如本文所使用之術語「裝置」、「電腦」、「計算裝置」、 「客戶端裝置」、及/或「伺服器裝置」可意指具有一些硬體處理能力及/或硬體儲存裝置/記憶體能力的任何類型的裝置。處理能力可藉由一或更多個處理器(如硬體處理單元/核心)提供,而可執行電腦可讀取指令形式之資料,以提供功能。電腦可讀取指令及/或資料可儲存在儲存上,如儲存/記憶體及/或資料儲存。
儲存/記憶體可為裝置之內部或外部。儲存可包括揮發性或非揮發性記憶體、硬碟驅動、快閃儲存裝置、及/或光儲存裝置(如CD、DVD等)等之任何一或更多者。如本文所使用之術語「電腦可讀取媒體」可包括訊號。反之,術語「電腦可讀取儲存媒體」排除訊號。電腦可讀取儲存媒體包括「電腦可讀取儲存裝置」。電腦可讀取儲存裝置的實例包括揮發性儲存媒體(如RAM)以及非揮發性儲存媒體(如硬碟驅動、光碟、及快閃記憶體等)。
在一些情況下,該裝置經配置為利用通用處理器與儲存/記憶體。在其他情況下,裝置可包括在單晶片系統(SOC)類型設計。在SOC設計實現中,由裝置提供之功能可整合至單一SOC或多個耦接SOC。一或更多個相關聯處理器可經配置以協調具有共享資源(如記憶體、儲存等)及/或一或更多個專用資源(如經配置以執行某些特定功能的硬體模組)。因此,如本文所用之術語「處理器」亦可指為中央處理單元(CPU)、圖形處理單元(GPU)、控制器、微控制器、處理器核心、或適用於習知計算架構以及SOC設計二者之實現的其他類型的處理裝置。
在一些配置中,服務請求模組、服務供應商模組、及/或任務實現模組可在裝置製造期間或由準備裝置出售給終端使用者之中介安裝為硬體、韌體或軟體。在其他情況下,終端使用者可稍後安裝服務請求模組、服務供應商模組、及/或任務實現模組,如藉由下載可執行代碼並在相應裝置上安裝可執行代碼。
亦應注意,裝置通常可具有輸入及/或輸出功能。舉例而言,計算裝置可具有各種輸入機制,如鍵盤、滑鼠、觸控板、語音識別等。裝置亦可具有各種輸出機制,如印表機、監視器等。
亦應注意,本文描述之裝置可以用獨立或協同方式動作,以實現所述之技術。舉例而言,方法100可在單一計算裝置上執行及/或分佈於透過網路220通訊之多個計算裝置。在未限制之情況下,網路220可包括一或更多個區域網路(LAN)、廣域網路(WAN)、網際網路、及類似物。
結論
儘管實施例已經以特定結構特徵及/或方法邏輯動作之語言進行描述,但應理解,在所附專利申請範圍中定義之標的不限於上述特定特徵或動作。反之,上述特定特徵與動作係揭示以作為實現專利申請範圍之示例性形式,而其他特徵與動作將藉由該領域技術具有通常知識者認定而在專利申請範圍之內。
100‧‧‧方法
102‧‧‧方塊
104‧‧‧方塊
106‧‧‧方塊
108‧‧‧方塊
110‧‧‧方塊
112‧‧‧方塊
114‧‧‧方塊

Claims (20)

  1. 一種藉由至少一個計算裝置執行之方法,該方法包含以下步驟:取得讓一服務在輸入資料上執行處理之一請求,以產生該輸入資料之一輸出代表;將準則應用至該請求;以及回應於確定符合該準則,保留該輸入資料。
  2. 如請求項1所述之方法,其中該輸入資料包含用於該服務之一文件,以呈現而取得該輸出代表。
  3. 如請求項1所述之方法,其中將該準則應用至該請求之該步驟包含評估該輸入資料之步驟。
  4. 如請求項1所述之方法,其中將該準則應用至該請求之該步驟包含評估用於執行該服務之電腦資源之步驟。
  5. 如請求項1所述之方法,其中將該準則應用至該請求之該步驟包含評估該輸入資料之該輸出代表之該步驟。
  6. 如請求項1所述之方法,其中該請求係代表具有相關聯雲儲存之一使用者,而保留該輸入資料之該步驟包含在該使用者之該相關聯雲儲存中儲存該輸入資料之步驟。
  7. 一種雲計算系統,包含:一或更多個硬體處理單元;以及一或更多個電腦可讀取儲存裝置,該一或更多個電腦可讀取儲存裝置儲存電腦可執行指令,當藉由該一或更多個硬體處理單元執行時,導致該雲計算系統以:在一網路上接收一服務請求,該服務請求包含輸入資料;確定該服務請求指示該輸入資料不應由該雲計算系統持續;以及回應於偵測一失效,藉由持續該輸入資料以覆蓋該服務請求。
  8. 如請求項7所述之雲計算系統,其中該等電腦可執行指令,導致該雲計算系統以:藉由在雲儲存中儲存該輸入資料,持續該輸入資料。
  9. 如請求項7所述之雲計算系統,其中該等電腦可執行指令,導致該雲計算系統以:藉由將該輸入資料嵌入為一文件之一物件,持續該輸入資料。
  10. 如請求項9所述之雲計算系統,其中該雲計算系統提供一數位筆記本雲服務,而該物件嵌入於一數位筆記本中。
  11. 如請求項10所述之雲計算系統,其中該服務請求係為呈現該輸入資料之一請求。
  12. 如請求項11所述之雲計算系統,其中該輸入資料包含一可移植文件格式檔案。
  13. 如請求項7所述之雲計算系統,其中該等電腦可執行指令,導致該雲計算系統以:藉由將準則應用至該輸入資料、該服務請求之一輸入、或用於處理該服務請求之電腦資源中之至少一者,偵測該失效。
  14. 一種藉由至少一個計算裝置執行之方法,該方法包含以下步驟:取得具有輸入資料之一服務請求;將準則應用至該服務請求,其中應用該準則之該步驟包含評估該服務請求之一輸出之步驟;以及回應於偵測該服務請求之該輸出滿足該準則,保留該服務請求之該輸入資料。
  15. 如請求項14所述之方法,藉由在該至少一個計算裝置上執行的一本地端服務執行以代表一應用程式,該應用程式亦可在該至少一個計算裝置上執行。
  16. 如請求項14所述之方法,其中應用該準則之該步驟包含確定該輸出之一總記憶體佔用是否超過一閥值之步驟。
  17. 如請求項14所述之方法,其中應用該準則之該步驟包含確定該輸出之任何部件是否具有超過一閥值之記憶體佔用之步驟。
  18. 如請求項14所述之方法,其中應用該準則之該步驟包含確定儲存該輸出是否導致超過一儲存配額之步驟。
  19. 如請求項18所述之方法,其中該儲存配額包含與一使用者帳戶相關聯之一雲儲存配額。
  20. 如請求項19所述之方法,其中保留該輸入資料之該步驟包含在與該使用者帳戶相關聯之雲儲存中儲存該輸入資料之步驟。
TW104106539A 2014-04-16 2015-03-02 輸入資料之條件保存 TW201546627A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201461980443P 2014-04-16 2014-04-16
US14/338,301 US9672114B2 (en) 2014-04-16 2014-07-22 Conditional saving of input data

Publications (1)

Publication Number Publication Date
TW201546627A true TW201546627A (zh) 2015-12-16

Family

ID=54322122

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104106539A TW201546627A (zh) 2014-04-16 2015-03-02 輸入資料之條件保存

Country Status (6)

Country Link
US (2) US9672114B2 (zh)
EP (1) EP3132350B1 (zh)
KR (1) KR102230505B1 (zh)
CN (2) CN112948164A (zh)
TW (1) TW201546627A (zh)
WO (1) WO2015160547A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672114B2 (en) * 2014-04-16 2017-06-06 Microsoft Technology Licensing, Llc Conditional saving of input data
US10394939B2 (en) * 2015-03-31 2019-08-27 Fujitsu Limited Resolving outdated items within curated content
US10733023B1 (en) * 2015-08-06 2020-08-04 D2Iq, Inc. Oversubscription scheduling
CN105897915B (zh) * 2016-05-23 2022-09-09 珠海格力电器股份有限公司 一种数据接收服务器、及数据处理系统
US10558504B1 (en) * 2018-09-28 2020-02-11 Atlassian Pty Ltd Systems and methods for automatically detecting desktop applications
US11576048B1 (en) * 2020-04-28 2023-02-07 T-Mobile Innovations Llc Mitigating authentication-based hacking of access restricted telecommunication services

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2163556C (en) * 1994-04-22 2006-07-11 Tetsuji Kawashima System and method for transmitting compressed data or pre-compressed data based on a preset compression ratio
US7392484B1 (en) 2000-10-13 2008-06-24 Hewlett-Packard Development Company, L.P. Method and system for capturing, storing, sharing, and managing notes taken during a computer based meeting
US7039234B2 (en) 2001-07-19 2006-05-02 Microsoft Corporation Electronic ink as a software object
JP2004069809A (ja) 2002-08-02 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> 遠隔学習システム、学習情報送信装置及び遠隔学習方法
US20060081714A1 (en) 2004-08-23 2006-04-20 King Martin T Portable scanning device
US20110179219A1 (en) 2004-04-05 2011-07-21 Super Talent Electronics, Inc. Hybrid storage device
US7519573B2 (en) 2004-08-23 2009-04-14 Fuji Xerox Co., Ltd. System and method for clipping, repurposing, and augmenting document content
US8171138B2 (en) 2005-02-15 2012-05-01 Microsoft Corporation System and method for applying flexible attributes to execute asynchronous network requests
US9141718B2 (en) 2005-06-03 2015-09-22 Apple Inc. Clipview applications
EP1949262A1 (en) 2005-11-18 2008-07-30 Kapow Technologies A/S Method of performing web clipping, a web-clipping server and a system for web clipping
JP4516003B2 (ja) * 2005-11-21 2010-08-04 シャープ株式会社 データ処理装置
CN100419762C (zh) * 2006-01-11 2008-09-17 张新波 适用于输入形式自由的无线短信匹配和搜索引擎的信息处理方法
US7702664B2 (en) 2006-12-26 2010-04-20 Lenovo (Singapore) Pte. Ltd. Apparatus, system, and method for autonomic large file marking
CA2676692A1 (en) 2007-02-09 2008-08-14 Novarra, Inc. Method and system for providing portions of information content to a client device
WO2008127474A1 (en) 2007-04-17 2008-10-23 Edward Frederick Publishing, importing, and formatting web page modules
JP2009110287A (ja) 2007-10-30 2009-05-21 Fujitsu Ltd アクセス制御装置およびアクセス制御方法
US20100145924A1 (en) 2008-12-04 2010-06-10 Novarra, Inc. Methods and Devices for Locating Information on a Web Page
US8645383B2 (en) 2009-01-27 2014-02-04 Stephen J. Brown Content management system using sources of experience data and modules for quantification and visualization
US8543675B1 (en) 2009-12-17 2013-09-24 Amazon Technologies, Inc. Consistent link sharing
US10607235B2 (en) 2009-12-24 2020-03-31 Outbrain Inc. Systems and methods for curating content
US8799414B2 (en) * 2010-05-03 2014-08-05 Panzura, Inc. Archiving data for a distributed filesystem
JP5062315B2 (ja) 2010-09-09 2012-10-31 ブラザー工業株式会社 画像処理プログラム
US9077681B2 (en) 2010-10-05 2015-07-07 Microsoft Technology Licensing, Llc Page loading optimization using page-maintained cache
JP5327246B2 (ja) 2011-02-08 2013-10-30 ブラザー工業株式会社 画像処理プログラム
US8467663B2 (en) 2011-02-18 2013-06-18 Apple Inc. Video context popups
KR20140034222A (ko) * 2011-05-14 2014-03-19 비트카사, 인코포레이티드 사용자-독립적인 암호화된 파일들의 서버측 중복제거를 하는 클라우드 파일 시스템
US9595054B2 (en) 2011-06-27 2017-03-14 Microsoft Technology Licensing, Llc Resource management for cloud computing platforms
US20130159497A1 (en) 2011-12-16 2013-06-20 Microsoft Corporation Heuristic-Based Rejection of Computing Resource Requests
CN102446224B (zh) 2012-01-05 2013-06-05 苏州阔地网络科技有限公司 一种网页多层次区块剪取方法
US20150200883A1 (en) 2012-05-30 2015-07-16 Daniel Scott Brotherston Systems and methods for maintaining responsiveness in the presence of large data chunks
US20150261733A1 (en) 2014-03-17 2015-09-17 Microsoft Corporation Asset collection service through capture of content
US9672114B2 (en) 2014-04-16 2017-06-06 Microsoft Technology Licensing, Llc Conditional saving of input data

Also Published As

Publication number Publication date
EP3132350B1 (en) 2021-05-26
US20150301898A1 (en) 2015-10-22
KR102230505B1 (ko) 2021-03-19
US9672114B2 (en) 2017-06-06
WO2015160547A1 (en) 2015-10-22
CN106233257A (zh) 2016-12-14
CN112948164A (zh) 2021-06-11
EP3132350A1 (en) 2017-02-22
US9934081B2 (en) 2018-04-03
KR20160145018A (ko) 2016-12-19
US20170091012A1 (en) 2017-03-30

Similar Documents

Publication Publication Date Title
US9928050B2 (en) Automatic recognition of web application
US9934081B2 (en) Conditional saving of input data
US10326792B2 (en) Virus intrusion route identification device, virus intrusion route identification method, and program
US9864736B2 (en) Information processing apparatus, control method, and recording medium
US8793222B1 (en) Systems and methods for indexing backup content
US11922117B2 (en) Generation of document editors having functions specified by role policies
US9588952B2 (en) Collaboratively reconstituting tables
US20190005031A1 (en) Accessing cloud based document libraries over unreliable networks
US20100257413A1 (en) Verification service for dynamic content update
US9514228B2 (en) Banning tags
US9430222B2 (en) Controlling a running application for live scene graph editing
CN110119386B (zh) 数据处理方法、数据处理装置、介质和计算设备
US10394551B2 (en) Managing kernel application binary interface/application programming interface-based discrepancies relating to kernel packages
US10002135B2 (en) Simplifying the check-in of checked-out files in an ECM system
US9037542B2 (en) Reducing programming complexity in client applications when interfacing with database servers operating with different programming interfaces
US9563845B1 (en) Rule evaluation based on precomputed results
CN115812198A (zh) 利用多协议数据访问的一致实体标记
CN111353170A (zh) 文件隐私信息处理方法、装置、电子设备及存储介质
US11669279B2 (en) Retention framework for data stores
US12019922B2 (en) Retention framework for data stores
US11630879B2 (en) Server and providing method
US10944785B2 (en) Systems and methods for detecting the injection of malicious elements into benign content
US20240119170A1 (en) Machine learning (ml) model pipeline with obfuscation to protect sensitive data therein