辞旧迎新 揭秘微软未来的文件存储系统WinFS

    WinFS文件系统全称是Windows Future Storage(Windows未来的存储系统),这种文件格式将会在微软公司下一代操作系统Vista中进行部署,该文件系统格式将淘汰现在的FAT32和NTFS格式。


    去年底,为了保证Vista能够如期上市,微软决定削减Vista部分功能,WinFS被微软束之高阁。今年3月,又有消息传出微软将把WinFS提前应用于Windows XP操作系统中。不过微软官方对传言置若罔闻,并表示“完全版的WinFS将迟于Vista发布,并成为未来Windows操作系统的重要组成部分”。


    WinFS,“你是谁?”


    微软的官方站点是这样解释WinFS的:用以组织、搜索和共享多种多样的信息的存储平台。WinFS被设计为在无结构文件和数据库数据之间建立起更好的互操作性,从而提供快捷的文件浏览和搜索功能。WinFS可以从不同的数据中心(比如邮件服务器、数据库和其他应用程序)获得信息。搜索条件也不再只局限于文件名、文件大小或者创建日期,文件标题和作者等,索引信息也可以成为搜索的条件。


    文件系统在任何操作系统中几乎都处于中心地位。它是实现应用程序存储信息、检索信息以及与存储信息进行交互的核心代码。相对于程序员使用的其他系统技术,文件系统的进化十分缓慢,但我们将看到的WinFS会彻底改变这一局面。


    WinFS,“让我靠近你!”


    下面我们使用Meta Data搜索器来感受一下WinFS的魅力。


    单击“Start”按钮,选择“Music”,打开音乐文件夹,右键单击选择“View-Details”,然后单击“Genre-Stack by Genre”(图1),



图 1


    现在我们可以看到音乐文件以其音乐的类型(比如Pop)分成几个条目,选择点击进去,可以浏览该类型的文件,而非该类型的音乐文件都被隐藏(图2)。同样的,在开始菜单下的“Pictures”中,单击“Group by Dimensions”,选择“800×600”,会发现尺寸大小是800×600的图片都被显示出来。当然WinFS决不会这么简单,相信更多更有趣的东西会随着WinFS测试的进展而被挖掘出来。



图 2


  探究WinFS的五大组成部分



    从技术角度而言,WinFS由五个部分组成:核心WinFS、数据模型、架构、服务和API(图3)。



