Comparison of general characteristicsSuggest edits
Prospective users must understand a few foundational details when comparing Oracle’s database with the EDB Postgres Advanced Server database. Having an understanding of these basic characteristics is especially valuable during discussions between Oracle experts and Postgres experts.
Before looking at the compatibility issues in detail, be aware that there are differences in nomenclature used in many SQL-based products. The table shows some of these differences.
|Oracle||EDB Postgres Advanced Server|
|Table or index||Table, index, or relation|
|Row||Row or tuple|
|Column||Column or attribute|
|Data block||Page—When block is on disk|
|Page||Buffer—When block is in memory|
In addition, each instance of EDB Postgres Advanced Server is referred to as a cluster. A cluster is a collection of databases that is managed by a single program instance. It consists of a data directory that contains all data and configuration files. You can refer to it in two ways: by location of the data directory or by port number. A single server can have many program installations, and you can create multiple clusters.
Both Oracle and EDB Postgres Advanced Server are mature, enterprise-class, object-relational databases that meet the industry standards for atomicity, consistency, isolation, and durability (ACID) compliance. Both were developed from the same IBM research on System R and designed to solve many of the same problems. These database programs have many similarities.
|General capabilities||Oracle||EDB Postgres Advanced Server (EPAS)|
|Design origin||Commercial implementation based on IBM’s original research for System R||Academic implementation (UC Berkeley) based on IBM’s original research for System R|
|Continuous development||Since 1979||PostgreSQL development started in 1986. EPAS development started in 2004. EPAS is based on PostgreSQL and continuously merged.|
|Object relational database||Yes||Yes|
|Processing architecture||Process based and thread based||Process based|
|Full ACID compliance||Yes||Yes|
|Multiversion concurrency control||Yes||Yes|
|Automatic workload management||Yes||No|
|Enterprise database management||Oracle Enterprise Manager||EDB Postgres Enterprise Manager|
|Write-ahead durability||Redo logs||Write-ahead log|
When considering a new database, you need to understand whether a new solution has the capacity to support existing application data designs, workloads, and anticipated growth. Applying the capacity of a new solution to your workloads and future applications means understanding how it supports data across multiple structures in the database.
|Capacities||Oracle||EDB Postgres Advanced Server|
|Max. database size||Unlimited||Unlimited|
|Max. table size||4 GB x Block Size||32 TB|
|Max. row size||4 TB||1.6 TB|
|Max. field size||For BLOB: (4 GB - 1) x DB_BLOCK_SIZE initialization parameter||1 GB|
|Max. rows per table||Unlimited||Unlimited|
|Max. columns per table||1000||250 - 1600 depending on column types|
|Max. indexes per table||Unlimited||Unlimited|