Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic

Re: Spreadsheet::XLSX memory and speed

by jmcnamara (Monsignor)
on Jun 08, 2012 at 22:49 UTC ( #975250=note: print w/replies, xml ) Need Help??

in reply to Spreadsheet::XLSX memory and speed

I'm working on a module called Excel::Reader::XLSX that aims to parse XLSX files without the memory overhead of Spreadsheet::XLSX (which is inherited from the design of Spreadsheet::ParseExcel).

It isn't CPAN quality yet but it reads large XLSX files with a small and constant memory usage (it holds only one row of data in memory at a time). It also runs at a comparable speed. *

I haven't settled on the final API yet and it is quite limited in functionality but if you are, or anyone else is, interested have a look on GitHub.

* I'm using XML::LibXML::Reader for parsing but I had to profile and optimise the initial code heavily to get to within 5-10% of the regex parsing in Spreadsheet::XLSX.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://975250]
[james28909]: it would be to much work just to get around renaming three subs lol
[james28909]: but you could put it all in one sub and return the same data type that was inputted. i could write a small example maybe
[Lady_Aleena]: Their uses are also vastly different.
[Lady_Aleena]: The first two make hashes and arrays from a file, the third returns data from a pre-existing hash.

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (6)
As of 2017-05-24 05:06 GMT
Find Nodes?
    Voting Booth?