Thursday, September 30, 2010

Physical Standby Vs Hot Standby

Some thoughts always come in mind about standby terminologies. Once, Someone has asked question about Physical Standby of Oracle10g.

Is Oracle10g Physical Standby a Hot Standby Or WarmStandby?

Till Oracle 10g, Physical Standby of Oracle is a standby which has two mode: 1. Managed Recovery Mode 2. Read Only Mode. It cannot be in both mode at same time.
If the standby is in recovery mode then, it's a Warm Standby and when its read only mode then, then it's lagging from Primary and would be able to response SELECT queries.
Either way, till Oracle 10g physical standby was not meeting the requirement of Hot Standby. It was playing the role of Warm Standby.

However, from Oracle 11g, Physical Standby can be Recovery mode and read only mode, both at the same time, which now fulfill the definition of Hot Standby. With the complexity of managing the Standby, licensing thing comes in Picture.
PG9.0 onwards, PostgreSQL now has Cold Standby, Warm Standby and Hot Standby, with zero cost. Community is making the PostgreSQL Technology more advance with new features.

2 comments:

  1. In which category would then be Logical standby?

    ReplyDelete
  2. Logical Standby is a term introduce by Oracle.
    In which SQL gets re-played on Standby Database.
    In logical Standby, logminer plays an important role. It extract the SQL from archive. And those SQLs get re-played on tables of target database, which has some unique column or can be uniquely identified, which is similar to Replication.

    All the replication tools has similar feature and you can make one too.

    At the place of extracting the SQLs from Archive, you can follow concepts given below:
    1. Create some shadow tables, in which you can track the DMLs on table, which you want to replicate.
    2. Create AFTER INSERT OR UPDATE OR DELETE trigger which can track and keep the information in shadow tables using Unique column/primary key.
    3. then, in a similar fashion you can write a tool which will read those and play on Target Database tables.

    ReplyDelete