PostgreSQL is a powerful, enterprise class, open source object-relational database system. The PostgreSQL project has been under continuous, active development for more than 15 years. The PostgreSQL database employs a proven robust architecture, this architecture has earned the database a reputation for being highly reliable, extremely robust, fault tolerant and accurate. The PostgreSQL database system runs on all major operating systems including:

  • Linux
  • AIX
  • BSD
  • HP-UX
  • SGI IRIX
  • Mac OS
  • Solaris
  • Tru64
  • Windows
PostgreSQL is ANSI compliant, ACID compliant and has full support for features such as:
  • Foreign Keys
  • Joins
  • Views
  • Triggers
  • Stored Procedures (in several languages)
  • Supports most SQL:2008 data types
  • Binary Large Objects
  • Multiple programming interfaces (C/C++, Java, .Net, Perl, Ruby, etc)
  • MVCC (Multi Version Concurrency Control)
  • Point In Time Recovery
  • Table spaces
  • Asynchronous replication
  • Nested transactions
  • Online/Hot backups
  • Sophisticated query planning
  • Write ahead logging
  • International character sets
  • Multibyte character encodings
  • Unicode
  • Locale awareness
  • Case sensitivity
  • Highly scalable for both data size and concurrent users
  • GIST (Generalized Search Tree) Indexes
  • Extendable data types, functions and operators
  • Some of the general PostgreSQL limits are as follows: Maximum Database Size Unlimited Maximum Table Size 32 TB Maximum Row Size 1.6 TB Maximum Field Size 1 GB Maximum Rows per Table Unlimited Maximum Columns per Table 250-1600 depending on column types Maximum Indexes per Table Unlimited PostgreSQL has earned industry wide recognition and many awards including: Developer.com Product of the Year, Database Tool 2006 Linux Journal Editors' Choice Award for Best Database 2005 Linux Journal Editors' Choice Award for Best Database 2004 Ars Technica Best Server Application 2003 Linux Journal Editors' Choice Award for Best Database


    Advantages And Features

    The PostgreSQL Database offers many advantages and main stream features to allow you to cut costs (no license fees) while still having access to all the features you would expect from an enterprise class database system.

    Key Advantages:


    No License Fees Many proprietary database vendors list "Over-deployment" as their number one license compliance issue. Running PostgreSQL means that you can deploy as many servers/instances as you want with ZERO impact to your budget due to license fees. Excellent Support The PostgreSQL community offers help in sevaral ways such as an extensive set of mailing lists, annual PostgreSQL conferences and local users groups. Additionally there are several PostgreSQL centric companies offering consulting, support and related services such as Consistent State. Reduced Staffing Costs The PostgreSQL database system has been designed from the ground up to require less maintenance and tuning intervention than the leading proprietary databases, while at the same time offering all the features, performance and scalability you would expect from a professional enterprise-class database system. Training In addition, PostgreSQL training is generally considered to be more cost effective and applicable that the training we see from the leading proprietary database vendors. Also, by leveraging services such as the Consistent State Proactive Analysis Service you can further reduce your staffing costs significantly. Legendary Reliability PostgreSQL is well known for it's legendary reliability and stability. PostgreSQL is able to auto-recover from scenarios that would leave most database systems in an unrecoverable state. In fact it's quite common for companies using PostgreSQL to report that they have NEVER had a crash of any of their PostgreSQL databases. Extendable Running PostgreSQL means that you also have access to the source code – for free ! If the built in extensibility of features are not enough you can modify the code to meet any special needs you may have. Cross Platform PostgreSQL runs on all major platforms including 34 flavors of UNIX/Linux and windows. High Volume PostgreSQL employs a strategy called MVCC (Multi Version Concurrency Control) which allows PostgreSQL to be highly effective and produce high levels of performance in high traffic environments. Multiple Database Interfaces There are multiple design, administration and interactive SQL tools available for PostgreSQL, in both command line and GUI based tools.

    Features

    PostgreSQL employs a number of enterprise class features such as:
    • Fully ACID compliant
    • ANSI SQL compliant
    • Referential Integrity
    • Replication (non-commercial and commercialsolutions)
    • Multiple native interfaces ( ODBC, JDBC, .Net,C, C++, PHP, Perl, Python, Ruby, etc)
    • Rules
    • Views
    • Triggers
    • Unicode
    • Sequences
    • Inheritance and table/data partitioning
    • Outer Joins
    • Sub-selects
    • Native SSL support
    • Procedural languages
    • Hot stand-by
    • Better than row-level locking.
    • Multiple Indexing Methods
    • Native Kerberos authentication.
    • Support for UNION, UNION ALL andEXCEPT
    • Loadable extensions offering SHA1, MD5,XML, etc
    • Extensible / user-defined data types

    Contrib Packages

    The PostgreSQL database system ships with a number of modules (called Contrib Packages) that provide extended functionality. The contrib packages are generally considered to appeal to too narrow of an audience, or are considered to be too experimental to be included in the database core. Contrib packages include modules such as: dblink: Allows queries across databases earthdistance: Provides approaches for calculating circular earth distances fuzzystrmatch: Provides methods to match strings based on similarities intarray: Provides methods for managing array's of integers pgbench: Benchmarking utilities pg_buffercache: Allows visibility into the buffer pool in real time pg_crypto: Cryptographic functions pg_standby: Allows the creation and management of a 'warm standby' server xml2: Provides XPath querying and XSLT functionality


    Third Party Software

    There are a growing number of third party software packages that are designed to work with PostgreSQL. These third party packages allow or integrate key software functionality into PostgreSQL database systems. Third party software includes such packages in key areas such as:
    • Database Administration
    • Database Development
    • Database Drivers/Interfaces
    • GUI Interfaces
    • Internet Utilities
    • General Enhancements
    • Procedural Languages
    • Etc.
    A sampling of some popular third party packages are shown here: Sky Tools A set of database management tools from Skype including WAL shipping, queueing and replication SLONY Single Master to Multiple Slaves Replication Ora2Pg Perl module to export an Oracle database schema to a PostgreSQL compatible schema. phpPgAdmin A fully functional web-based administration utility for a PostgreSQL database server. PGSD PostgreSQL Schema Designer A web tool to design schema's for PostgreSQL databases. You can run the sql generated schema and export diagrams generated by graphviz. pg_bulkload High speed data loading utility for PostgreSQL PostgreSQL Loader Python PostgreSQL Loader project is a fast data loader for PostgreSQL, with the ability to generate files of rejected rows. DBLink and Materialized Views Fully functional Materialized Views and Materialized View Logs on Pg (Pg/Oracle FAST REFRESH and Sybase/MSSQL/ODBC/MySQL COMPLETE REFRESH). It has CREATE/DROP DBLINK,CREATE/DROP/REFRESH SNAPSHOT,CREATE/DROP SNAPSHOT LOG. odbclinkv PostgreSQL ODBC interface to Oracle or Sql Server Postgres Forms (pfm) PostgreSQL client application enabling the user to design forms for administering tables. One of its key features is the possibility to define links between related tables which make it easy to navigate within a database. Round-Robin SQL Round-Robin SQL is a SQL implementation of a round robin database. Auditable PostgreSQL PostgreSQL framework in SQL and PL/PGSQLdesigned to silently sit behind your own database schema and record changes in history tables. Point-intime rollback and diffs are feature goals.


    Who's Using PostgreSQL?

    You might be surprised just how wide spread PostgreSQL usage is in the corporate world. Many companies across a wide range of industries are already using PostgreSQL extensively. Here's a sampling, for a more detailed list see the Postgresql site. Industry Companies Using PostgreSQL: eCommerce Endpoint Corporation Endpoint Corporation FlightAware Whitepages.com Education Texas Cooperative Extension University of Alabama, Birmingham University of New South Wales University of Sydney Finance Journyx Timesheets Logictree Systems Trust-Commerce Government National Weather Service United National Children's Fund U.S. Centers for Disease Control and Prevention U.S. General Services Administration U.S. State Department Media Creative Commons The Internet Movie Database Macworld The Washington Post U.S. Congress Votes Database Retail ADP Dealer Services Safeway The Rockport Company, LLC Technology Apple Fujitsu OmniTI Red Hat Sun Microsystems Telecom Cisco NTT Data Optus Skype Telstra