Most of snapshotting, log file journalling, and log compaction