用于網絡數據存儲的方法和系統的制作方法
【技術領域】
[0001]本發明的實施例總體上涉及數據存儲領域,并且特別涉及用于網絡數據存儲的方法和系統。
【背景技術】
[0002]隨著網絡技術、特別是云(Cloud)技術的發展,越來越多的用戶數據被存儲在網絡位置。例如,當一個應用被安裝在用戶設備之后,在該應用的使用過程中可能產生各類數據。例如,用戶可以使用安裝在用戶設備上的通信應用程序與其他用戶進行通信,并且由此產生聊天記錄。應用所產生的數據可以被部分或者全部地傳輸給服務器,例如云服務器,并且由服務器存儲在網絡存儲設備中。
[0003]服務器通常由多種或者多層硬件和/或軟件系統構成。例如,一個云服務器可以將來自用戶設備的數據存儲在不同的存儲設備中。不同的存儲設備往往具有不同的特性,并且適用于存儲不同類型的數據。例如,某些存儲設備的可靠性顯著高于其他存儲設備,并且因此可被用來存儲安全性要求較高的應用的數據。另一些存儲設備的數據讀取速度快于其他存儲設備,因此可被用來存儲需要快速響應的應用的數據。
[0004]然而,在傳統的網絡數據存儲方案中,網絡服務器無法高效、準確地確定從用戶設備接收到的數據具有何種性質,因此也就無法將其存儲在適當的存儲設備中。某些服務器允許用戶顯式地指明數據存儲需求。但是這需要用戶具有較高的專業技能水平,和/或對存儲設備的特性具有比較深入的了解。另一些已知方案只能在各個存儲子系統內部進行局部優化,而且需要較長的周期。
【發明內容】
[0005]總體上,本發明的實施例提供用于網絡數據存儲的方案。
[0006]在本發明的一個方面,提供一種用于網絡數據存儲的方法。所述方法包括:從用戶設備接收待存儲的目標數據;確定所述用戶設備上與所述目標數據相關聯的應用;獲取通過監視歷史數據而生成的存儲模式,所述存儲模式指示所述歷史數據的存儲特性,所述歷史數據與所述應用相關聯;以及基于所述存儲模式來控制所述目標數據在網絡中的存儲。
[0007]在本發明的另一方面,提供一種用于網絡數據存儲的系統。所述系統包括:數據接收單元,被配置為從用戶設備接收待存儲的目標數據;關聯確定單元,被配置為確定所述用戶設備上與所述目標數據相關聯的應用;模式獲取單元,被配置為獲取通過監視歷史數據而生成的存儲模式,所述存儲模式指示所述歷史數據的存儲特性,所述歷史數據與所述應用相關聯;以及存儲控制單元,被配置為基于所述存儲模式來控制所述目標數據在網絡中的存儲。
[0008]根據本發明的實施例,可以識別與待存儲的目標數據相關聯的應用。進而,可以獲取與該應用相關聯的歷史數據。在運行過程中,服務器已經通過對這些歷史數據的存儲和訪問行為的監視和學習,提取了描述這些歷史數據的存儲特性的模式信息。利用所提取的模式,能夠自適應地實現對當前待存儲數據的有效而準確的存儲優化。本發明的其他特征和優點將通過下文描述而變得容易理解。
【附圖說明】
[0009]通過結合附圖對本發明示例性實施方式進行更詳細的描述,本發明的上述以及其它目的、特征和優勢將變得更加明顯其中:
[0010]圖1示出了適于用來實現本發明實施例的示例性計算機系統/服務器的示意性框圖;
[0011]圖2示出了本發明的實施例可實現于其中的網絡存儲環境的示意性框圖;
[0012]圖3示出了根據本發明實施例的用于網絡數據存儲的示意性流程圖;以及
[0013]圖4示出了根據本發明實施例的用于網絡數據存儲的系統的示意性框圖。
[0014]在附圖中,相同或相似的標號被用來表示相同或相似的元素。
【具體實施方式】
[0015]下面將參照附圖更詳細地描述本公開的優選實施方式。雖然附圖中顯示了本公開的優選實施方式,然而應該理解,可以以各種形式實現本公開而不應被這里闡述的實施方式所限制。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠將本公開的范圍完整地傳達給本領域的技術人員。
[0016]圖1示出了適于用來實現本發明實施方式的示例性計算機系統/服務器12的方框圖。圖1顯示的計算機系統/服務器12僅僅是一個示例,不應對本發明實施例的功能和使用范圍帶來任何限制。
[0017]如圖1所示,計算機系統/服務器12以通用計算設備的形式表現。計算機系統/服務器12的組件可以包括但不限于:一個或者多個處理器或者處理單元16,系統存儲器28,連接不同系統組件(包括系統存儲器28和處理單元16)的總線18。
[0018]總線18表示幾類總線結構中的一種或多種,包括存儲器總線或者存儲器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結構中的任意總線結構的局域總線。舉例來說,這些體系結構包括但不限于工業標準體系結構(ISA)總線,微通道體系結構(MAC)總線,增強型ISA總線、視頻電子標準協會(VESA)局域總線以及外圍組件互連(PCI)總線。
[0019]計算機系統/服務器12典型地包括多種計算機系統可讀介質。這些介質可以是任何能夠被計算機系統/服務器12訪問的可用介質,包括易失性和非易失性介質,可移動的和不可移動的介質。
[0020]系統存儲器28可以包括易失性存儲器形式的計算機系統可讀介質,例如隨機存取存儲器(RAM) 30和/或高速緩存存儲器32。計算機系統/服務器12可以進一步包括其它可移動/不可移動的、易失性/非易失性計算機系統存儲介質。僅作為舉例,存儲系統34可以用于讀寫不可移動的、非易失性磁介質(圖1未顯示,通常稱為“硬盤驅動器”)。盡管圖1中未示出,可以提供用于對可移動非易失性磁盤(例如“軟盤”)讀寫的磁盤驅動器,以及對可移動非易失性光盤(例如CD-ROM,DVD-ROM或者其它光介質)讀寫的光盤驅動器。在這些情況下,每個驅動器可以通過一個或者多個數據介質接口與總線18相連。存儲器28可以包括至少一個程序產品,該程序產品具有一組(例如至少一個)程序模塊,這些程序模塊被配置以執行本發明各實施例的功能。
[0021]具有一組(至少一個)程序模塊42的程序/實用工具40,可以存儲在例如存儲器28中,這樣的程序模塊42包括-但不限于-操作系統、一個或者多個應用程序、其它程序模塊以及程序數據,這些示例中的每一個或某種組合中可能包括網絡環境的實現。程序模塊42通常執行本發明所描述的實施例中的功能和/或方法。
[0022]計算機系統/服務器12也可以與一個或多個外部設備14(例如鍵盤、指向設備、顯示器24等)通信,還可與一個或者多個使得用戶能與該計算機系統/服務器12交互的設備通信,和/或與使得該計算機系統/服務器12能與一個或多個其它計算設備進行通信的任何設備(例如網卡,調制解調器等等)通信。這種通信可以通過輸入/輸出(I/O)接口 22進行。并且,計算機系統/服務器12還可以通過網絡適配器20與一個或者多個網絡(例如局域網(LAN),廣域網(WAN)和/或公共網絡,例如因特網)通信。如圖所示,網絡適配器20通過總線18與計算機系統/服務器12的其它模塊通信。應當明白,盡管圖中未示出,可以結合計算機系統/服務器12使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設備驅動器、冗余處理單元、外部磁盤驅動陣列、RAID系統、磁帶驅動器以及數據備份存儲系統等。
[0023]下面將詳細描述本發明實施例的機制和原理。除非特別聲明,在下文和權利要求中使用的術語“基于”表示“至少部分地基于”。術語“包括”表示開放性包括,即“包括但不限于”。術語“多個”表示“兩個或更多”。術語“一個實施例”表示“至少一個實施例”。術語“另一實施例”表示“至少一個另外的實施例”。其他術語的定義將在下文描述中給出。
[0024]—般地,根據本發明的實施例,響應于接收到來自用戶設備的待存儲數據,服務器可以識別數據與用戶設備上的哪個或者哪些應用相關聯。而后,服務器可以獲取與該應用相關聯的歷史數據。這些歷史數據至少部分地從運行有該應用或類似應用的其他用戶設備收集。服務器對這些歷史數據在存儲過程中展現出的特性進行學習和記錄,以形成存儲模式(pattern)。這樣的存儲模式可被用來以最適合的方式存儲當前接收到的數據。以此方式,數據存儲方案可以得到顯著優化。
[0025]圖2示出了本發明的實施例適于實現于其中的環境200的示例性框圖。如圖所示,環境200包括:服務器210,由服務器210管理的一個或多個網絡存儲設備215,以及用戶設備 220 和 230。
[0026]服務器210可以是能夠為用戶提供數據存儲服務的任何服務器。在一個實施例中,服務器210是專門用于管理網絡數據存儲的專用服務器。備選地,在一個實施例中,月艮務器210在提供數據存儲服務的同時,還可以為用戶提供其他服務,例如即時通信服務、電子郵件(email)服務、社交網絡服務,等等。
[0027]網絡存儲設備215由服務器210管理和控制。在一個實施例中,網絡存儲設備215可以是獨立于服務器210并且由其控制的數據存儲設備。備選地,在一個實施例中,網絡存儲設備215可以與服務器210定位在相同的物理機器中。網絡存儲設備215可以包含任何適當的數據存儲介質,不論其是目前已知的還是將來開發的。數據存儲介質可以包括易失性存儲介質和/或非易失性存儲介質。數據存儲介質的示例包括但不限于:硬盤、軟盤、光盤、磁帶,等等。
[0028]特別地,不同的網絡存儲設備215可能具有不同的設備性能。例如,某些網絡存儲設備能夠提供較短的響應時間;某些網絡存儲設備能夠提供比較可靠的數據安全性;某些網絡存儲設備適于持久地保持數據,等等。