Maximum spreadsheet dimensions supported

Tags: #<Tag:0x00007f8b2b016068>

Hello,
I found during my research the great handsontable library. I need for a project a really large spreadsheet (12000 rows & 86 columns). I experienced already performance issues when i have 4800 rows and 60 columns, even i followed your performance docs.
What is the maximum dimensions you suggest to work with?
I did performance measuring with firefox and saw that the functions getVisibleRowIndex() and getVisibleColumnIndex() needed the most time.

Hi @t_weiss
We do not have a magical number of rows and cols that can refer to maximum table size. There are many aspects that influences the performance like:

  • calculation (formulas/summary calculation)
  • additional styling (CSS, customBorders, internal styles added by renderers/cells method)
  • types of cells (dropdown list, data/time cells)

If your table is lagging at 4800 x 60 I guess you have something more there than just a solid data and I also think that there could be something that we can do to speed up the table a little bit.

When it comes to Handsontable performance currently there are 11 issues related to performance at our Github board and each of them is highly valuable as the performance depends on dozens of factors.

Please let me mark this issue as an improvement suggestion for our developers.

thanks for your quick response.
I don’t have cell styles, formulas. All cells are of type string.
You know when the performance issues will be fixed?

We did some improvements year ago but I think that after the tasks we have for Q2/Q3 we can think about this case again.

Here you can check what’s we’re doing now: https://trello.com/b/PztR4hpj/handsontable-roadmap-2016-login-to-vote-for-features

what about managing a table with 3175 rows and 871 columns for each row ?? Do you think is possible?

I mean, did you test such amount of rows/columns ??

I’ve successfully loaded tables with about 1.2 millions of cells (12 rows and 100000 columns per row)… but the previous mentioned one (which holds about 2.7 millions) seems impossible to me = the browser hangs up.

(All cells containing float numbers)

https://jsfiddle.net/frhp2v7w/ < it loads (not instantly, but but that bad).

However, the golden rule for the performance is not only in the number of rows and columns. It is also related to

  • container size
  • styling attached
  • types of data
  • formulas and cell dependencies
  • hooks being called

So in some cases you may find 1000x10 working really slow while having a similar instance with larger data working smoothly.

1 Like

Thank you so much for the provided fiddle

you’re welcome @fjrial