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。