Using WinFS in Codename Longhorn 4074
Using WinFS in Codename Longhorn 4074
UPDATE
News broke on 27th August 2004 that WinFS would not be included in Windows Vista.
However, WinFS is still very much a part of Vista, as it will be developed for the Vista Server (2007), and it will also be adapted for Windows XP, Win 2k3, and Vista Client at about the same time.
The non-inclusion of WinFS in the future builds is certainly a disappointment, but contrary to many reports, WinFS is NOT dead, and will ship in 2007 (or thereabouts).
.........................................................................................................
UPDATE
April 19th, 2005
With WinHEC 2005 just a few days away, probably with a new Longhorn build not including "WinFS", this information is starting to be a little out of date.
However, many of the basic concepts of WinFS, including the Search tools, "static sets", "dynamic sets", and others WILL in fact be included in the forthcoming Operating System, albeit under different names, and not included as functions of the File System itself.
For a more up-to date look at the capabilities previously included in the WinFS "pillar", please check out this post in Longhorn News:
Info about Stacks, Fast Search, and Virtual Folders in the current (5xxx) Longhorn builds
The PROneTworks Vista Team will of course keep you up to speed as new information becomes available.
.........................................................................................................
Activating WinFS in Longhorn Build 4074
The following procedures to activate WinFS in 4074 may or may not work in earlier Longhorn builds.
WinFS & NTFS
We've all heard the mantra of how WinFS is an add-on to NTFS, blah-blah-blah. But what does this actually mean in practice ?
It means that WinFS just uses the standard Windows folders system to search for information !!
Information is stored in standard NTFS folders, and WinFS searches through the folders to find the information. But Longhorn and WinFS incorporate something known as the Set, which will function in the explorer UI much as a folder does, although items contained in the various sets need not exist in separate folders, and may even exist in a single folder, My Documents for example. Relationships are the means whereby WinFS communicates with NTFS, and will let explorer display both Sets and Folders in the explorer window.
WinFS is still very much a Work in Progress nevertheless, and its most powerful capabilities are not yet activated in this build of Longhorn. In future builds, WinFS will organise your personal files according to the following basic structure :
1) Sets will contain multiple items, as folders do in NTFS
2) Items may exist in one or many sets, in one folder, or may be copied as usual into another folder.
3) Explorer will know about the different sets, and be able to display them separately, much as it does with different folders in previous versions of Windows.
Importantly, there will be different themes (or whatever they will be called), so that sets containing similar types of information will be displayed as a group (for example, sets of music files, or sets of image files, et cetera).
These Sets will organise your data by the creation of several lists of items for each user linking to each single item in the computer. Items will continue to exist in folders, and the link between an item and its parent folder is called a holding relationship. If you have difficulty visualising how a Set will work, a useful analogy would be to compare it with a list of Shortcuts linking to items in a folder or several.
Another important point is that WinFS is designed to only work within the bounds of each user's "My Documents" folder, although it will probably be possible in Beta to include whichever folders you want, and to get the currently functional WinFS functions up and running on your computer, you will need to properly define this folder in your Registry, and you will also need to reorganise the data structure that you use to organise items in your computer.
How to organise your data for WinFS
The first step to activate WinFS in 4074 is to reorganize the data structure of your computer, so that all your relevant data folders are held in a single meta-folder. You can call it "My Folders" or use whatever name you want, but you should currently avoid using the standard "Documents" or "My Documents" folders, as it is likely that you will need to reinstall LH in the future, as and when new builds are leaked for example, or if you decide to uninstall Longhorn completely. You don't want to lose all your personal data at the same time as you do this !!
The holding folder doesn't need to be in the same partition as LH, although we would recommend that it is in a primary partition of one of your HDDs. If you have your data files in a dedicated partition, you can try copying the (empty) "Documents" or "My Documents" folder from the LH partition to the data partition, to preserve the standard LH-defined folders structure contained there, and move your data into the new meta-folder. However you do this, it is vitally important for WinFS that all your user documents be located in a single easily identifiable folder.
One remark : if you are used to dividing your hard drives into several partitions, you should reconsider this practice in the light of how Longhorn and WinFS work, as there is a strong possibility of performance downgrade in a multiple partition HDD environment. Ideally, for best Longhorn and WinFS performance, you should have a single partition on each HDD that you have installed.
A related issue is that Longhorn and WinFS will function more quickly in a data structure containing small numbers of data folders instead of large numbers. It's a fact that, in every version of DOS and Windows so far, the multiplication of data folders causes some systems slowdown, by giving explorer more work to do. In Win 95 and later this hasn't been much of a problem, as the AT and ATX generations of computers were easily able to handle the systems slowdown generated by folders multiplication, so that the slowdown was virtually unnoticeable on most computer systems. However, in Longhorn, because of the combined demands made of NTFS, WinFS, Avalon, and explorer, the slowdown is exponentially increased, and has once again become an important issue.
To such an extent that Microsoft is starting to take steps to reduce the numbers of folders that users will create on a day-to-day basis. The basic procedure of data organisation in future builds of Longhorn, not 4074 unfortunately, will be that files and data will all be kept in a very small number of basic folders, "My Documents" and others, and that it will be organized into Sets which will appear in Windows Explorer similarly to the appearance of folders in previous versions of Windows, except that the data structures will be held in WinFS not NTFS, and that there will be no proliferation of user-created folders, which will be a significant step towards making Longhorn faster than XP when the full capabilities of WinFS are realized by the MS development teams.
Although it is still not possible in 4074 to take advantage of these new data storage procedures, it is already possible to take some steps to improve the performance of Longhorn, by holding all of one's personal folders in a single meta-folder as described above. This re-organisation significantly helps to decrease the amount of work explorer needs to do in the background, by decreasing the number of folders WinFS, NTFS, and explorer will need to process in each basic background process.
WinFS expects user-created folders to be put into strictly defined areas of NTFS, so that it's powerful Search capabilities are not required to go through the whole HDD looking for three files (and it's possible that the New Folder creation protocol was disabled in 4074 as a clumsy means of preventing unnecessary folders multiplication in current Longhorn installations). WinFS expects you to put all of your personal files under a single personal header, so that you can search for what you are looking for in a small area of your data, without having to go through the Windows folder and et cetera, not to mention areas of the database having nothing to do with you whatsoever. You can help WinFS, Longhorn, and yourself by ensuring that your data is generally organised in your HDD as described in this document.
This is a particularly critical element for Longhorn in a multiple-user environment, as each user will be accessing his or her personal WinFS data ONLY, which will significantly lower the strain on the operating system, and will help provide increased speed for the system as a whole. WinFS almost gives each individual user his or her own file storage system, so that multiple users connecting to the computer at the same time won't need to put multiplied levels of strain on the File System, and will help the OS function more quickly, as files, data, and items relating to multiple users will all be held in the same area of the HDD, so that all items will be accessed more quickly, and with less overall strain on the computer system.
The NTFS & WinFS database system can almost be pictured as a Set of databases (WinFS user data) organised by the Operating System into the higher level NTFS database :
N|
. |--------------------- WinFS data (Admin) --- Sets
T|
. |--------------------- WinFS data (User 1) --- Sets
F|
. |--------------------- WinFS data (User 2) --- Sets
S|
^^^ . . . . . . . . . . . . . . . . . . . . . . . . . . ^^^^^^^^
Files ------------------------------------ Relationships
(caveat : this is not an accurate representation of WinFS as such, it's a graph to aid in understanding the WinFS user experience)
Unfortunately, WinFS is still not powerful and well-developed enough to function in a satisfactory manner without a strong reliance on the ability to organize one's personal files into separate, user-created folders.
Activating "My Documents" for WinFS
The second step to activate WinFS in 4074 is to redefine the meta-folder created in the previous step as your "My Documents" folder in the registry. The location of the default folders can be found by running regedit, and going to the following key :
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
Modify the string value named "Personal" so that it contains the path to the meta-folder you have created to include your personal folders. If you have a dedicated data partition, you should be able to just use the path to the drive letter or user-defined name of that partition.
This action will declare this folder to your personal "My Documents" folder, and will enable the currently enabled WinFS features of Longhorn.
As always, we remind you that changing the registry is a potentially dangerous operation, and to proceed with the usual caution.
It has been brought to our attention that one cannot directly change this setting using regedit, but that it must be changed using third-party TweakWare (otherwise Longhorn automatically restores the default settings at boot). I personally use software called X-Setup Pro, which can be downloaded for free from the publisher's website.
Make sure that you have not disabled WinFS, and if you have done so we advise you to reactivate it now, in order to take advantage of the WinFS features in Longhorn 4074.
Letting WinFS catalogue my personal data
The third step is to use Longhorn as your main OS, temporarily at least, or otherwise leave it up and running on your secondary computer, for a few days or weeks, depending on how powerful your system is. This will let WinFS catalogue your files for file searching. Unfortunately, WinFS is still buggy, and it will catalogue your entire system, including files contained in partitions dedicated to Windows XP (for example). This is why data cataloguing takes such a long time in the current build.
Be warned that this process will create the following side effect :
100% CPU usage
Many users have commented that using Longhorn appears to cause 100% CPU usage, and have suggested that this is a bug. There is even a common "Tweak" of Longhorn, whereby you can deactivate WinFS for enhanced performance.
100% CPU usage, or otherwise high CPU usage, has two main causes : Avalon and WinFS data cataloguing.
What WinFS is doing as it slows down your system is to catalogue every single file you have on your HDDs so that WinFS will be able to search them. This is a Longhorn feature, although it is certainly still buggy, as the process ought not to catalogue all of your system data, but it should only catalogue user data, as defined by the user profiles existing in the system.
The good news is that the high CPU usage generally occurs in CPU "downtime", so that WinFS will catalogue your data in the background, and not seriously interfere with the performance of your active software. For instance if you are writing a document in Word, you will be making little use of your CPU, and WinFS will quietly work in the background. OTOH if you're playing an intensive game of Doom 3, your CPU usage will be high, and WinFS may possibly interfere somewhat with your gaming pleasure.
The better news is that the data cataloguing process will eventually finish, and all the existing user data in your system will be properly catalogued. The WinFS-related high CPU usage side effect will no longer occur, and the existing WinFS features of Longhorn will then be fully enabled (unfortunately, Avalon-related high CPU usage may continue as before).
Please note that, depending on your system specs, the process can take several days of up-time to perform, perhaps even several weeks ... although in future Longhorn builds, with less buggy versions of WinFS, the process will be much faster than it is in 4074, as it will no longer process system files, setup files, and other non-user files.
Also note that WinFS file cataloguing is not the same thing as the Windows file indexing service, and that WinFS operations do not require the HDD indexing service to be activated. We recommend that WinFS users do not activate the HDD indexing service, as it will merely slow down Longhorn 4074 with no attendant advantage.
Forget about WinFS for a few days, but keep Longhorn up and running
after a while, you can start using WinFS.
...
Back again ? Oh OK, then let's take a look at the three basic types of WinFS items, and how we can use them, in an ascending order of difficulty : the Folder, the dynamic Set, and the Static Set
The Folder
Folders are the well known means of organizing data into easily retrievable clusters. There is little new about folders in 4074, apart from the well-known bug that prevented easy new folder creation.
See Here !!! for information about how to correct this bug.
It's possible that in future builds, folders will be more fully integrated into the WinFS system than at present.
The Dynamic Set ; or, the WinFS Search utility
Dynamic Sets are Sets created by users, but are not normally intended to be permanently stored in the database. Translated from Microsoftese into English, it means that a Dynamic Set is what you get out of the Longhorn Search utility...
But how exactly does WinFS search work ?
It works in two ways.
1) It's a meta-string-finder, so that it can find all files containing references to, say, "Longhorn" within the defined search parameters, usually in the "My Documents" folder as we have defined it in the LH registry above. Wider Search possibilities are enabled, as well as the Classic Search utility, and we will look into this in more detail in a later post.
It groups found items into various file types on the results page, so that all image files are grouped together, Word documents, et cetera.
2) It should automatically associate files contained in Sets carrying a certain string to that information, so that all files inside a "Longhorn 4074" Set should be found by searching for "Longhorn".
Similarly, if Joanne searches for "Photos" she should theoretically discover images contained in a folder called "Joanne's Photos", as well as photos contained in her personal Photos folder, although this idoes not work as advertised in Longhorn 4074. LH Search usually still doesn't know how to associate items contained in a folder with the names of the folders, although sometimes this feature does work :
For example, if you run the 4074 Setup program from a boot CD/DVD, and you have drivers contained in a folder identified by a string including "driver", 4074 Setup can detect any device drivers that may be contained in such a folder, and can automatically install the relevant drivers to your OS.
It is to be hoped that future builds will further enable these powerful search capabilities.
The WinFS Search utility has been designed around the concept of local, but very detailed Search capability, and the way to use it is to either search in the My Documents folder, as activated herein, or to restrict your search to certain specific folders where you know the information resides.
By keeping all of your user data within your user-defined My Documents folder, you will be able to Search the entirety of your personal database for the information you need, without having to worry that it will be hidden away in some folder you've completely forgotten about ... and without having to worry about the sytem giving you a Search result having nothing whatsoever to do with your personal info.
WinFS will eventually use both NTFS and the user account system to discover what you're looking for, so that if Joanne is looking for "Photos", WinFS will know that "Joanne" is a User and restrict its search to that area of the HDD, ie folders and Sets related to that user profile only, and will be able (in that area) to discover images in her personal database (the "photo" string being defined as a WinFS keyword linked to various file formats, and defined by various WinFS Relationships).
If I want to organize all of my documents about, say, elephantiasis, all I need to do is create a sub-folder, or preferably a Set, in my personal area of an HDD called "Elephantiasis". WinFS Search will then allow me to quickly and efficiently locate all of my files about the subject, without giving me access to some other user's (really stupid) files on the same subject ...
The Static Set
Unfortunately, Static Sets in Longhorn 4074 are seriously buggy.
The basic protocol to create and use a Set exists : right-click on desktop or in explorer, New, Static List ; and an item is created. You can right-click on the item in explorer, choose Explore, and a window will open.
You can then copy items from a folder to the Set, and these items may or may not be copied there, although in actual fact it is shortcuts that are being created, displayed as items in explorer. But the feature is VERY buggy, the Set will not usually behave as it should do, and this is where the WinFS bugs really start kicking in ...
Attempting to use and view a Static Set may cause explorer to hang, and the feature is basically unusable for most daily tasks, so hang on to your folders guys, you're gonna need 'em ...
Still, by following these procedures you can at least get a glimpse of what Microsoft is aiming at, which is interesting in itself.
WinFS keywords information
In explorer, right-click on a file, and select properties. Click on the Details tab. This will show you lots of WinFS info about the file. Works best with properly constituted .docs and music files.
Note that this shows keywords information. We are currently unaware of any easy method of adding keywords to documents or groups of documents, however you can test this feature with an Office document.
For example, open a Word doc (or two or three), click on Properties :
You'll see a keywords entry. Enter some keywords, including something as unlikely as "WinFStesting123"
Save, exit.
Search in "My Documents" or whichever main folder you use for "WinFStesting123"
...
Magic !!!
This thread will be kept updated as and when new information emerges.
PROneTworks Longhorn Team
Last edited by JabbaPapa on Fri Jul 22, 2005 5:00 pm, edited 30 times in total.
- JabbaPapa
- Posts: 9538
- Joined: Sun Feb 22, 2004 5:17 pm
- Location: Monte-Carlo
- Real Name: Julian Lord
An extra WinFS Search tidbit ...
Perform a Search. When you have the results, Click on :
View > Group by > In folder
This will display the items in handy little sub-windows including the folders path. This is the closest I've come to making a refined WinFS search. I understand that it will be possible to make a second search inside the search results. If it's possible now, I haven't found out how ...
Hmmmm I can actually see this start being useful !!!
- JabbaPapa
- Posts: 9538
- Joined: Sun Feb 22, 2004 5:17 pm
- Location: Monte-Carlo
- Real Name: Julian Lord
Quite a worthy achievement, Julian. Your efforts were certainly not in vain. I believe many will benefit from this information throughout the development of Longhorn. Bravo.
I am printing this out and putting it in my 3-ring binder. I highly recommend the same to all.
I am printing this out and putting it in my 3-ring binder. I highly recommend the same to all.
- phileysmiley
- Media Director
- Posts: 13745
- Joined: Mon Jun 21, 2004 4:20 pm
- Location: Delray Beach FL USA
- Real Name: Larry Richman
Thanks for the kind words !!
One issue that's been bothering me though : when MS actually do get WinFS up and running, it's going to become much harder to maintain a XP/2K/2K3 multi-boot system with LH, because the previous operating systems will not have access to WinFS, and items stored in Sets will just look like a confused mass of files heaped up in My Documents (or wherever).
I wonder if Microsoft have any plans to enable the previous OSs, or Win 2K3 at the very least, to talk with WinFS ?
One issue that's been bothering me though : when MS actually do get WinFS up and running, it's going to become much harder to maintain a XP/2K/2K3 multi-boot system with LH, because the previous operating systems will not have access to WinFS, and items stored in Sets will just look like a confused mass of files heaped up in My Documents (or wherever).
I wonder if Microsoft have any plans to enable the previous OSs, or Win 2K3 at the very least, to talk with WinFS ?
- JabbaPapa
- Posts: 9538
- Joined: Sun Feb 22, 2004 5:17 pm
- Location: Monte-Carlo
- Real Name: Julian Lord
I think you will find that longhorn will be an isolationist OS as part of the security measures, you may be able to use a lot of the apps and programs from a lot of the others but I don't hink there will be much cross communication that way. To easy to take advantage of a issue in one of the others to get to Longhorn then. Just a thought
- jackslap
- Posts: 500
- Joined: Sun Dec 21, 2003 2:15 pm
- Location: Nova Scotia, Canada
- Real Name: Ian M Campbell
Some members have reported that the WinFS file cataloguing 100% CPU thing slows down their system, despite the fact that it occurs essentially in CPU "downtime". This is because the cataloguing uses virtual memory, and the system keeps on automatically increasing the size of VM allocated as the process unfolds.
Here's a workaround, which will also help improve the overall performance of your LH system :
Right-click on computer > Properties > Advanced > Performance > Settings > Advanced > Virtual memory > Change
Select Custom Size
Initial 256 MB
Maximum 384 MB
Here's a workaround, which will also help improve the overall performance of your LH system :
Right-click on computer > Properties > Advanced > Performance > Settings > Advanced > Virtual memory > Change
Select Custom Size
Initial 256 MB
Maximum 384 MB
- JabbaPapa
- Posts: 9538
- Joined: Sun Feb 22, 2004 5:17 pm
- Location: Monte-Carlo
- Real Name: Julian Lord
Return to General Windows Support
Who is online
Users browsing this forum: No registered users and 4 guests