April 3, 2005

XML Indexing Article went live

Part 1 of my "Indexing XML" article went live at the MSDN XML Dev Center. In this article I discuss various aspects of indexing standalone XML documents - XML IDs, XSLT Keys and introduce IndexingXPathNavigator class, part of the Mvp.Xml library, which enables lazy or eager indexing of any IXPathNavigable XML store (XmlDocument, XPathDocument or XmlDataDocument) thus providing alternative fast way to select nodes directly from the index table and not searhing the XML tree. This allows drastically decrease selection time and improve scalability on preindexed selections.

Here is benchmark results on searching 1000 random orders by order ID from differently sized XML documents using XmlDocument, XPathDocument and IndexingXPathNavigator:

'nuf said.

Any comments are welcome! In the next part of the article I'm focusing on XML indexing aspects of the SQL Server 2005.

April 3, 2005 10:08 PM | #XML in .NET
Comments

akheris, I'm really glad you like it.
WRT BbuildIndexes() I'm not sure actually. Probably in server scenario with lots of complex keys and huge XML document it would make sense to prebuild indexes, e.g. at app initialization time, so even first access will be fast.

Posted by: Oleg Tkachenko at May 18, 2005 12:21 PM

Excellent article. I work for Webdata. Although I dont work with Navigators, the indexing navigator is cool. One question though, do we really need a public BuildIndexes method?

Posted by: akheris [TypeKey Profile Page] at May 17, 2005 7:39 PM

That looks terrific man. I am looking forward to read it.

Posted by: Sonu Kapoor at April 18, 2005 6:21 AM
Post a comment




Remember Me?