Optimierung des Speicherverbrauchs beim Arbeiten mit großen Dateien und großen Datensätzen
Beim Erstellen eines Arbeitsblatts mit großen Datensätzen oder beim Lesen einer großen Microsoft Excel-Datei ist die Gesamtmenge des RAMs, die der Prozess benötigt, immer ein Anliegen. Es gibt Maßnahmen, die ergriffen werden können, um mit der Herausforderung umzugehen. Aspose.Cells bietet einige relevante Optionen und API-Aufrufe, um den Speicherverbrauch zu verringern, zu reduzieren und zu optimieren. Außerdem kann dies helfen, den Prozess effizienter und schneller zu machen.
Verwenden Sie die MemorySetting.MemoryPreference-Option, um den Speicherverbrauch für Zelleninhalte zu optimieren und die Gesamtspeicherkosten zu senken. Beim Erstellen eines großen Datensatzes für Zellen können Sie im Vergleich zur Verwendung der Standardeinstellung (MemorySetting.Normal) eine bestimmte Menge Speicher einsparen.
Speicheroptimierung
Lesen großer Excel-Dateien
Das folgende Beispiel zeigt, wie eine große Microsoft Excel-Datei im optimierten Modus gelesen wird.
Schreiben großer Excel-Dateien
Das folgende Beispiel zeigt, wie Sie ein großes Datenset im optimierten Modus in ein Arbeitsblatt schreiben.
Vorsicht
Die Standardoption, MemorySetting.Normal wird für alle Versionen angewendet. In einigen Situationen, wie dem Erstellen einer Arbeitsmappe mit einem großen Datensatz für Zellen, kann die Option MemorySetting.MemoryPreference den Speicherverbrauch optimieren und die Speicherkosten für die Anwendung verringern. Diese Option kann jedoch in einigen speziellen Fällen die Leistung beeinträchtigen.
- Zufälliger und wiederholter Zugriff auf Zellen: Die effizienteste Sequenz für den Zugriff auf die Zellensammlung ist Zelle für Zelle in einer Zeile und dann Zeile für Zeile. Insbesondere wenn Sie Zeilen/Zellen über den Enumerator, der von Cells, RowCollection und Row erworben wurde, abrufen, wird die Leistung mit MemorySetting.MemoryPreference maximiert.
- Einfügen & Löschen von Zellen & Zeilen: Bitte beachten Sie, dass bei vielen Einfüge/Löschvorgängen für Zellen/Zeilen die Leistungseinbuße im MemoryPreference-Modus im Vergleich zum Normal-Modus spürbar sein wird.
- Arbeiten mit verschiedenen Zelltypen: Wenn die meisten Zellen Zeichenfolgen oder Formeln enthalten, wird der Speicherverbrauch wie im Normal-Modus sein, aber wenn es viele leere Zellen gibt oder Zellwerte numerisch, boolesch usw. sind, wird die Option MemorySetting.MemoryPreference eine bessere Leistung bieten.