Optimizing Memory Usage while Working with Big Files having Large Datasets

Optimizing Memory

The following example shows how to optimize memory usage while working with large data in Aspose.Cells for Node.js via Java.

Caution

The default option, MemorySetting.NORMAL is applied for all versions. For some situations, such as building a workbook with a large data set for cells, the MemorySetting.MEMORY_PREFERENCE option may optimize the memory use and decrease the memory cost for the application. However, this option may degrade performance in some special cases such as follow.

  1. Accessing Cells Randomly and Repeatedly: The most efficient sequence for accessing the cells collection is cell by cell in one row, and then row by row. Especially, if you access rows/cells by the Enumerator acquired from Cells, RowCollection and Row, the performance would be maximized with MemorySetting.MEMORY_PREFERENCE.
  2. Inserting & Deleting Cells & Rows: Please note that if there are lots of insert/delete operations for Cells/Rows, the performance degradation will be notable for MemorySetting.MEMORY_PREFERENCE mode as compared to the MemorySetting.NORMAL mode.
  3. Operating on Different Cell Types: If most of the cells contain string values or formulas, the memory cost will be the same as MemorySetting.NORMAL mode but if there are lots of empty cells, or cell values are numeric, bool and so on, the MemorySetting.MEMORY_PREFERENCE option will give better performance.