Back when Windows Vista was still known as Windows Longhorn, the operating system contained a very interesting and promising feature, a feature promoted as one of the 'pillars' of Longhorn: WinFS. WinFS was a storage subsystem for Windows, based on a relational database, that could contain whatever data you wanted to put in it. Thanks to the relational properties of the database, you could then create relationships between data, or let the computer do that for you.
WinFS would allow programmers to do all sorts of wild and radical things with data in their applications, and back in 2003, during the Professional Developers Conference, Microsoft showed a video demonstrating what could possibly be done with WinFS. This video, called IWish [.wmv], can still be downloaded from Microsoft's website.
Sadly, the video only showed what you could do with WinFS in the future, because the version of WinFS that shipped with the Longhorn test releases back then was, well, disturbingly not useful. It did not do a whole lot of useful stuff back then, and to make matters worse, it was the world's worst resource hog ever. Disabling WinFS would turn your Longhorn build from a crippled snail into a fairly usable operating system - testament to its yet unoptimised nature.
We all know what happened to WinFS after its audience-woowing days of 2003. It was first slated for release after the final release of Windows Vista, as an add-on, but later on, in 2006, it was cancelled altogether. Parts of WinFS ended up in Microsoft SQL Server and ADO.Net, but it would no longer be delivered as a stand-alone product or a Windows component.
Since then, we haven't heard a whole lot on whatever happened to WinFS and its associated technologies - that is, until a few days ago. Jon Udell has published an interview with Quentin Clark, who led the WinFS team from 2002 until 2006, when he joined the SQL Server team as a general manager.
One of the burning questions that rang through forums everywhere was whether WinFS was a filesystem or not. Clark explains that it depends on your viewpoint:
People would often ask me if WinFS was a file system, and I'd struggle with the answer to that, because, well, you know, from a certain standpoint the answer is yes. The stuff I saw in the shell, was it in the WinFS filesystem? Well, OK. But there are no streams inside the database. So from a user perspective, those files were "in" the filesystem. But from an API perspective it was more nuanced than that. I could still use the Win32 APIs, get some file, open it, and from that point forward the semantics were exactly like NTFS. Because it was NTFS at that point.
|