winFS

winFS

WinFS 是一種新的文件系統格式。事實上,WinFS服務可以看作是在NTFS的基礎上增加了一個資料庫層,這個資料庫層以即將出現的SQL Server的“Yukon”版為基礎。對於WinFS來說,文件除了我們熟悉的屬性,諸如文件名稱、大小、日期外,還將通過諸如作者名、圖像大小之類的元數據建立索引。系統底層的目錄結構仍將存在,但用戶使用的將是一個相似文件構成的庫(Library)。每個庫由一組通過查詢WinFS資料庫獲得的文件構成。如果WinFS確實能將查找文件的依據改變為它是什麼,而不是它在哪裡的話,無疑這將是基於NTFS文件系統的一個突破。

簡介


無論是FAT還是NTFS ,用戶訪問某個文件都必須通過層次型的目錄樹結構到達其保存位置,如果不知道文件保存位置,那就只能使用操作系統的搜索功能了。不知道你有沒有想過:我們需要的是文件,而不是它的位置,既然如此,為什麼要我們必須記住這些“無用”的信息?為解決這個問題,微軟將在下一代操作系統中(原定內部代號Longhorn,即Windows Vista。但在最終面世的發售版本中並沒有出現),推出傳說中的WinFS (windows Future Storage , windows未來存儲)服務,也就是被人們誤以為是文件系統的那個東西。

推出原因

技術行業正在經歷一場愈演愈烈的“完美風暴” - 一場由潮流與技術組合而成的風暴,它將推動信息的開發和使用方式實現下一個突破。這場完美風暴由三種推動力組合而成:硬體改進、數字數據在數量上的劇增以及信息管理架構和標準的激增。

硬體改進

回首硬體在過去幾年裡的發展過程,我們不禁會對某些硬體類型的發展速度感到驚訝。每個人都知道摩爾定律-晶元上的晶體管數量每 18 個月翻一番。但許多人都忽略的一點是,網路帶寬和存儲技術的發展速度甚至超出了摩爾定律中指出的速度。在企業內部以及通過家庭網路連接到全球網路的單個用戶之間,網路帶寬都以驚人的速度不斷增長。在過去幾十年中,伺服器和客戶端計算機上的存儲容量明顯增大。1984 年,IBM PC 推出了 10 MB 硬碟。如今,300-500GB 硬碟已成為攜帶型計算機的標準配置。在未來的幾年裡,不難想象攜帶型計算機將具有 1 TB 甚至更大的存儲。伴隨著存儲以驚人速度增長的同時,在管理人們每天創建、存儲和搜索的所有數據方面也出現了問題。

數字數據

人們如今使用的大多數數據是數字數據。例如,編寫本文時,我使用的並不是普通的白紙,而是攜帶型計算機中安裝的 Microsoft® Word。電子郵件、電子傳真、數字媒體、日曆、Microsoft Office 文檔、語音郵件以及其他許多類型的信息都以電子方式創建和存儲。2003 年的一份 University of Berkeley study(英文)表明,僅 2002 年一年創建的新信息數量便超過了 5 百萬億條。這些信息中的 92% 存儲在磁碟媒體(大多數是客戶端硬碟)中。2002 年中發送和存儲的電子郵件數量超過了 40 萬萬億封。將硬體和軟體的增長原動力與計算機連接、下載、處理和存儲比以前多得多的信息的能力結合在一起,而且您會看到有效管理數字數據(我們自己創建的數據以及我們從其他人處接收的數據)多麼重要。

標準架構

數據標準和架構化數據的激增是驅使考慮信息管理新方式的最後一個難題。在幾十年裡,許多企業和行業集團在向數字數據轉移的過程中,希望在其實際業務流程之後將數據模型化。
開始時,計算機無法處理將許多業務進程模型化和自動化的複雜過程。隨著計算機運行速度的提高以及編程語言和數據技術的改進,自動執行業務進程已成為企業簡化操作的一種方式,尤其是在企業資源規劃 (ERP)、客戶關係管理 (CRM)、銷售人員自動化 (SFA) 和其他類型的企業應用出現之後。隨著這些新型應用的出現,數據突然變得更複雜。但同時,數據具有更好的結構,而這對業務更有用。資料庫系統並非用於存儲難以理解的二進位數據或簡單的數據模型,而是將不同類型的複雜數據關聯起來。例如,ERP 系統了解總分類帳、人力資源和銷售系統的複雜性,並可以進行建模。由於標準化架構描述了系統中的數據,因此企業可以詢問有關其業務的特定問題,並可在系統中查詢此信息。
然而,跨系統工作仍然是行業中存在的一個問題。在企業內部集成系統比較困難,而在企業之間集成系統則難上加難。這刺激了企業應用集成 (EAI) 供應商的發展,因為它們可以幫助客戶跨越異類系統之間架構化數據的鴻溝。在認識到此集成問題之後,行業將 XML 和 XML Web service 用作幫助公司在多個系統和多個組織之間工作的一種方式。這些較新的標準可以幫助解決數據集成問題,並有助於在組織內部以及組織之間共享數據。

