Top 20 Oracle Streams Interview Questions You Must Prepare 16.Aug.2022

Naming of the NIC device driver has the following constraints:

The name can contain alphanumeric and underscore (_) characters only

The first and last characters of the name cannot be a number

The name length cannot exceed 16 characters. The recommended length is 3–8 characters

IP is a STREAMS module in the Oracle Solaris operating environment. Any module or driver interface with IP should follow the STREAMS mechanism. There are no specific requirements for the interface between IP and network drivers.

CDC is a technique to capture changes in database tables. These changes are stored in special tables.

CDC operates in two modes: asynchronous, which is based on Java, and synchronous, which is used on database triggers.

Performance overhead is higher in case of synchronous CDC.

Following are some important Streams views:

  • DBA_STREAMS_TABLE_RULES
  • DBA_APPLY_CONFLICT_COLUMNS
  • GV$STREAMS_CAPTURE

Default logging process records the information about DML operations.

Supplemental logging is required to identify the rows to be updated on each destination.

The apply process is a background process that runs on target database.

It dequeues messages (LCR) and applies those to the target database either directly or through handler.

The oracle streams product from Oracle Corporation encourages users of Oracle databases to propagate information within and between databases.

It provides tools to capture, process (stage), and manage database events through Advanced Queuing Queues.

Capture process extracts database changes from redo log files at source. It is a background process.

Streams pool is a part of System Global Area (SGA) from which memory for Streams is allocated if it is configured. It can be configured by specifying initialization parameter, STREAMS_POOL_SIZE.

If the size of the Streams pool is greater than zero, then any SGA memory used by Stream is allocate from the Streams pool.

If the size of the Stream pool is equal to zero, then the memory used by Streams is allocated from the shared pool that may use up to 10% of the shared pool.

When the apply process applies the LCR directly at the target, it is called direct apply.

Stream replication uses the information available in redo logs to synchronize data between two servers.

The capture process captures the changes at source, and the changes are trported to the target database, which generates the tractions and the apply process applies those tractions.

Oracle streams are based on advance queues. The streams provide a mechanism to synchronize data between two servers.

Streams ensure reliable data synchronization between the servers based on the defined rules.

Both Oracle CDC and Streams are generally used for data synchronization between Oracle database servers. With Oracle CDC, you could write your own data export routines, which create flat files for the purpose of synchronization between two database servers; whereas, with Streams you must have a network link between the two servers.

SYS.AnyData is a queue that can capture messages of type AnyData.

This is a standard used in the Streams replication for storing LCRs.

The reason for using this queue is that messages are wrapped into type AnyData before queuing.

Generally, capture process functions at source database.

However, if you want to save resources at the source database, you can set up another database for the capture process only.

The feature which allows you to move capture process to another database is called downstream capture.

DML handler can be set by using the following statement:

Dbms_apply_adm.set_dml_handler (object_name, object_type, operation_name, error_handler, user_procedure, apply_db_link)

LCR contains database changes, streams require the changes to be captured in specific format. LCR keeps the changes in that format.

Database Change Notification is a service that is used to notify the registered clients whenever a change is committed.

An oracle stream is a data replication and integration feature.

It enables the propagation of data, tractions, and events in a data stream either within a database or from one database to another.

You can find the setup of lob_assembly by using the DBA_APPLY_DML_HANDLER view.