What is a snapshot in Oracle database?

A snapshot is a replica of a target master table from a single point-in-time. In simple words you can say, snapshot is a copy of a table on a remote database.

In Oracle database, a snapshot typically refers to a read-consistent, static view of a set of data at a specific point in time. There are two main types of snapshots in Oracle: materialized views and simple snapshots.

  1. Materialized Views:
    • A materialized view is a database object that stores the results of a query, much like a table.
    • It is a precomputed table consisting of aggregated or joined data from one or more tables.
    • Materialized views are periodically refreshed to reflect changes in the underlying data.
  2. Simple Snapshots:
    • A simple snapshot is a point-in-time copy of one or more tables.
    • Unlike materialized views, simple snapshots are not precomputed, and they are not automatically refreshed.
    • Simple snapshots are typically created and maintained by the user as needed.

In summary, a snapshot in Oracle can refer to either a materialized view or a simple snapshot, both of which provide a static, point-in-time representation of data. Materialized views are regularly updated, while simple snapshots require manual maintenance. The specific context of the term “snapshot” in Oracle can determine whether it refers to a materialized view or a simple snapshot.