Tuesday, May 26, 2009

Streams, Data Guard, & RAC

Oracle Replication

Streams, Data Guard, & RAC

What is Oracle Streams Replication?

Replication is the process of using a set of supplied database management PL/SQL packages and procedures coupled with a supplied toolset of network utilities to enable the sharing of database objects and data between multiple databases. To maintain replicated database objects and data between multiple databases, a change to one of these database objects in a database is shared with the other linked databases. In this way, the database objects and data are kept synchronized within all of the databases in the replication environment. In a Streams replication environment, the database where a change originates is called the source database, and a database where a change is shared is called a destination database. There can be more than one source and more than one destination database.

Ready for production use in Oracle 10g, Oracle Streams allows near real-time replication and support for master-to-master replication. Oracle Streams has no licensing costs (RAC costs extra) and it is less complex to configure than a RAC database.

Non-identical Replicas with Streams

Streams replication supports sharing database objects that are not identical at multiple databases. Different databases in the Streams environment can contain shared database objects with different structures. You can configure rule-based transformations during capture, propagation, or apply to make any necessary changes to LCRs so that they can be applied at a destination database.

Subsetting with Streams

Streams also supports subsetting of table data through the use of subset rules. If a shared table in a database in a Streams replication environment contains only a subset of data, then you can configure Streams to manage changes to a table so that only the appropriate subset of data is shared with the subset table. For example, a particular database can maintain data for employees in a particular department only. In this case, you can use subset rules to share changes to the data for employees in that department with the subset table, but not changes to employees in other departments.

What is DataGuard?

Created as a disaster recovery solution, Data Guard is also a solution for High Availability. It can be used to replicate and maintain production databases which can be used to alleviate reporting job traffic on the server.

Data Guard has the requisite knowledge of the Oracle database to reliably protect the standby database from corruptions that attempt to propagate from the primary database. It is straightforward to implement and manage. It also enables all standby databases, both physical and logical, to be used for production purposes while in standby role (testing, backup, upgrade).

Data Guard delivers:

  • Reliability – optimum data protection and availability. Data Guard can very quickly switch the primary role to the standby automatically in seconds. The automation insures transactions are secure.
  • Cost effectiveness and simplicity – Data Guard employs mature capabilities and an effective management interface included in the Enterprise Edition. It offers a maximum return on investment as the replicated database can be used to perform production tasks, thus spreading out resources for various needs.

Data Guard can be configured for real-time consistency between the production database and one to as many as nine standby databases or, delayed by a set time to allow the standby to become a snapshot standby.
Data Guard becomes especially useful for testing and rolling upgrades and can be configured as either a physical (Redo-Apply) or logical (SQL-Apply). Each has its advantages and inherent flexibility.

RAC – An Active/Active Cluster

Oracle Real Application Clusters

Oracle Real Application Clusters (RAC) is an option of Oracle Databases. Oracle RAC is a cluster database with a shared cache architecture that overcomes the limitations of traditional shared-nothing and shared-disk approaches to provide highly scalable and available database solutions for all business applications. Oracle RAC is a key component of Oracle enterprise grid architecture.

Most users of Oracle RAC employ a two node cluster to insure always available service to its user community. The two node configuration offers the flexibility needed to perform maintenance, upgrades, and patching without interfering with user activity.

Other organizations needing higher throughput employ multiple nodes of 6, 12, and even 32 all running on separate servers but servicing the same database. These organizations are usually servicing very large databases for a very large user community.

Companies using a clustered database generally want to load balance their workload across the cluster. Starting with Oracle RAC 10g Release 2 the load balancing advisory provides real-time information to the application tier at the service level being provided by the database. Applications can utilize this information to provide the best possible throughput or transaction response time to the application using the assigned resources in the cluster.

Oracle RAC includes a highly available (HA) application framework that provides the necessary service and integration points between RAC and custom enterprise applications. One of the main principles of a highly available application is for it to be able to receive fast notification when something happens to critical system components (both inside and outside the cluster). This allows the application to execute event-handling programs. The timely execution of such programs minimizes the impact of cluster component failures, by avoiding costly connection time-outs, application timeouts, and reacting to cluster resource reorganizations, in both planned and unplanned scenarios.

The current version of Oracle RAC comes with its own network clustering interface to allow for easier installation and configuration on Windows, UNIX, and Linux based systems. A recent development in the use of RAC with virtual machines is greatly reducing operating costs for IT departments.

Who Uses Replication and Why?

A business organization needing to a distributed system

Data distribution is a tool that helps companies put necessary data in the hands of local decision-makers yet maintain firm central control over the data. With replication, data can be shared and replicated between databases, allowing system designers to put the data where it's needed.

A business organization needing an additional backup strategy

In conjunction with backup, replication strategies seek to complement traditional approaches by providing alternative levels of data protection and integrity, while minimizing user disruptions. DataGuard replication creates a point-in-time copy of the data to be used as the backup and source.

A business organization needing to set up a DR Failover system

DataGuard replication maintains a near real-time “warm standby” database to which applications can switch with virtually no downtime if the primary site fails. You can manage planned downtime such as routine maintenance, software upgrades and backups. It protects business transactions during unplanned downtime due to machine/network outage, for example. It also provides planned disaster recovery for alternate location operations. Any system providing HA services should provide continuous service to its user community.

While DataGuard provides an invaluable failover option, RAC is now the primer clustering architecture for an unbreakable, always available database. Its unique active/active architecture insures that data is always available and performance is at optimum. When setup with the transparent application failover option a database server can experience scheduled or unscheduled downtime without interruption of service.

What We Provide

Xtivia’s Engineers will provide recommendations on replication methods and implementation strategies to set up a database replication configuration of your choice to that will meet your organizational objectives. Xtivia engineers will install, configure, and document a replication system or assist your staff with complex project tasks. Xtivia also provides the VDBA system to monitor your replication server activities and status. Xtivia delivers:

  • Initial project feasibility assessments and requirements
  • Replication system designed to fit your needs
  • Project planning and best practices approach
  • Estimate a convenient and affordable project schedule and cost
  • Performance of product research and installation on your systems
  • Performance of product testing and validation to your satisfaction
  • Training for your staff to administer the replication system after hand-off
  • Monitor replication server using VDBA when requested
    --
    regards,
    Rohit Sinha

    "It takes a minute to have a crush an hour to like someone and a day to love someone but it takes a lifetime to forget someone"

No comments:

Post a Comment