Book Image

Oracle 11g Streams Implementer's Guide

Book Image

Oracle 11g Streams Implementer's Guide

Overview of this book

From smaller businesses through to huge enterprises ñ users all over the world often require access to data 24 hours a day. Distributed database systems proliferate the world of data sharing providing an ability to access real-time data anywhere, anytime. Oracle Streams, a built-in feature of the Oracle database, is a data replication and integration feature critical to the success and wellbeing of enterprises in today's fast moving economy. This book provides the reader with solid techniques to master Oracle Streams technology and successfully deploy distributed database systems. This book quickly goes over the basics and gets you up and running with a simple Oracle 11g Streams environment. It will serve as an excellent companion to the Oracle Streams Administration Guide. It is intended for Oracle database architects and administrators, and provides in-depth discussion on must-know information for the design, implementation, and maintenance of an Oracle Streams environment. The book does not attempt to regurgitate all the information in the Oracle Streams Administration Guides, but rather provides additional clarification and explanation of design, implementation, and troubleshooting concepts that are often elusive in Streams documentation. It also identifies helpful tools and Oracle resources to add to your knowledge base, as well as tried and tested tricks and tips to help you tame Oracle Streams. The book starts by introducing and explaining the components of Oracle Streams and how they work together. It then moves on logically, helping you to determine your distributed environment requirements and design your Streams implementation to meet those requirements. Once these concepts are discussed, the book moves to configuration and basic implementation examples to help solidify those concepts. It then addresses advanced features such as tags, down-stream capture, and conflict resolution. You then move on to maintenance techniques such as documenting the environment, effectively planning and implementing changes to the environment, and monitoring and troubleshooting the environment. When you have studied the techniques and completed the hands-on examples, you will have an understanding of Oracle Streams' core concepts and functionally that will allow you to successfully design, implement, and maintain an Oracle Streamed environment.
Table of Contents (14 chapters)
Oracle 11g Streams Implementer's Guide
Credits
About the Authors
About the Reviewers
Preface

About those Queues


Throughout our discussion on the Streams processes, we mention the Advanced Queues used by Streams to transport changes. These queues are either in-memory (buffered queues) or tables on disk (persistent queues). Oracle Streams uses both buffered queues and persistent queues. A buffered queue can only be an ANYDATA queue, while a persistent queue can be an ANYDATA or a TYPED queue.

ANYDATA and TYPED refer to the payload datatype of the message handled by the queue. An ANYDATA queue's payload is of the SYS.ANYDATA datatype. A TYPED queue has a specific datatype (such as Varchar2, CLOB, BLOB, Number). To determine the payload type of a queue, query the OBJECT_TYPE column of the DBA_QUEUE_TABLES view.

select owner, queue_table, object_type from dba_queue_tables;

The Oracle memory segment used by buffered queues is part of the STREAMS_POOL in the SGA. The type of queue used by Streams depends on the type of LCR that is being stored. Captured and buffered LCRs are stored in buffered queues. Persistent LCRs are stored in persistent queues.

For more information on Streams Queues, review the Introduction to Message Staging and Propagation section of the Oracle Streams Concepts and Administration user's manual.

It is always helpful to understand the whole picture and the pieces that make up the picture. As such, we start with the image as follows:

We use the image above as a reference in this chapter to explain the following processes:

  • Capture

  • Instantiation (Not in image above)

  • Propagate

  • Apply

So, let us start covering each of the main processes and components and it's role in the Streams environment.