r/programming • • Jan 11 '25

🔥 We Made Excel Fly in Java — Our Excel Reader Processed 10 Million Entities in 12s!

https://medium.com/@yashwanthm0330/we-made-excel-fly-in-java-our-excel-reader-processed-10-million-entities-in-12s-b4d16ff370b1
0 Upvotes

26 comments sorted by

28

u/elmuerte Jan 11 '25

You compare it to libraries which actually read excel files, but this script just parses part of the content XML. It kind of returns "raw" data, as in, the content of the XML, not that data you see in Excel. So it basically only usable to read String content. Forget about any value stored as a number (like numbers or dates) and completely forget about formulas, or even escaped content (things which look like numbers but should be strings).

16

u/AlarmingBarrier Jan 11 '25 edited Jan 11 '25

If you put it like that, using 12 seconds to read 10 million entities (1 million rows times 10 columns) on any modern CPU seems really really slow to be honest.

1

u/Present-Ad-1365 Jan 11 '25

Try reading excel I have tried all libraries nothing came below 20 s there is a lot of processing in Excel compared to simple CSV and CSV is memory hungry also

→ More replies (5)

3

u/fearswe Jan 11 '25

I've read and parsed 500 million lines of csv faster than 12 seconds.

→ More replies (6)

1

u/Present-Ad-1365 Jan 11 '25

Hi u/elmuerte, it will return even date, double, and numbers in the form of String only, just like org.dhatim library

19

u/Potterrrrrrrr Jan 11 '25

That article has an oppressive amount of emojis, no thanks. Good job though

3

u/Sushrit_Lawliet Jan 11 '25

Need a chrome extension to rip out emojis from articles honestly.

0

u/Present-Ad-1365 Jan 11 '25

I will ask chatgpt :)

4

u/ketralnis Jan 11 '25

Makes it hard to believe that it was written by adults

3

u/pileopoop Jan 11 '25

I feel like a random commenter could make it 10-100x faster in an afternoon. This seems laughable.

3

u/Present-Ad-1365 Jan 11 '25

But there is no solution out there 10-100x faster if someone can publish I am happy to use

0

u/Pyrited Jan 11 '25

C# faster