Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. In DuraCloud, content is added by the user into a Snapshot Storage Provider space. This is a staging area that is backed by S3.
  2. The user selects a button in the space to create snapshot and enters snapshot metadata
  3. The DuraCloud UI calls the storage provider snapshot task indicating space to snapshot
  4. The snapshot task creates snapshot properties file and stores it in snapshot space
    1. When the snapshot properties file is added, the space is transitioned to read-only
  5. The snapshot task calls to the bridge application to indicate that a snapshot needs to be taken, providing DuraCloud host/port/space
  6. The bridge application adds an entry to the snapshot db table with the details of the snapshot action
  7. The bridge application connects to DuraCloud and copies all content from DuraCloud space to bridge storage
    1. During transfer, content metadata is properties are captured in a file
    2. During transfer, each content item is added to content db table (with snapshot id)
  8. The bridge application creates a manifest two manifest files (md5 and sha256) for the content and verifies all content was transferred correctly
  9. The bridge application sends a notification to chronopolis that a snapshot is ready (this step may be replaced with Chron intake polling)
  10. Chronopolis moves Intake service uses the content from in bridge storage into preservation storage and constructs to construct a DPN bag 
    1.  Chronopolis The Intake service validates content against the manifest written by DuraCloud to the bridge storageapplication
    2. Chronopolis The Intake service creates the necessary bag files (bagit, bag-info, dpn-info) and registry entry for DPN
      that are included in the bag
    3. If the content contained in the snapshot is larger than 250 GB, multiple bags are created
  11. Chronopolis Ingest service Chronopolis performs replication to other Chronopolis nodes and DPN
    1. Ace Tokens are created for other Chronopolis Nodes
    2. An entry in the DPN registry is added
    3. REST calls are used between DPN nodes to discover content which needs to be replicatedAMQP used to relay information about the state of replication
  12. Chronopolis makes a call to the bridge application to indicate that content has been successfully copied to preservation storage
  13. The bridge application deletes the directory in bridge storage used for the snapshot
  14. The bridge application makes a call to a task in the DuraCloud Chronopolis provider Snapshot Storage Provider to indicate that it is now time to clean up the snapshot content
  15. The cleanup task sets a policy on the underlying S3 bucket which causes the content to be removed within 24 hours
  16. The bridge application watches the snapshot space, and when it becomes empty, calls the snapshot complete task, which clears the S3 bucket policy
  17. The bridge application notifies the user who requested the snapshot that it has been completed

...

  1. A DuraCloud user selects the Snapshot Storage Provider in the DuraCloud UI
  2. The DuraCloud UI (DurAdmin) make makes the usual call to get spaces and also calls a task in the Snapshot Storage Provider to request a list of snapshots
  3. The snapshots task calls the bridge application to request a list of snapshots
    1. Note: DuraCloud is not aware of the snapshot database. All communication with the db goes through the bridge application.
  4. The bridge application queries the database (snapshot table) to retrieve a listing of snapshots which are visible to the given DuraCloud account
  5. The bridge application returns list of snapshots, which are passed back up the chain to the UI
  6. The DuraCloud UI displays the list of snapshots alongside the traditional spaces in a way the distinguishes the two sets, providing a Restore button on each snapshot space
  7. When a snapshot space is selected, a call calls to another task set of tasks in the Snapshot Storage Provider is are made to retrieve the listing of content items, the snapshot details, and snapshot history
  8. The snapshot content item task calls tasks call the bridge application to request the list of content in a snapshotsnapshot details, history, and content list
  9. The bridge application queries the database to retrieve the listing of contentsnapshot information
  10. The bridge application returns the snapshot information, for the content list and snapshot history lists, only the first X items are returned, which is are passed back up the chain to the UI
  11. The DuraCloud UI displays the list of content items snapshot information in the same way it would display content items and details for a traditional space
  12. Requests for more items in the content listing or snapshot history follow the same pattern, but with a parameter to indicate offset

...

  1. The DuraCloud user browses the snapshot listings and clicks the "Restore" button on a snapshot
  2. The DuraCloud UI calls a DuraCloud Restore task
  3. The DuraCloud Restore task creates a space where the restored content will be placed and calls the bridge application with a restore request
    1. A bucket policy will be added to the space to delete content after a set time period (3 weeks? a month?)
  4. The bridge application adds an entry to the restore db table
  5. The bridge application creates a directory in bridge storage and sends a notification to Chronopolis to request a restore action
  6. Chronopolis copies the contents of the snapshot DPN bag to the bridge storage directory
    1. Chronopolis will validate the files on the bridge storage against the manifest in the bag (originally created during the snapshot phase) 
    2. BagIt files are omitted during the copy, leaving only the files which were originally written by the bridge application
  7. The bridge application verifies restored content against snapshot manifest file and against database listing (ensuring content is consistent with original snapshot data set)
  8. The bridge application copies content from bridge storage to DuraCloud space
  9. The bridge application reads the content metadata file and updates each content item with its metadata values
  10. The bridge application verifies (based on manifest) that content transferred to DuraCloud is consistent with the content that was originally in DuraCloud (pre-snapshot)in bridge storage
  11. The bridge application deletes the directory in bridge storage used for the restore action
  12. The bridge application notifies the user who requested the restoration that the process is complete, informs them of the space ID where they can find their content, and tells them the date on which the content will be removed

...