xsl-list
[Top] [All Lists]

RE: Max size?

2003-01-08 04:07:48
If you are using xalan with large files look at SAX2SAX 
sample.  This uses streaming so it avoids building the data 
structure for the document as much as possiable. 
http://xml.apache.org/xalan-j/samples.html#sax2sax

This is a popular misconception. If you supply SAX input to an XSLT
processor, it will build its own tree internally. It will probably be
more efficient (in both time and memory) than supplying a DOM as input,
but the tree is still needed.

But as others have said, no respectable processor should have trouble
with 1Mbyte. At 10Mb you may need to start thinking about how much
memory to allocate, at 50Mbyte you may need to buy some more memory... I
have heard of Saxon users processing 100Mbytes successfully.

Michael Kay
Software AG
home: Michael(_dot_)H(_dot_)Kay(_at_)ntlworld(_dot_)com
work: Michael(_dot_)Kay(_at_)softwareag(_dot_)com  


If you are working on linux I found libxml2 to have similar 
performance to MSXML3.0 on files of about 1Meg size but have 
not tested it on anything larger.  It can be found at. 
http://xmlsoft.org/

Edward Middleton

-----Original Message-----
From: Peter Finch [mailto:peter(_at_)homepla(_dot_)net]
Sent: Wednesday, January 08, 2003 6:39 PM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Max size?


Hi Heinz,

 > I have a "hypothetical" question.  If I were to generate 
very large XML  > files (upwards of 1 Meg?), would I 
encounter problems when processing with  > XSLT, considering 
that I would want to sort on various elements.  >  > We are 
busy doing some tests and I would be interested to compare 
our  > results to existing findings. (We are using 
xalan/xercses on Linux).

It Depends on your machine, parser and the style sheet, but a 
1 Meg XML file should not be a problem. Some of my customers 
work with BIG files... 10's to 100's of Meg and more (believe 
it or not).

I recently did some work on a 157Meg document. Of all the 
parsers I tried I have to admit the one from Microsoft 
(msxsl) flew and used up a relatively small amount of memory 
so I can recommend it as a place to start looking (Hats off 
to the guys-n-girls at MS for that one at least).

On a Dual AMD1400 with 512meg RAM a 13 Meg XML 5 Seconds and 
a 157 Meg XML file took about 4 minutes with memory usage 
peeking around 380Meg. It's all about memory as (I think) 
most of the parsers build a tree in memory before they 
starting to processes the transformations.

I'm pretty sure most of the Java based pasers will have no 
trouble with a 1Meg(ish) document.

I hope this helps.

Cheers,
Peter

-- 
    ___
   (OvO)
   /:::\
   \|:|/
/--m-m--------------------------------+
| Peter Finch (p(_dot_)finch(_at_)homepla(_dot_)net)   |
| Home Planet Software                |
| http://www.homepla.net/             |
/-------------------------------------/




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>