Was hat diesen Wunschwunsch ausgelöst?
Ich habe an Datenerfassungsskripten gearbeitet, die einige zusätzliche Zeilen verwenden, um anzuzeigen, dass die Erfassung durchgeführt wurde, selbst wenn keine Daten zurückgegeben wurden. Diese zusätzlichen Zeilen verwenden Zeilenstatus. Beim Speichern der Tabelle wird dadurch die JMP-Tabellenkomprimierung mehr oder weniger beeinträchtigt, und ich erhielt schließlich eine 100 MB große Datei anstelle einer 10 MB großen Datei.
Welche Verbesserung würden Sie sich wünschen?
Ich wünsche mir, dass die Tabellenkomprimierung von JMP nicht nur Spaltendaten, sondern auch andere Daten komprimieren kann, beispielsweise Zeilenzustände (Tabellenskripte sind ein weiteres Beispiel), da bereits eine einzelne ausgewählte Zeile die Tabellengröße beim Speichern massiv erhöhen kann.
Nachfolgend finden Sie ein Beispielskript, das Sie testen können. Indem Sie Ihrer Tabelle nur eine ausgewählte Zeile hinzufügen, können Sie die Tabellengröße fast verzehnfachen, wenn Sie die Komprimierung verwenden (und meiner Meinung nach sollten Sie dies bei JMP-Tabellen tun).
Mehr anzeigen...
Names Default To Here(1);
path1 = "$TEMP/file1.jmp";
path2 = "$TEMP/file2.jmp";
dt = New Table("test",
Add Rows(10000000),
New Column("A", Numeric, Continuous, Set Each Value(Row())),
New Column("B", Character, Nominal, Set Each Value(Hex(Mod(Row(), 10))))
);
dt << Compress File When Saved(1);
Column(dt, "B") << Compact();
Wait(0);
dt << Save(path1);
Wait(0);
dt << Select Rows(1);
dt << Save(path2);
Show(File Size(path1), File Size(path2), File Size(path1) / File Size(path2));
//File Size(path1) = 11981335;
//File Size(path2) = 91981345;
//File Size(path1) / File Size(path2) = 0.130258314878957;
Close(dt, no save);
/*
Delete File(path1);
Delete File(path2);
*/
Write();
Warum ist diese Idee wichtig?
Dadurch wird die Tabellenkomprimierung von JMP viel nützlicher, da Sie weiterhin andere leistungsstarke Werkzeuge von JMP nutzen können.