技術內容


為迎接這場完美技術風暴的到來,Microsoft 在構建下一代 Windows 文件系統(代號為 WinFS)方面投入了大量的精力。WinFS 產品小組在革新 Windows 文件系統的過程中遵循以下三個核心原則:使用戶能夠“查找”、“關聯”和“操作”他們的信息。讓我們了解一下每個原則的含義,然後深入探討一些使 WinFS 滿足這些目標的技術細節。

查找

根據市場與信息技術調查公司 IDC 的調查,技術工作人員花費大約 15% 到 30% 的時間來查找信息。在通常的 8 小時工作日(即一個人在通常的 8 小時工作日中工作)中,無論在何處總共都需要 1 到 2.5 小時來查找信息。IDC 還估計至少 50% 的 Web 搜索失敗。儘管提高信息查找的速度和準確性是 WinFS 的主要目標之一,但僅僅成為一個出色的搜索引擎還遠遠不夠。查找信息已經超出了遍歷和檢索內容的範疇。相反,今天的信息具有許多含義,如定義信息之間的關係(WinFS 將提供這項功能)。搜索可能不是 WinFS 用戶查找其大多數信息的默認方式。
另外,在過去十幾年之內,文件系統技術並未進行大的變革。而是出現了一些新數據類型(如多媒體以及新型的通信和協作),它們不僅僅是二進位文件和簡單的元數據。文件系統不知道如何在這些新類型的數據中收集和查找信息。不過,我們正在構建 WinFS 以擴展文件系統,使其包含這些新類型的信息並進而提供更豐富的功能來使用這些信息。

關聯

每個人都了解數據之間存在的關係。但當今的軟體在存儲和利用這些關係方面做得並不好。例如,我知道在一次特定會議上一個叫 George 的特定的人介紹了一篇特定文檔。我知道 George 寫了這篇文檔,並且我知道 George 寫的另一篇文檔也會引起我的興趣。我如何找到另一篇文檔?我必須通過電子郵件和文件系統在我經常訪問的位置到處搜索。有了 WinFS,數據“關係”將構建到系統中,並將人們使用的不同“類型”的“所有”數據鏈接在一起,包括您編寫的自定義應用程序數據。用戶可以遍歷這些關係並通過多種方式搜索數據。此外,您可以在能夠識別 WinFS 的應用程序中以圖形形式顯示這些相關項,以便用戶更好地了解他們的數據如何關聯在一起,無論該數據是由您的應用程序、其他人的應用程序還是內置的 Windows 程序存儲的。

操作

