Thread: extern transaction logging

extern transaction logging

From
"Horst Herb"
Date:
Hi all,

I am a Postgres novice,so please excuse if my question looks rather dumb.
I need to log all commited transactions externally on a backup server as
soon as they are commited. What would be the best way to do it efficiently?

Originally, in the first design of my 3-tier-system, I planned to send all
SQL statements from my clients to a transaction server, parse and process
them, and then pass them on to the Postgres server. The erformance costs are
obvious. Several other options came to my mind after browsing through the
Postgres documentation:

- triggers / stored procedures
- rules
- ?

That way, my application would communicate directly with the Postgres
server, and the Postgres server would just start a thread sending all the
data off to my transaction logging server after each insert/update/delete
event - therefore no delay for the end user.

Now, I can write the "transaction server" in C, but I have the feeling it
would be much less work (and more efficient in performance terms) using
triggers or rules or a different mechanism already built in in Postgres. Any
suggestions for a PostgreSQL greenhorn?

Horst