Providing Archive feature in a website
AFAIK the features provided by the Demonstration site (Sandbox / Snapshot) module are the closest as per your requirements. It has the feature that allows you to take snapshots of your site, use it as sandbox and later (if you want) restore it back to any of the previous saved state.

This module allows you to take snapshots of your site. Whenever you need to reset your site to the state of a saved snapshot a click of your mouse will do so.
With cron enabled, a site can be automatically reset to a chosen snapshot in a definable interval.

Backup/archive of uploaded files and restore upon reset. To allow sandboxes for file related modules.
Journal module integration to show recent changes in snapshots.
Demo Reset security improvements to allow to demonstrate administrative functionalities more easily.


There is also a Demonstration Site Install Profile which allows restoration of the Demonstration Site module's database dumps during site installation.