I’m using Aspose.Cells to create some large Excel files (400,000+ rows) and I was wondering what the quickest way to save/create the files would be. Creating the Aspose workbook object and populating it with data goes quickly, but my problem currently is that running the workbook.Save() function can take a long time. For 400k rows, this can take 75 seconds or longer.
My question is, what is the fastest way to actually save the file to disk once I’ve created the workbook and populated it with data? I’ve tried both saving the data directly to the disk, and also saving it to a MemoryStream first and then to disk, with no performance improvements. So it doesn’t seem like Disk I/O performance is the bottleneck. Is there a preferred way to do this when working with large datasets? I’m using Aspose as the back-end for a web interface that allows users to export large datasets to .xlsx format, so any speed improvements are worth pursuing since we all know how impatient people are nowadays when using the web.
Let me know if my question wasn’t clear, and any help is appreciated. Thanks.
Hi Stephen,
Thanks for your posting and using Aspose.Cells.
Please download and try the latest version: Aspose.Cells for .NET 8.2.2 we have incorporated lot of performance improvements in the recent versions and also we have recently improved the performance of reading of large Excel files.
Please also create a standalone console application project with the latest version that shows the performance issue on saving the Excel file. For example, you can create a large dataset and import the data inside it using the approach mentioned in this article
and then compare the performance difference of saving the final Excel file. We will run the application at our end and observe it and provide it to development team so that performance on saving could be investigated and improved.
Thanks for your cooperation.