Re: [xml] xmlXPathEvalExpression slow

On Mon, Aug 08, 2005 at 01:59:32PM +0200, Jenssen, Bjørn Egil wrote:

Im using xmlXPathEvalExpression (in libxml) to select individual elements in an XML file, the problem is 
that it seems to be relatively slow, at least on the files im using (10mb+ in size). By slow i mean around 
0.25sec for each search, which is way too slow when I have to do thousands of these searches on each file. 
Is there any way to optimize these searches for big files?

  At libxml2 level, no except except you should precompile the XPath and
use xmlXPathCompiledEval.
  You nee to optimize your expressions, use ids for example. There is no
magic recipe, it all depends on your data and what you are searching for,
but 10mb+ probably means around 100MB in memory, and if you didn't optimized
your expression searches, crawling though this may take time, yes, no
way around.


Daniel Veillard      | Red Hat Desktop team
veillard redhat com  | libxml GNOME XML XSLT toolkit | Rpmfind RPM search engine

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]