There's an interesting WinFS team beta 1 vid available
here, although it is an hour long!
Here's an overview of what is covered:
- The interviewer suggested ditching the Registry and using WinFS. It's not a short term goal, but it could be on the cards in the future to implement the Windows Registry in a more WinFS like fashion, making it easier to migrate data, applications, etc.
- As far as end users are concerned, they shouldn't even know WinFS is there. Essentially applications will use WinFS, not users, although the end result is a benefit to users.
- WinFS download should be about 30MB to 40MB, so we're looking at something similar to the .net Framework.
- WinFS intermixes the concept of the filesystem, whereby you're storing streams of data, and also information in a row/table fashion as you'd find in a database.
- A Word file is loaded from within the WinFS database, so existing applications can use WinFS, with the benefits of WinFS aware applications being able to make use of the more advanced features available.
- A demo application is then run which shows files based on time and category. Looking very much like a gannt chart, data is laid out in a way very different to the folder/file structure we're used to. Files can be related to each other, so that when a file is open, related files can also be listed.
- Using pictures as an example, if you have multiple pictures of the same thing, you can use one image to be representative of the rest. This relationship can then be used in other applications.
- Just as ‘legacy’ applications see WinFS stored data as they would an ordinary file system, network machines without WinFS installed will just see files. Obviously, WinFS features and relationships are unavailable on a machine without WinFS installed.
- If you're viewing the contents of the WinFS, internally they are represented differently, but they can be presented in the file/folder fashion that we're used to.
- Backing up is easy. Drag and drop, data and WinFS info will be copied.
- Unlike a filesystem, a database can apply queries that are relationship aware, so you can construct complex, specific search queries that can return useful results.
- Queries can be built, saved, and reapplied within different applications. As the data within WinFS changes and is added to, the results of the queries will change.
- WinFS aims to create a feel whereby the data is organising itself.
- Using relationships, if you want to see items of a particular subject/type/etc, you can then see items of data related to those. So if you want to find certain people, you can then also see items related to those particular people.
- A huge number of applications have their own custom data stores sat on top the filesystem. WinFS aims to provide a data store that all applications can utilise, making sharing and relating information between different applications easier.
- Just as users shouldn't realise they're using WinFS, Microsoft hope that developers will start using WinFS seamlessly, without having to think too database-centric.
- What happens if corruption occurs? In terms of the database, if certain data pages get corrupted, your database is can be knackered. The WinFS team have worked on what needs backing up, where to, how to identify corrupt data and correct/restore it. This will provide reliability that will require little in the way of user intervention.
- If WinFS becomes popular, virus writers and hackers may seek to find security holes and exploits in it. However, the WinFS team do have that in mind, considering antivirus measures and so forth during the development process.
- There isn't a strict roadmap to the release of WinFS any more. Beta 1 seeks early feedback, with more betas to come in due course.
- WinFS will be out between Vista and the next major Windows client (not a very specific time frame, then!)
- A C# program was demonstrated, combining the Opath string query language for the WinFS interaction, although they will be moving towards SQL style queries, given its familiarity amongst developers.
- Attendees of PDC will be able to get hands on with WinFS to see what potential it has, and also discuss development issues.
My thoughts? WinFS looks to have a lot of potential, and if MS can get developers on-board writing applications that will utilise the features of WinFS, the way we access our data could change dramatically.