Fast Searches

8/27/2004 9:06:16 PM

Fast Searches

Since WinFS is being delayed, Longhorn won't have full database capabilities in its filesystem when it ships; however, it will still provide integrated support for fast indexing.  An interview with Bill Gates today regarding the latest news (the delay of WinFS and Longhorn's ETA of 2006) mentioned that Longhorn's initial indexing capabilities will derive from a combination of Office's existing fast indexing support and some new search technology work going on in MSN.

While I was savoring Apple's Spotlight technology in next year's Tiger release of Mac OS, I forgot that Windows XP already provides fast indexing through Indexing Services and that Office had a variety of indexing solutions available since Office 95.

Indexing Services was really designed for use with IIS to provide search functionality for web sites, but you can use it to index and search your file system. Indexing Services needs to be turned on by enabling the "Indexing Service" and setting the Startup Type to "Automatic" on the Services tool found under the Adminstrative Tools program group.

Unfortunately, fast indexing is not currently integrated into Explorer's Search function or rest of the shell. You have to go to Administrative Tools, launch the Computer Management Console and Select "Services and Applications/IndexingService/System/Query the Catalog" to get a web-based interface to search your file system. There are very few options available, not even the ability to filter the search directory.

If you have Office on Windows 2000 or XP, you are in luck. The "File Search" command in the File Menu will use Indexing Service if it's enabled, but it's not on by default. You might also have to turn on "Fast Searching;" I am not sure if Office automatically detects the presence of Indexing Services.

I was pleasantly surprise to discover that Indexing Service consumes virtually no CPU time. The first few minutes when Indexing Service is first installed is CPU-intensive, since it needs to index the whole drive, but after that, the only time the service ever kicks in for indexing is when files of certain types are created or modified. Actually, I have never seen the CPU utilization level for the Indexing Service (cisvc.exe) above 0%. 

The nonexistent overhead of Indexing Services serves as a sharp contrast to my experience with both WinFS and Find Fast, the original indexing technology used in Office 95. (Later versions of Office now use Indexing Services.) The benefits of fast results that Find Fast offers was negated by the processing time consumed by indexing, while not searching. Similarly, the Windows File System service produces a noticeable degradation in Operating System performance, especially in machines with a low amount of memory (ie, 256MB).

There's probably money to be made for someone to provide shell integration of the fast searching capabilities inside Indexing Services, just as the recently acquired Lookout offered fast searching for Outlook.

 

Comments

 

Navigation

Categories

About

Net Undocumented is a blog about the internals of .NET including Xamarin implementations. Other topics include managed and web languages (C#, C++, Javascript), computer science theory, software engineering and software entrepreneurship.

Social Media