TechGalaxy.net

WinFS - A Revolutionary File Storage System

by

Zubair Alexander


Lately there’s a lot of buzz about Windows File System (WinFS) that’s raising several questions in our minds. What is it? When will it be released? Where would it fit? and why should we even care? This article will answer several questions about the upcoming WinFS (at least what we know so far), explain its importance, and show you how it can change the way we manage information on our computers today.

Before we even begin our discussion, let’s make a couple of things very clear. First, even though a lot of documents all over the Internet state that WinFS will be a feature included in Longhorn (code name for the next version of Windows client), that is not going to be the case. Microsoft has said that WinFS will be available on Windows platform at a future date. Everyone expected WinFS to be a part of Longhorn for years but recently Microsoft has made it clear that we should not count on WinFS to be released along with Longhorn.

Secondly, the information provided in this article may change because the storage system was not released to manufacturing at the time of writing. Although the information in this article is based on content that Microsoft has made publicly available, Microsoft reserves the right to change the information at any time without prior notice.

What is WinFS?
WinFS is the code name for a new type of file storage system that will be part of future Windows platform after Longhorn is released. The file system is revolutionary in the sense that it will allow us to manage data in a way that has never been possible in the past. It will change the way we think on how data should be stored. It will also make access to information seamless across multiple applications and formats.

Advantages of WinFS
One of the major problems that organizations face today is that they have all the information stored across their organization in disparate formats. Wouldn’t it be nice if we could search for content on our corporate network independent of the format in which the data was stored? That’s exactly the goal with WinFS. Users will be able to search for content based on the metadata of the stored item, so it wouldn’t matter whether the content was stored in Word, Excel, PowerPoint, or a PDF file. The type of document and the application that created the content will be irrelevant.

The list of types of data we store today on our computer is rather large. We not only store standard text documents but also e-mail contacts, music files, PDF documents, spreadsheets, graphics, videos, and so on. The newer WinFS technology, which is implemented using a relational database, will make it easier for us not only to locate the information but also to transfer that information to other stores on different computers. In addition, backups and restores would be more efficient, not only because WinFS uses database technology but also because of this ability to replicate data to stores on other computers.
 

Overview of WinFS
Each one of us seems to be using a different method to keep track of our data and over the years we have developed various methods that facilitate locating our content in a more efficient manner. For example, we find our own method of creating folders and organize data in a way that gives us quick access to the content. Let’s say you have hundreds of photographs from vacations, birthdays, and other special occasions and you want to organize them in folders in a way that they are separated yet easy to find. One way to do that is to store them in a folder that is labeled by the date, such that the folders are sorted numerically. Here’s an example.

2004_08_14
2004_09_07
2005_01_15
2005_02_12
2005_03_04

The above example lists the folders in Windows Explorer so they are sorted in a certain order, first by year, then by month, and finally by the date. Similarly, we can label the files so they are easy to locate. This is just one example. The items are categorized in a certain way. Typically, your camera software will name your files in a similar manner to make your life a bit easier. However, even this cataloging has limitations. Now you have tons of files or folders that have numeric numbers rather than text descriptions that better identify the pictures, such as “Matt’s 13th birthday party in Hawaii.jpg.” This description of the photographs, i.e. the metadata, is helpful in identifying the items themselves. In addition, there are other properties that are part of metadata, such as the date and time of the photograph that could be useful in finding the specific photograph.

Here’s how WinFS fits into this picture. WinFS stores information in a relational database where data is represented as a set of attributes (fields or columns) on an item (row) of a particular type (table). Unlike the current flat file system that we currently use, data is organized in a structured format which makes it easy to locate the information. The traditional file system in use today has a flat structure. If you want to identify a piece of data, such as a file, you have to use the entire path to locate that file. There are several disadvantages to the flat file system. It is cumbersome to identify data, it is slower, and the length of the path is limited.

The tables and rows mentioned above allow convenient manipulation of data in WinFS. In addition, WinFS provides object-relational mappings to let users view their data as an item. A WinFS item is the smallest unit of data that can be manipulated by users and applications. The use of items makes querying of data not only more logical but also more natural for users. Imagine storing all your pictures in a database so they can be sorted out quickly and accessed easily with a simple query, instead of using more complicated methods available today with today’s traditional file systems.
 
WinFS Architecture
If you take a closer look at the WinFS architecture you’ll notice that it’s made up of five core components: APIs, Services, Schemas, WinFS Core, and Data Model, as shown below in Figure 1.
 
Figure 1 – WinFS architecture
Figure 1 – WinFS architecture

APIs: The Application Programming Interface (API) is part of the WinFX programming model and allows access to stored files. This will help developers add query and searching capabilities to the applications.

Services: This component includes synchronization and rules. Synchronization will synchronize WinFS systems on your network as well as create bi-directional synchronization adapters that will allow you to synchronize WinFS with other systems. The integration of services to other technologies like Active Directory will make sharing of data between applications much more flexible.

Schemas: This is WinFS schema for most of the information you use, such as e-mail, appointments, multimedia, and documents. WinFS introduces the concept of a schema definition language to describe all WinFS types. There are predefined sets of schemas that are included in WinFS. You can define your own schemas or extend the existing schemas that are part of WinFS.

WinFS Core: Mainly made up of some basic operations and file system services like security, import/export and quotas.
Data Model: Includes the basic item structure, relationships, and the ability to extend them. More specifically it consists of the following five concepts to describe data structures and organizations.

• Types and subtypes.
• Properties and fields.
• Relationships.
• Constraints.
• Extensibility.

NTFS: So far all the indications are that WinFS will not replace NTFS, at least not in the beginning. Instead, NTFS will provide the foundation for WinFS. Unlike NTFS, WinFS will allow you to organize and locate files rather quickly because they will be stored with metadata that categorizes them using user-defined properties. This WinFS storage method will be in addition to the current method that NTFS uses to store files. If users don’t want to take advantage of the advanced features of WinFS, they will be able to stick with the current NTFS functionality. The bottom line is that WinFS and NTFS will work hand-in-hand to optimize Windows file storage system.
 
The Anticipated Arrival
There are going to be lots of rumors about the availability of WinFS in coming months and years. Already people are guessing that Microsoft will ship a WinFS beta version in late 2006. Instead of relying on rumors or news that have not been confirmed by Microsoft, I will only tell you what Microsoft officials have said so far publicly. At the time of writing, Microsoft has announced that WinFS will not be released with Longhorn. It will be released at a future date. Microsoft is refraining from giving any hints on what that future date might be.

According to Windows Server Chief Bob Muglia, WinFS will also not be a part of the server version of Longhorn that ships in 2007. "In terms of something major like WinFS, we still need to figure it out," Muglia said. As far as Longhorn release, Microsoft has said that it anticipates launching Longhorn sometime in 2007. Based on Microsoft’s track record, some will argue that it’s unlikely that the product will be shipped on time. The only thing that’s certain so far is that Microsoft has not given up it’s decade long dream of coming up with a storage system like WinFS and they are working hard to eventually offer this revolutionary file system storage on their Windows platform.

Copyright © 2003 - 2005 by McCann Enterprises LLC.