Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

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]
[stevieb]: for the first time ever, I will have 100% of the documentation and unit tests written for a new distribution before writing even a single character of the C or Perl code required :)
[hippo]: Congrats. I expect the resulting code to be rock solid. :)
[stevieb]: Thanks hippo, as do I, as if it's not, hardware peripherals or sensors could be destroyed (code has to be reliable when dealing with input/output voltages)

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (13)
As of 2017-01-20 16:46 GMT
Find Nodes?
    Voting Booth?
    Do you watch meteor showers?

    Results (176 votes). Check out past polls.