到目前為止,我已經介紹了如何將您的所有數據存儲在 WinFS 中以及如何以更直觀的新方式創建這些數據之間的關係。但是,如果這是您使用此系統所能做的全部事情,那麼 WinFS 的革新只展示了一半。人們希望在任何數據系統中實現的一個關鍵功能是使系統幫助他們將其數據轉化為可以操作的有用信息。PC 用戶一天中的大量時間都花在充當其數據的數字職員。您必須對數據進行手動排序、篩選、分類和堆棧分級。WinFS 將提供數字代理,幫助人們從數字職員轉變為數字數據決策者。WinFS 幫助處理信息過載的主要方式之一是消除可以自動進行的冗餘數據活動。只有相關信息或重要信息才應顯示給數據用戶。
例如,您可能希望知道一封需要立即回復的電子郵件何時來自某個作者,此郵件與您正處理的一份具體業務文檔有關係。但您不在辦公桌旁,而是正在參加一個會議,並只帶著手機。您不希望錯過這封電子郵件,並且需要確保儘快與這個人交談。與對方談話需要安排一個 30 分鐘電話的情況介紹,以排除業務文檔中的所有問題(此電話情況介紹的截止期限是今天結束之前)。
WinFS Rules 是該系統的內置組件,允許您通知系統如何處理、排序和交付數據。通過使用 WinFS Rules,您可以創建數據和數據關係的處理規則。此外,WinFS Rules 還可以與其他 Windows 應用程序配合工作來向您發出通知(例如,通過向您的手機發送尋呼)。最後,WinFS Rules 還可以通過查看日曆信息了解一天中的空閑時間,來幫助安排電話會議。在此處,規則可以自動在下一個空閑時間創建會議。集成的 WinFS Rules 技術允許將數據存儲在 WinFS 中(甚至複製到 WinFS 中),以使其成為活動數據。此活動數據在其進入系統時立即將重要信息通知給您,從而有助於進行更好的業務決策。此技術通過自動處理我們手動對數據執行的許多任務,可以幫助緩解信息過載。

技術背景

我們已經討論了 WinFS 的基本原理,接下來我們將介紹它的一些核心技術。在剛創立的本專欄目中,我將針對每種技術提供高級別的概述。在未來幾個月內,本專欄將深入介紹每種技術,並向開發人員展示如何利用新的 WinFS 技術建立應用程序。
從技術角度而言,WinFS 由 5 個部分組成:核心 WinFS、數據模型、架構、服務和 API。圖 1 顯示這幾個部分的結構塊的更詳細視圖。

核心

核心 WinFS 由文件系統的核心服務組成。將核心 WinFS 視為基礎,它包括操作和文件系統服務。其示例包括安全性、易管理性、Win32 文件訪問支持、導入/導出、配額等。

數據模型

數據模型不包含在核心服務中,它提供了前面提到的一些技術革新,包括基本的項結構、關係以及擴展項與關係的能力。

架構

如果沒有內置的架構,WinFS 不會比現有的文件系統更好,因為 WinFS 不會以更豐富的方式理解數據或者提供更具結構化的方式來處理數據的元數據。WinFS 架構包括日常信息(包括文檔、電子郵件、任務、媒體、音頻視頻等)的架構,還包括包含配置、程序和其他與系統相關的數據的系統架構。

服務

同步和規則屬於 WinFS 的服務範疇。這些技術位於 WinFS 的“頂端”,可以為您提供系統基礎功能以外的擴展功能。同步功能使您能夠通過網路同步 WinFS 系統,並可以建立同步適配器將 WinFS 同步到其他系統。例如,您可能希望將聯繫人信息從您的 CRM 系統同步到 WinFS,以便可以將此數據與 WinFS 中的其他數據相關聯,或者通過 WinFS 離線使用此數據。同步適配器可以是雙向的,因此在 WinFS 中對數據所做的所有更改都可以同步回其他合作系統。

API

作為開發人員,您將寫入 API。WinFS 包括一個功能豐富的 API,它是微軟下一代操作系統中整個 WinFX™ 編程模型的一部分。通過 WinFS API,您可以編寫 WinFS 系統的不同結構塊,包括數據操作、規則、同步和數據模型。

結論


未來幾個月內,由於開始深入探討 WinFS 的不同技術,因此有很多內容將要介紹。開始時,您會希望明確了解其他的 Longhorn 基石,尤其是“Avalon”,因為來年將構建的許多應用程序都是基於 Avalon 的。建議您參閱 Chris Sells 在其 first Longhorn Foghorn column(英文)一文中對 Longhorn 基石的概述。除此之外,讓我們為 WinFS 的到來做好準備:它是信息驅動的應用程序的未來。

文件


Thomas Rizzo 是 Microsoft SQL Server 組的主管。Tom 利用業餘時間為 Microsoft Press 編寫編程方面的書籍,在 Microsoft 新聞組中為客戶提供幫助,並偶爾更新其 Blog(他應該更經常地更新!)。

停止研發


北京時間2006年6月26日消息,據國外媒體報道,微軟下一代文件系統存儲技術WinFS項目總經理昆廷·克拉克(Quentin Clark)宣布,公司已決定停止WinFS的研發工作,原定發布的Beta 2也被取消。在代號為Longhorn的Windows Vista中也不會出現WinFS。