图 3


    核心WinFS


    核心WinFS由文件系统的核心服务组成。将核心WinFS视为WinFS文件系统的基础,它包括操作和文件系统服务。其中包括安全性、易管理性、Win32文件访问支持、导入/导出、配额等。


    数据模型


    数据模型不包含在核心服务中,它提供了前面提到的一些技术革新,包括基本的项结构、关系以及扩展项与关系的能力。


    架构


    如果没有内置的架构,WinFS不会比现有的文件系统更好,因为WinFS不会以更丰富的方式理解数据或者提供更具结构化的方式来处理数据。WinFS架构包括日常信息(包括文档、电子邮件、任务、媒体、音频视频等)的架构,还包括包含配置、程序和其他与系统相关的数据的系统架构。


    服务


    同步和规则属于WinFS的服务范畴。这些技术位于WinFS的“顶端”,可以为你提供系统基础功能以外的扩展功能。同步功能使你能够通过网络同步WinFS系统,并可以建立同步适配器将WinFS同步到其他系统。例如,你可能希望将联系人信息从你的CRM系统同步到WinFS,以便可以将此数据与WinFS中的其他数据相关联,或者通过WinFS脱机使用此数据。同步适配器可以是双向的,因此在WinFS中对数据所做的所有更改都可以同步和其他系统合作。


    API


    WinFS包括一个功能丰富的API,它是Vista中整个WinFX编程模型的一部分。通过WinFS API,开发人员可以编写WinFS系统的不同结构块,包括数据操作、规则、同步和数据模型。


    WinFS是传统的文件系统以及关系数据库的延伸,它不仅存储以往的文件类型数据,也可以存储非文件类型的数据,比如一些个人信息、日程表、邮件等等。因此,在WinFS中存储的单位不应该用“文件”来描述,准确地说应该是“Item”。凡是从FAT32或NTFS迁移过去的文件,假如有Meta Data,比如MP3文件的ID3这类信息,会被保存下来。假如无MetaData的文件,也可以创建属于它的Meta Data。


    WinFS、FAT32、NTFS三足鼎立?



    不会!因为FAT32即将被淘汰,在Vista中已经不能使用FAT32格式,就算你还没打算安装Vista,现在流行的HDTV电影动辄就会占用4GB到20GB的磁盘空间,仅支持和正常使用2GB的FAT32显然已经显得力不从心,而提前出局了。


    WinFS可以看作是在NTFS的基础上增加了一个数据库层,这个数据库层以即将出现的SQL Server的“Yukon”版为基础。对于WinFS来说,文件除了我们熟悉的属性,诸如文件名称、大小、日期外,还将通过诸如作者名、图像大小之类的数据建立索引。系统底层的目录结构仍将存在,但用户使用的将是一个相似文件构成的库(Library)。每个库由一组通过查询WinFS数据库获得的文件构成。如果WinFS确实能将查找文件的依据改变为“它是什么”,而不是“它在哪里”的话,无疑这将是基于NTFS文件系统的一个突破。


    因此,有人预言,WinFS最终会取代FAT32和NTFS系统而成为一个完整的文件系统。但出于系统兼容性的考虑,目前的Vista系统仅将WinFS作为一个文件系统上面的附加数据库模块来使用,而且作用范围仅限于Documents and Settings目录,系统的其他部分仍然处于NTFS的控制之下。


    编后:到此,Vista中WinFX的三大核心技术??Windows Presentation Foundation(Avalon)、Windows Communication Foundation(Indigo)和WinFS就为大家介绍完了。伴随Vista而来的WinFX将给软件开发带来全新的气象是不言而喻的。如何充分挖掘WinFX蕴含的巨大能量以使软件世界更加丰富多彩将是程序员面临的任务。不过,让我们更感兴趣的是借助于操作系统的垄断优势,WinFX到底能给.NET最终战胜其他架构带来多少胜算,以完成微软的宏大霸业?让我们怀着对WinFX欣赏之情拭目以待吧。


    Vista发展动态


    七大版本的Vista,你会选择谁?


    Windows Vista正式发布时将有针对一般家庭的Windows Vista Home Premium Edition;针对高端家庭用户的Windows Vista Home Premium Edition(相当于Windows XP Media Center Edition);还有针对商业用户和大、小型企业等七个版本。


    Windows Vista七大版本的性能差异分明,市场定位不同,某一群体的特定用户面临的只是对其中二至三种版本的选择,还不至于产生混乱的感觉。也有网友戏称,不管Vista有多少版本,最终流行的只会有一种??盗版。


    Vista主页更新


    微软Vista主页更新了以下关于操作系统下的新接口和更加基本的信息。 RSS feed出现在了一个突出的地方,记录着Vista的发展。但RSS feed当前并不提供什么营销炒作。


    微软联合佳能推出Vista色彩系统


    微软已经联手佳能(Canon)公司在其明年上市的Vista操作系统中提供颜色管理Windows Color System。Windows Color System的功能设计为提高级用户系统的图像显示性能并且保证屏幕显示同打印输出结果的一致性(screen-to-print matching)。微软同时计划在Vista中支持Canon Raw格式图像。


    对抗Google 微软系统嵌入检索及侧栏功能


    微软日前在软件开发人员会议“Professional Developers Conference 2005”(PDC)上表示,微软将在Vista中嵌入名为“Quick Search”的检索功能及名为“Windows Sidebar”的侧栏功能,以对抗Google Desktop工具,该公司与Google之间的竞争态势进一步加剧。