Oracle Database is a commercial, proprietary multi-model database management system produced by Oracle Corporation, and the largest relational database management system (RDBMS) in the world. While Oracle remains the #1 database on the market, its popularity has steadily declined by over 18% since 2013. What’s causing this massive shift? The unstoppable rise of open source databases. One database in particular is causing a huge dent in Oracle’s market share - open source PostgreSQL. In this article, we compare Oracle vs. PostgreSQL, outlining the differences in these SQL database costs, features, and ease of use for both developers and database administrators (DBA’s) alike. Check out the PostgreSQL vs. Oracle Infographic.
PostgreSQL is an open source object-relational database system with over 30 years of active development. Recognized as the fastest growing database by popularity, PostgreSQL was named the DBMS of the year in both 2018 and 2017 by DB-Engines, and continues to grow in popularity in 2019. In fact, PostgreSQL is so popular, 11.5% of PostgreSQL users are currently in the process of migrating to the RDBMS, according to the 2019 PostgreSQL Trends Report, an astounding percentage considering this is the 4th most popular database in the world. The report also analyzes the most popular database combinations with PostgreSQL, where 27.3% are currently leveraging Oracle Database within the same organization. This is largely attributed to the shift from commercial to open source, where organizations will develop new applications using an open source database while their legacy systems still remain on Oracle. These new applications are a great way for enterprise companies to test out PostgreSQL before migrating their entire infrastructure.
Now that we’ve covered the current state of affairs of our two databases, let’s compare the different features, ease of use, and costs of PostgreSQL vs. Oracle:
The #1 reason why PostgreSQL is used over another RDBMS is because of costs. The free open-source database is a great alternative to Oracle as it has no licensing costs, saving DBA’s and developers time right off the bat as they do not have to sit through lengthy licensing discussions and negotiations. You can find basically everything you need in the free community version, and any other requirements can be found in one of the hundreds of extensions developed by the community. Oracle, however, breaks down a lot of their features into separate licenses so you have to pay for those extra capabilities, and many of the advanced features are only available in their Enterprise Edition, such as rolling upgrades, advanced security, advanced replication and partitioning.
In this breakdown, we are only going to compare some key licensing and support costs between PostgreSQL and Oracle, as Oracle offers dozens of add-on features for extra costs. You can compare all of their license costs in their Oracle Technology Global Price List.
|PostgreSQL Community||Oracle Standard Edition||Oracle Enterprise Edition|
|Single Database Edition Costs||$0||$17,500||$47,500|
|Clustering / Replication||$0||Not available||$23,000|
|Advanced Security||$0||Not available||$15,000|
|Software Update License & Support (annual)||$0||Not available||$18,810|
The $47,500 licensing costs for Oracle Enterprise Edition is only for one CPU core, that ultimately has to be multiplied with the actual number of cores on the physical server. Oracle does offer discounts on their pricing, where you can receive a 10% discount if you purchase online. There is also a wide network of Oracle partners available to help you negotiate a discount, typically ranging from 15%-30%, though larger discounts of up to 40%-60% are available for larger accounts.
PostgreSQL functionality continues to evolve with the variety of tools and consultants available through the open source community, making it on par with nearly all aspects of Oracle Database with none of the cost. Oracle requires more complex ongoing administration, as all database configurations must evolve in conjunction with the data schemas and custom code. The extreme complexity also increases the risk of error which can lead to critical mistakes that cost more time and money to resolve, which is why it is a common best practice in Oracle to limit changes to only a couple times each year.
Let's take a look at core functionality of these two relational database management systems.
|Scalability||PostgreSQL offers free scalability, and can scale up to millions of transactions per seconds.||Oracle Enterprise is recommended for high workloads which are highly scalable, but costly.|
|Updates||Since the last few years, new major PostgreSQL versions are released every year and minor versions with bug fixes are released every 3 months. One of the best things about Postgres is that the PostgreSQL Global Development Group announces the major and minor release dates in advance for the convenience of users and prospects.||New Oracle versions are generally available every 2-4 years.|
|Security||PostgreSQL offers strong security capabilities through different authentication options (Host, LDAP, PAM and certificates authentication) and role-based access control (user-level, table-level and row-level). Data encryption can be achieved with advanced security plugins like pgcrypto which are available for free.||Oracle offers advanced security packages, but as a commercial database, they are available as an expensive add-on.|
|Replication||PostgreSQL supports native streaming replication and logical replication.||Oracle supported master-slave and master-master replication via Oracle Streams and Oracle multi-master in the older versions of Oracle Enterprise Edition, which has now been replaced by Oracle GoldenGate (a separately licensed application) for all types of data replications.|
|Partitioning||PostgreSQL supports declarative partitioning.||Oracle supports general horizontal partitioning supported by all RDBMS.|
|Cloud Deployments||Can be deployed on any cloud provider, with a variety of PostgreSQL hosting solutions available.||Can only be deployed on Oracle Cloud and other popular cloud providers, but users must Bring Your Own License (BYOL) or use on-demand licensing.|
PostgreSQL also introduced many other breakthrough features starting in version 10 through 11 and 12 that make it a real competitor against Oracle, such as partitioning enhancements, parallel query and logical replication. We'll be covering these in an up-coming post where you can learn more about PostgreSQL’s competitive advantages when it comes to these new features.
PostgreSQL community is one of the most active open source communities. There are a wide range of tools and extensions for every conceivable scenario, like performance profiling, auditing, etc. This reduces the amount of time development teams need to put together custom tooling to address their scenarios. Oracle also offers many tools, but they are all available as add-on solutions with additional processor license and software update license costs and support fees. Postgres experts and consultants are widely available at more reasonable rates than Oracle services. Free support for PostgreSQL is also available through many local PostgreSQL user groups all over the world, and there is also an active IRC and Slack community.
|Compatibility||PostgreSQL PL/pgsql is compatible with other relational databases like Oracle which makes it relatively easy to move to PostgreSQL.||Oracle infrastructure does not offer strong compatibility with open source RDBMS.|
|Extensions||PostgreSQL offers many free open-source extensions, including:PostGIS - support for geospatial objects store and query. CitusDB - distributes data and queries horizontally across nodes. pg_repack - reorganizes tables online to reclaim storage.||Oracle offers commercial add-ons that are available for an additional license fee.|
|Tuning||PostgreSQL offers more light-weight tuning capabilities, like their Query Optimizer, and DBaaS platforms like ScaleGrid offer advanced slow query analysis.||Oracle requires significantly more effort to install and configure due to the hundreds of tuning variables and complex system requirements. Most of the tuning capabilities provided from Automatic Workload Repository (AWR) and database advisers comes bundled with Oracle Enterprise Manager Database/Grid control that requires the Enterprise Edition.|
|Supported Operating Systems||
|Support||PostgreSQL support is available free from the community, and there are also many support providers available for advanced assistance.||Oracle support for hardware and software packages is typically available at 22% of their licensing fees.|
So Which Is Best?
PostgreSQL is without a doubt a powerful alternative to Oracle, and keeps getting better with every minor and major upgrade. Many organizations leveraging Oracle today are strategizing their migration to PostgreSQL to escape the high cost of service and vendor lock-in, and there are dozens of organizations out there to assist with a managed migration. If you’re wondering whether it’s right for you, take a look at some of the stories from these enterprise brands that have made the switch, including the Federal Aviation Authority (FAA), Goldman Sachs, and Salesforce.
Want a deeper look into the total cost of ownership of PostgreSQL vs. Oracle? Download our TCO to compare costs of both a small and large enterprise deployment with these two SQL databases to see how you can save up to 69% on your total costs over 3 years: visit the original post to download and read.