save -append problem: long duration to save an existing variable in a big mat-file

7 Ansichten (letzte 30 Tage)
Hi all,
I have a very peculiar problem with the save command. I have a lang mat-file (ca. 300 MB, compressed, created with MATLAB > 7). Now I save an additional signal in the file using
save(filename, signalname, '-append');
If the variable signalname doesn't exist in the file the copy process is very fast. But, if the file contains already a variable signalname the whole process takes too long to end (some minutes!!!). If I try to append more variables that already exist in the file, it takes evern more!! Is this a bug? Am I doing something wrong?
Thanks a lot in advance for any advice!
Emmanuel

Antworten (3)

Jan
Jan am 29 Nov. 2012
This seems reasonable. Overwriting an existing variable requires to decompress the file at first to remove the old value. The larger the file, the more time is required.
You see the same problem for other compressed files also: ZIP, compressed SSDs, or a large number of books packed in a cardboard box for.

Diderot
Diderot am 15 Mai 2014
I got a similar problem. What's more, the new data file after several variables appended is much larger than the original, even though I only updated the previously existing variables with the same size instead of creating any new variables. This is really confusing. Would anyone share insights? Thanks!
  1 Kommentar
Jan
Jan am 18 Mai 2014
Please do not append a new question to an existing thread. Note that you cannot accept an answer, if it is not your question and that your message is not an asnwer to the original question. Thanks.

Melden Sie sich an, um zu kommentieren.


Pritesh Parmar
Pritesh Parmar am 15 Apr. 2025
Bearbeitet: Pritesh Parmar am 17 Apr. 2025
I had the same issue with MATLAB's "save -append" with updating variables with large dataset. Try the following code: fastSaveUpdate - Efficiently update variables in MAT-file - File Exchange - MATLAB Central
Pritesh Parmar

Kategorien

Mehr zu Large Files and Big Data finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by