Re: Replicating changes

From: Peter Wilson <petew(at)yellowhawk(dot)co(dot)uk>
To: Postgres General <pgsql-general(at)postgresql(dot)org>, alban(at)magproductions(dot)nl
Cc: "S(dot)N(dot)E(dot) de Hartog" <simon(at)magproductions(dot)nl>
Subject: Re: Replicating changes
Date: 2006-10-30 08:54:04
Message-ID: 4545BDAC.7000708@yellowhawk.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I'd start with something fairly straightforward. dbmirror
is very simple but does a lot. There are two parts:

A trigger function and set of database tables to collect
replication data. The trigger function is written is 'C' and
performance is good.

The second part is a Perl script that attaches to source
and target database and replicates all the changes. The
Perl script isn't too efficient but it should be pretty easy
to modify to send the data somewhere other than a
database

I had performance issues with dbmirror replicating big
BYTEA fields so I wrote a 'C++' version which is now
part of Whitebeam (http://www.whitebeam.org) so if
you're likely to be doing the same then you might want to
re-write the C++ version rather than the Perl version.

dbmirror is in the Postgres contrib directory for releases
up until 8.1 at least.

Pete

Alban Hertroys wrote:
> Taras Kopets wrote:
>> Hi!
>>
>> I think you should try to use triggers with
>> dbi-link<http://pgfoundry.org/projects/dbi-link/>to achieve this.
>> AFAIK there is no such replication with other RDBMS as you need.
>>
>> Taras Kopets
>
> Seems like I introduced a small misunderstanding here. The data
> doesn't necessarilly go to a database; at least, none that we know
> about. The goal here is to export (semi-)real time changes from our
> database to a small number of interested parties[1]. It'll probably
> have to be in some kind of XML format.
>
> So far we've received some interesting suggestions. I particularly
> like the idea of extending Slony-I with a "custom" frontend - though
> that'll probably involve more work than a custom solution, it seems
> much more powerful.
>
> Thanks for the suggestions so far, everyone.
>
> [1] Those parties probably store our data in a database (they'd be
> nuts if they didn't), but that's something beyond our control.
>
> Regards,

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Albe Laurenz 2006-10-30 09:02:47 Re: How to know the type of an expression ?
Previous Message Alban Hertroys 2006-10-30 08:37:57 Re: Replicating changes