472,984 Members | 2,037 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,984 software developers and data experts.

Few questions on postgresql (dblink, 2pc, clustering)

Hi list,

My boss would like to convert from MySQL to PostgreSQL, but there are a few
things that hold us back.

We'd like to have the databases in several physical servers, with referential
integrity between the tables. Reading from Oracle articles, their
referential integrity can be done using their dblink and triggers. What I'd
like to ask is whether contrib/dblink is stable? Seeing dblink in a contrib
directory does bring a doubt (though we've read many success stories with
dblink). And can the Oracle's way of doing referential integrity be used in
PostgreSQL? Is it recommended to do that?

I've read the PostgreSQL's TODO list, and I can't find anything about 2-phase
commit being implemented in 8.0. Is this correct? Because I also read
there's a 2PC patch being implemented (http://snaga.org/pgsql/). But
progress seems to have stopped (correct me if I'm wrong).

Basically, our concern is that dblink, 2PC implementation are there, but not
in the PostgreSQL mainstream.

Another thing that bothers us is that we can't find any multi-master
clustering solution in PostgreSQL. We're actually evaluating MySQL's own
clustering solution, but it's production quality release is still slated for
MySQL 5.0.

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Nov 23 '05 #1
2 2742
Jim Worke wrote:
Hi list,

My boss would like to convert from MySQL to PostgreSQL, but there are a few
things that hold us back.

We'd like to have the databases in several physical servers, with referential
integrity between the tables. Reading from Oracle articles, their
referential integrity can be done using their dblink and triggers. What I'd
like to ask is whether contrib/dblink is stable? Seeing dblink in a contrib
It is certainly stable, but it does not have transaction semantics like
local table queries.
directory does bring a doubt (though we've read many success stories with
dblink). And can the Oracle's way of doing referential integrity be used in
PostgreSQL? Is it recommended to do that?
Again, no persistent locking.,
I've read the PostgreSQL's TODO list, and I can't find anything about 2-phase
commit being implemented in 8.0. Is this correct? Because I also read
there's a 2PC patch being implemented (http://snaga.org/pgsql/). But
progress seems to have stopped (correct me if I'm wrong).
2-phase isn't in 8.0 but I expect it in 8.1.
Basically, our concern is that dblink, 2PC implementation are there, but not
in the PostgreSQL mainstream.
You need to understand the limitations of dblink and see if it will work
for you. I can't imagine MySQl is allowing you to do this cleanly so I
don't see why it would hold up a MySQL -> PostgreSQL migration.
Another thing that bothers us is that we can't find any multi-master
clustering solution in PostgreSQL. We're actually evaluating MySQL's own
clustering solution, but it's production quality release is still slated for
MySQL 5.0.


The only multi-master I know of is pgcluster. There is talking of
moving Slony from master/slave to multi-master but work has not started
yet.

--
Bruce Momjian | http://candle.pha.pa.us
pg***@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faqs/FAQ.html

Nov 23 '05 #2
On 8/21/2004 10:34 PM, Jim Worke wrote:
Another thing that bothers us is that we can't find any multi-master
clustering solution in PostgreSQL. We're actually evaluating MySQL's own
clustering solution, but it's production quality release is still slated for
MySQL 5.0.


And with all the different table types available, MySQL has successfully
created a lot of confusion. Note that all the latest and greatest
features that became available with InnoDB tables will again be on your
wishlist when using NDB Cluster. InnoDB and NDB Cluster transactions are
not ACID together, only each of them inside of its table handler is. NDB
Cluster tables will not support foreign keys and the last I heard was
that unique constraints are pretty expensive because of their "funky"
implementation as separate tables.

Another little detail is that NDB Cluster is an in-memory table type.
And to get your failover capabilities, the data must be in memory at
least twice. So you need 2x your entire DB size plus overhead like OS
and a little room to breathe in RAM. With a 100GB database, this will
get funny on the network side too because you will want to have better
than gigabit ethernet.
Jan

--
#================================================= =====================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================= = Ja******@Yahoo.com #

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Nov 23 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

17
by: Sarah Tanembaum | last post by:
Beside its an opensource and supported by community, what's the fundamental differences between PostgreSQL and those high-price commercial database (and some are bloated such as Oracle) from...
1
by: Clive Page | last post by:
What I'd like to do is use dblink to extract a few rows from a remote database and manipulate these within a function in pl/pgsql. Something like this: CREATE OR REPLACE FUNCTION find() RETURNS...
1
by: Brian Maguire | last post by:
What's the best way to create a connection with dblink with persisted connections for web applications? For example: I want to have a view that links to a table in another pg database so I...
0
by: Marc G. Fournier | last post by:
Its been almost 4 weeks since PostgreSQL 7.4 was released, and, as with all new releases, several bugs have been identified as administrators migrate their production databases up from older...
1
by: Robert Morgan | last post by:
|I'm trying to run a query on a database using php and postgres functions ||<?php db_connect(); $stat = pg_exec($connstr,"SELECT WSID from tblWorkstation "); while ($row = pg_fetch_rows($stat))...
2
by: Sam Masiello | last post by:
Hello all! I am rather stuck and am hoping someone can help. I am working on a project where users need to be able to send one query which will hit databases on multiple hosts (the database...
1
by: Kreißl, Karsten | last post by:
Hello, we want use dblink to connect several databases in a client/server environment. Connection from local users to the remote databases should be possible only for privileged users. We tried a...
4
by: Ted | last post by:
Understand, I have developed a number of applications using RDBMS, including MySQL, PostgreSQL and MS Access, but this is my first experience with MS SQL. I'd bet my bottom dollar that MS SQL...
3
by: stephcsh | last post by:
Hi, I wanted to copy a data from table1 in db1 to table2 in db2, which has the same structure, with the PosgreSQL dblink funtion. The fields for both the tables are: id, first_name, last_name. ...
0
by: lllomh | last post by:
Define the method first this.state = { buttonBackgroundColor: 'green', isBlinking: false, // A new status is added to identify whether the button is blinking or not } autoStart=()=>{
2
by: DJRhino | last post by:
Was curious if anyone else was having this same issue or not.... I was just Up/Down graded to windows 11 and now my access combo boxes are not acting right. With win 10 I could start typing...
2
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 4 Oct 2023 starting at 18:00 UK time (6PM UTC+1) and finishing at about 19:15 (7.15PM) The start time is equivalent to 19:00 (7PM) in Central...
0
by: Aliciasmith | last post by:
In an age dominated by smartphones, having a mobile app for your business is no longer an option; it's a necessity. Whether you're a startup or an established enterprise, finding the right mobile app...
2
by: giovanniandrean | last post by:
The energy model is structured as follows and uses excel sheets to give input data: 1-Utility.py contains all the functions needed to calculate the variables and other minor things (mentions...
1
by: Teri B | last post by:
Hi, I have created a sub-form Roles. In my course form the user selects the roles assigned to the course. 0ne-to-many. One course many roles. Then I created a report based on the Course form and...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 1 Nov 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM) Please note that the UK and Europe revert to winter time on...
0
NeoPa
by: NeoPa | last post by:
Introduction For this article I'll be focusing on the Report (clsReport) class. This simply handles making the calling Form invisible until all of the Reports opened by it have been closed, when it...
4
by: GKJR | last post by:
Does anyone have a recommendation to build a standalone application to replace an Access database? I have my bookkeeping software I developed in Access that I would like to make available to other...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.