Re: Database cluster? - Mailing list pgsql-general

From Steve Wolfe
Subject Re: Database cluster?
Date
Msg-id 001701c05a32$01de89c0$50824e40@iboats.com
Whole thread Raw
In response to Re: Database cluster?  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-general
> > I am considering splitting the database into tables residing on separate
> > machines, and connect them on one master node.
> >
> > The question I have is:
> >
> > 1) How can I do this using PostgreSQL?
>
> You can't.

   I'll jump in with a bit more info.  Splitting tables across multiple
machines would do nothing more than make the entire system run at a snail's
pace.  Yes, it would slow it down immensely, because you just couldn't move
data between machines quickly enough.

  Why?  Well, whenever you join two tables that are on different machines,
the tables have to go across whatever sort of connection you have between
the machines.  Even if you use gigabit ethernet, you are still running at a
mere fraction of the bandwidth of the computer's internal bus - and at
orders of magnitude greater latency.  You'd have lots of CPU's sitting
around, doing absolutely nothing, waiting for data to come across the wire.

   There are alternatives, such as IP-over-SCSI.  That reduces the latency
of ethernet quite a bit, and gives you much more bandwidth (say, up to 160
megabytes/second).  However, that's still a pittance compared to the main
system bus inside your computer.

    That's one of the greatest hurdles to distributed computing.  That's why
the applications that are best adapted to distributed computing are those
that don't require much data over the wire - which certainly doesn't apply
to databases. : )

steve



pgsql-general by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: Database cluster?
Next
From: Tom Lane
Date:
Subject: Re: Bug? 'psql -l' in pg_ctl?