Optimera minnesanvändningen vid arbete med stora filer med stora dataset

Optimera minne

Följande exempel visar hur man optimerar minnesanvändningen vid arbete med stora data i Aspose.Cells för Node.js via Java.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//This example shows how to optimize memory usage while working with large data in Aspose.Cells for Node.js via Java
var aspose = aspose || {};
aspose.cells = require("aspose.cells");
var workbook = new aspose.cells.Workbook(aspose.cells.FileFormatType.XLSX);
// apply the setting to existing "Sheet1"
workbook.getWorksheets().get(0).getCells().setMemorySetting(aspose.cells.MemorySetting.MEMORY_PREFERENCE);
// apply the setting globally
workbook.getSettings().setMemorySetting(aspose.cells.MemorySetting.MEMORY_PREFERENCE);
// Input large dataset into the cells of the worksheet. Your code goes here.
workbook.save("output.xlsx");

Försiktighet

Standardalternativet MemorySetting.NORMAL tillämpas för alla versioner. För vissa situationer, som att bygga en arbetsbok med ett stort dataset för celler, kan alternativet MemorySetting.MEMORY_PREFERENCE optimera minnesanvändningen och minska minneskostnaden för programmet. Detta alternativ kan emellertid försämra prestandan i vissa specialfall såsom följer.

  1. Åtkomst av celler slumpmässigt och upprepade gånger: Den mest effektiva sekvensen för att komma åt cellernas samling är cell för cell i en rad, och sedan rad för rad. Särskilt om du får åtkomst till rader/celler via uppräknaren som erhållits från Cells, RowCollection och Row, kommer prestandan att maximera med MemorySetting.MEMORY_PREFERENCE.
  2. Infoga & Ta bort celler & rader: Observera att om det finns många infogningar/raderingar för celler/rader kommer prestandanedgraderingen att vara märkbar för MemorySetting.MEMORY_PREFERENCE-läget jämfört med MemorySetting.NORMAL-läget.
  3. Arbete med olika celltyper: Om de flesta cellerna innehåller strängvärden eller formler kommer minneskostnaden att vara densamma som MemorySetting.NORMAL-läge, men om det finns många tomma celler eller cellvärden är numeriska, booleska och så vidare, kommer MemorySetting.MEMORY_PREFERENCE-alternativet att ge bättre prestanda.