postgresql/doc/src/sgml/intro.sgml

111 lines
3.8 KiB
Plaintext
Raw Normal View History

<!--
$Header: /cvsroot/pgsql/doc/src/sgml/intro.sgml,v 1.20 2002/10/24 17:48:54 petere Exp $
-->
<sect1 id="intro-whatis">
<title> What is <productname>PostgreSQL</productname>?</title>
<para>
<productname>PostgreSQL</productname> is an object-relational
database management system (<acronym>ORDBMS</acronym>) based on
<ulink url="http://s2k-ftp.CS.Berkeley.EDU:8000/postgres/postgres.html">
<productname>POSTGRES, Version 4.2</productname></ulink>,
developed at the University of California at Berkeley Computer
Science Department. The <productname>POSTGRES</productname>
project, led by Professor Michael Stonebraker, was sponsored by
the Defense Advanced Research Projects Agency
(<acronym>DARPA</acronym>), the Army Research Office
(<acronym>ARO</acronym>), the National Science Foundation
(<acronym>NSF</acronym>), and ESL, Inc.
</para>
<para>
<productname>PostgreSQL</productname> is an open-source descendant of
this original Berkeley code. It provides SQL92/SQL99 language support
and other modern features.
</para>
<para>
<productname>POSTGRES</productname> pioneered many of the
object-relational concepts now becoming available in some commercial
databases.
Traditional relational database management systems
(<acronym>RDBMS</acronym>) support a data model consisting of a collection
of named relations, containing attributes of a specific
type. In current commercial systems, possible types
include floating point numbers, integers, character
strings, money, and dates. It is commonly recognized
2002-01-07 03:29:15 +01:00
that this model is inadequate for future data-processing applications.
The relational model successfully replaced previous
models in part because of its <quote>Spartan simplicity</quote>.
2001-11-23 23:06:20 +01:00
However, this simplicity makes the
implementation of certain applications very difficult.
<productname>PostgreSQL</productname> offers substantial additional
power by incorporating the following additional
concepts in such a way that users can easily
extend the system:
<itemizedlist spacing="compact">
<listitem>
<simpara>inheritance</>
</listitem>
<listitem>
<simpara>data types</>
</listitem>
<listitem>
<simpara>functions</simpara>
</listitem>
</itemizedlist>
</para>
<para>
Other features provide additional power and flexibility:
<itemizedlist spacing="compact">
<listitem>
<simpara>constraints</simpara>
</listitem>
<listitem>
<simpara>triggers</simpara>
</listitem>
<listitem>
<simpara>rules</simpara>
</listitem>
<listitem>
2002-01-07 03:29:15 +01:00
<simpara>transactional integrity</simpara>
</listitem>
</itemizedlist>
</para>
<para>
These features put <productname>PostgreSQL</productname> into the
category of databases referred to as
<firstterm>object-relational</firstterm>. Note that this is distinct
from those referred to as <firstterm>object-oriented</firstterm>,
2001-11-23 23:06:20 +01:00
which in general are not as well suited to supporting
traditional relational database languages.
So, although <productname>PostgreSQL</productname> has some
object-oriented features, it is firmly in the relational database
world. In fact, some commercial databases have recently
incorporated features pioneered by <productname>PostgreSQL</productname>.
</para>
</sect1>
<!-- Keep this comment at the end of the file
Local variables:
mode:sgml
sgml-omittag:nil
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/lib/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->