Model, RDFDataMgr, and RDFWriter use OutputStream and StringWriter. With the exception (I assume) of PipedOutputStream, they all seem to buffer the data in a byte array or String when converting Model content to a text file format. The maximum length of a Java String or array is the 32 bit int type, 2,147,483,647 bytes. I get the exception "java.lang.OutOfMemoryError: Required array length 2147483639 + 9 is too large". Is there a way to feed chunks of data from a Model into a PipedOutputStream, where the PipedInputStream provides the model content in a selected text syntax? Is there a simple way to split a Model into smaller Models, write those as text files, and merge those files back together?
I'm having trouble writing a large Model (36293418 statements) into a
file with a given syntax (e.g., TTL, RDF/XML). I'd appreciate ideas.
- Writing large models? Steve Vestal
- Re: Writing large models? Martynas Jusevičius
- Re: Writing large models? Andy Seaborne
- Re: Writing large models? Steve Vestal
- Re: Writing large models? Andy Seaborne
- Re: Writing large models? Andy Seaborne