Tip of the Day: NOLOGGING and Delphix

  Thread closed by the administrator. It is viewable, but not accepting new replies.
  • 1.  Tip of the Day: NOLOGGING and Delphix

    Posted 11-24-2014 06:28:00 PM
    No replies, thread closed.
    What is NOLOGGING and why does Delphix care?

    When performing a write operation (making changes to a database) Oracle first writes those changes to an archive log (also known as a redo log).  After the redo write has completed and sync'd to disk then it will attempt to update the datafiles for the write.  Doing this means that, even if corruption is encountered in the datafile, the database can be recovered with the last backup and the redo actions stored in the archive logs.
    A NOLOGGING operation is when a user or process making changes to an Oracle database asks that their changes not be logged in Oracle's redo logs.  There are valid reasons why this might be desirable which is why Oracle allows the behavior.  For example, one reason is to speed up operations during a large bulk data load.

    Why Delphix Cares:
    Because the redo operations from archive logs are used to bring the database to a consistent state as part of the provisioning process, if there have been NOLOGGING operations while the SnapShot was happening, there is no longer a record of all data that was changed during the snapshot process.  It is no longer possible to bring the database to a consistent state.  A VDB provisioned from a snapshot with NOLOGGING operations could suffer from many possible issues:
    • The provision may fail with errors
    • The provision may succeed, but using the database will result in errors being thrown or the database crashing
    • The database may be fully usable, but missing data