Introduction and Mechanism for Oracle Streams

Introduction of Oracle Streams

In Oracle Stream, Each unit of shared information is called a message.

A capture process captures changes from the redo log and formats each captured change into a message called a logical change record(LCR). The messages captured by a capture process are called captured LCRs. Messages are stored (or staged) in a queue. Capture processes and synchronous captures enqueue messages into an ANYDATA queue. An apply process can dequeue messages implicitly. The database where messages are consumed is called the destination database.

DownStream Capture: The redo service migrate redo to destination service then it apply from their.Capturing information with Oracle Streams means creating a message that contains the information and enqueuing the message into a queue.

A capture process retrieves change data from the redo log, either by mining the online redo log or, if necessary, by mining archived log files. After retrieving the data, the capture process formats it into an LCR and enqueues it for further processing.

Synchronous capture uses an internal mechanism to capture DML changes immediately after they happen. Synchronous capture enqueues information about DML changes in the form of messages containing row LCRs.

11g support all datatype. Please check with 10g
VARCHAR2
NVARCHAR2
FLOAT
NUMBER
LONG
DATE
BINARY_FLOAT
BINARY_DOUBLE
TIMESTAMP
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
INTERVAL YEAR TO MONTH
INTERVAL DAY TO SECOND
RAW
LONG RAW
CHAR
NCHAR
UROWID
CLOB with BASICFILE or SECUREFILE storage
NCLOB with BASICFILE or SECUREFILE storage
BLOB with BASICFILE or SECUREFILE storage
XMLType stored as CLOB

Staged messages can be consumed or propagated, or both. Staged messages can be consumed by an apply process, a messaging client, or a user application.

A queue is an abstract storage unit used by a messaging system to store messages.A queue of ANYDATA type can stage messages of almost any type and is called an ANYDATA queue. A typed queue can stage messages of a specific type. Oracle Streams clients always use ANYDATA queues.

Oracle Streams supports the following message modes:

Persistent messaging: Messages are always stored on disk in a database table called a queue table. This type of storage is sometimes called persistent queue storage.

Buffered messaging: Messages are stored in memory but can spill to a queue table under certain conditions. This type of storage is sometimes called buffered queue storage. The memory includes Oracle Streams pool memory that is associated with a queue that contains messages that were captured by a capture process or enqueued by applications.

Mechanism and process for Oracle Stream

1. Capture process
2. Synchronous capture
3. Propagation
4. Apply process
5. Messaging client

Capture Process captures changes in the redo log, converts the changes into logical change records (LCRs), and enqueues messages containing these LCRs into the capture process queue.

Synchronous Capture captures the results of DML changes made to tables, converts the changes into row logical change records (row LCRs), and enqueues messages containing these row LCRs into the synchronous capture queue.

Propagation propagates any type of message from a source queue to a destination queue.

Apply process dequeues either captured LCRs, persistent LCRs, or persistent user messages from its queue and applies these messages directly or sends the messages to an apply handler.

Messaging client dequeues persistent LCRs or persistent user messages from its queue. and process for Oracle Stream

1. Capture process
2. Synchronous capture
3. Propagation
4. Apply process
5. Messaging client

Capture Process captures changes in the redo log, converts the changes into logical change records (LCRs), and enqueues messages containing these LCRs into the capture process queue.

Synchronous Capture captures the results of DML changes made to tables, converts the changes into row logical change records (row LCRs), and enqueues messages containing these row LCRs into the synchronous capture queue.

Propagation propagates any type of message from a source queue to a destination queue.

Apply process dequeues either captured LCRs, persistent LCRs, or persistent user messages from its queue and applies these messages directly or sends the messages to an apply handler.

Messaging client dequeues persistent LCRs or persistent user messages from its queue.
 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.