Hello team,
we are using Aspose Total Product Family license to generate multiple excel sheets from html for reporting purpose. Each sheet will have 10K data in it. In some scenarios data goes upto 1M/2M we end up generating 100 excel sheets. We thought of copying one sheet to another to form a single excel file with 1M data.
we have concern on memory utilization here. As i see most of the aspose operations are done in-memory. Can we try for 1M data load into a single excel sheet? will it cause any issue in production? Is there an option to flush it to disk whenever possible to avoid JVM issue?
You can do that via Aspose.Cells API for sure. However, please note, for Excel file (e.g., XLSX), a single sheet can have up to 1048576 rows and 16384 columns. For the XLS format which is the older format, it supports only 65536 rows and 255 columns. So, you should be aware of this limitation when inserting/copying data of MS Excel file formats. If you put all data in a single worksheet, you will get huge worksheet and surely when rendering such a spreadsheet via Aspose.Cells, the process might demand more memory and more CPU usage. Moreover, the final Excel file would be huge in size. Anyways, see the document on how to merge multiple worksheets data into single worksheet for your reference.
To cope with memory issues, you may try using MemorySetting.MEMORY_PREFERENC settings before writing large data into the worksheet(s):
In case, you find any issue, let us know with details, sample code and sample files, we will check it soon.