On Mon, 20 Apr 2009, RB wrote:

> On Mon, Apr 20, 2009 at 10:33, Rainer Gerhards <[email protected]> 
> wrote:
>> Excellent, but let me re-phrase: if you have a PostgreSQL expert at hand,
>> that would be even more useful (I can do testing with PostgreSQL myself, but
>> do not have access to Oracle - I overlooked that tiny little restriction when
>> posting ;)).
>
> Perhaps more importantly for implementation-specific bits, perhaps we
> could clarify which we're discussing: procedures, functions, or
> prepared statements?  The thread seems to jump back & forth between
> stored procedures and prepared statements, and although they are
> similar and often have a pure-SQL interface, they are not implemented
> everywhere.
>
> MySQL: PREPARE, CREATE PROCEDURE, CREATE FUNCTION
> PostgreSQL: PREPARE, CREATE FUNCTION
> Oracle: CREATE PROCEDURE, CREATE FUNCTION
>
> So, for PosgreSQL, you'd do something like Luis' earlier post:
>
> PREPARE rsyslog_insert(date, text) AS
>    INSERT INTO foo VALUES($1, $2);
> EXECUTE rsyslog_insert('20090420-06:00', "log1");
> EXECUTE rsyslog_insert('20090420-06:00', "log2");
> EXECUTE rsyslog_insert('20090420-06:00', "log3");

by the way, this is not nessasrily the most efficiant way to get data into 
postgres (although it's far more efficiant than independant insert 
statements like we do today.

you can do begin;insert;insert;end

you can do insert values (),(),(),(),()

you can do prepare;execute;execute

you can do a procedure or function that will insert the data into a 
different table based on the time (think of it as dynafiles for databases)

you can do copy (and can probably combine this with prepared statements, 
procedures, and functions)

which one is the most efficiant one depends on a lot of things (what 
permissions you give the rsyslog user, how the database is setup, etc)

it would be best if we can avoid coding one specific option into rsyslog

David Lang
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com

Reply via email to