What does “thread” mean in “thread checkpoints” context

checkpointoracle

The following excerpt is from Oracle concepts. Maybe this is a stupid question, but I really need your help to understand it.

My question is:

  • What's does the thread mean in the context thread checkpoints?
  • Does it means redo log thread(all redo log files that belong to a specific instance)?
  • What does a certain target means?

Thanks all! English is not my mother tongue, and I feel a little difficult to fully understand this.

When Oracle Database Initiates Checkpoints 

The checkpoint process (CKPT) is responsible for writing checkpoints to the data file  
headers and control file. Checkpoints occur in a variety of situations. For example,  
Oracle Database uses the following types of checkpoints: 

■   Thread checkpoints 
    ^^^^^^
    The database writes to disk all buffers modified by redo in a specific thread before  
                                                             ^^^^^^^^^^^^^^^^^^^^
    a certain target. The set of thread checkpoints on all instances in a database is 
    ^^^^^^^^^^^^^^^^^
    a database checkpoint. Thread checkpoints occur in the following situations: 

    – Consistent database shutdown 

    – ALTER SYSTEM CHECKPOINT statement 

    – Online redo log switch 

    – ALTER DATABASE BEGIN BACKUP statement 

■   Tablespace and data file checkpoints 

    The database writes to disk all buffers modified by redo before a specific target. A  
    tablespace checkpoint is a set of data file checkpoints, one for each data file in the  
    tablespace. These checkpoints occur in a variety of situations, including making a  
    tablespace read-only or taking it offline normal, shrinking a data file, or executing  
    ALTER TABLESPACE BEGIN BACKUP. 

■   Incremental checkpoints 

    An incremental checkpoint is a type of thread checkpoint partly intended to avoid  
    writing large numbers of blocks at online redo log switches. DBWn checks at least  
    every three seconds to determine whether it has work to do. When DBWn writes  
    dirty buffers, it advances the checkpoint position, causing CKPT to write the  
    checkpoint position to the control file, but not to the data file headers. 

Other types of checkpoints include instance and media recovery checkpoints and  
checkpoints when schema objects are dropped or truncated.

Best Answer

Yes, a thread in this case is the redo generated by an instance. If you had a 4-node RAC, you would have 4 redo threads. This is thread# in v$archived_log. The certain target is almost certainly referring to an SCN.