[comp.databases] Question about multiple servers in Ingres

bmartin@uhccux.uhcc.hawaii.edu (Brian Martin) (11/06/88)

Hello,

  I was at an Ingres demo recently and heard something about Ingres having the
ability to run as many servers as systems resources permitted, such that
database performance would increase almost linearly in relation to
the number of servers running. They also mentioned something about taking
advantage of parallel architectures, such as the Sequent or Alliant computers.

  Anyone know what this means?

 ---- Brian

bg0l+@andrew.cmu.edu (Bruce E. Golightly) (11/08/88)

Parts of this don't turn up until version 6, particularly the multiple
server capabilities. As for taking advantage of parallel processors, we've
been doing some experimental work with Ingres on a Sequent box. Preliminary
results are interesting. I'm not sure what kinds of arrangements we have
with some of the vendors involved, so I can't say more now. I hope that
someone from CMU will be able to talk more about this in New Orleans.

                                       Bruce

jkrueger@daitc.daitc.mil (Jonathan Krueger) (11/09/88)

In article <2587@uhccux.uhcc.hawaii.edu>, bmartin@uhccux (Brian Martin) writes:
>I was at an Ingres demo recently and heard something about Ingres having the
>ability to run as many servers as systems resources permitted, such that
>database performance would increase almost linearly in relation to
>the number of servers running.
>
>  Anyone know what this means?
>
> ---- Brian

RTI has released little information on INGRES version 6.0, so it's
hard to say.  Some have suggested that RTI's early release of
information on their plans for distributed databases (INGRES/Star) was
used to their disadvantage by other vendors, who then announced
similar products before INGRES/Star was ready.  So this may explain
RTI's current reluctance to provide information on their plans before
they're ready as products.

However, some information has been released.  From the North American
INGRES Users Association Newsletter, February 1988, INGRES Release 6.0
Architecture: Transcript of the presentation given by Fred Carter at
the IUA conference in Tampa, Florida, November 1987:

"Release 6.0 is a three process or, in the VMS cluster case, a four
process architecture.  The three processes that you always have are
the DBMS server process, the recovery process or RCP, and the archive
process or ACP.  All of the processes will be up for the entire life
of the installation so when you boot the system and start up INGRES
they will all come up and sit around until the system goes down for
whatever reason.  The DBMS server is the person that normally
everybody talks to, that does all your database processing."

"...In terms of numbers, you can have as many DBMS servers as you
want.  It is completely tunable, one per data base, many per data
base, one per system, or many per system"

From the above, I guess the traditional "back end" will go away.  Up
to version 5.0, INGRES has required one back end per front end.  This
back end exists only for the life of the front end, so a process is
created for every run of every application.  Other vendors have
implemented client-server models that keep one back end around all the
time to serve all front ends.  From Fred Carter's talk, it looks like
version 6.0 INGRES will allow one or more servers that stay around all
the time to serve one or more clients.  I suspect that no client will
get attention from more than one server at once, however.  So each
server will attend to one or more clients.

Will this provide better performance?  Well it seems to promise the
cacheing possibilities of client-server models, without falling into
"hourglass" bottlenecks of single-server implementations.  It might
remove the current overhead of process creation for every application
launch.  It seems to avoid the software engineering errors of turning
servers into schedulers and memory managers.  Besides optimizing for
time, it may also space: one back end per front end roughly doubles
memory requirements, less OS sharing of read-only data.  But all of
this is just speculation, we won't really know until we get the
software, currently slated for May 1989.

>They also mentioned something about taking
>advantage of parallel architectures, such as the Sequent or Alliant computers.

This probably refers to RTI's long-standing interest in
multiprocessing to increase throughput.  They published a benchmark in
April 1988 called the "Silver Bullet".  (Apparently they're unfamiliar
with the use of this term to refer to a cure for syphilis.)  The
benchmark used an experimental release of INGRES on a Sequent S81 with
16 80386 processors, running under Dynix, Sequent's BSD/System V
merge.  They claim up to 104 transactions per second on the
DebitCredit benchmark.

RTI is interested in parallel execution of individual queries as well.
But this is a longer term project, and I know of no benchmarks,
products, or approaches they've published on it.  However, when I look
at their Query Execution Plans it looks an awful lot like a diagram of
order dependencies.

-- Jon
--