Top Rated
About TrustRadius Scoring
Score 8.8 out of 100
Top Rated


Recent Reviews

Professional and Free

8 out of 10
May 14, 2021
PostgreSQL open source relational data management system takes on a task behind a critical and important application running in our …
Continue reading


Products that are considered exceptional by their customers based on a variety of criteria win TrustRadius awards. Learn more about the types of TrustRadius awards to make the best purchase decision. More about TrustRadius Awards

Reviewer Pros & Cons

View all pros & cons

Video Reviews

Leaving a video review helps other professionals like you evaluate products. Be the first one in your network to record a review of PostgreSQL, and make your voice heard!


View all pricing

What is PostgreSQL?

PostgreSQL (alternately Postgres) is a free and open source object-relational database system boasting over 30 years of active development, reliability, feature robustness, and performance. It supports SQL and is designed to support various workloads flexibly.

Entry-level set up fee?

  • No setup fee


  • Free Trial
  • Free/Freemium Version
  • Premium Consulting / Integration Services

Would you like us to let the vendor know that you want pricing?

37 people want pricing too

Alternatives Pricing

What is Db2?

DB2 is a family of relational database software solutions offered by IBM. It includes standard Db2 and Db2 Warehouse editions, either deployable on-cloud, or on-premise.

What is Microsoft Access?

Microsoft Access is a database management system from Microsoft that combines the relational Microsoft Jet Database Engine with a graphical user interface and software-development tools.

Features Scorecard

No scorecards have been submitted for this product yet..

Product Details

What is PostgreSQL?

PostgreSQL (alternately Postgres) is a free and open source object-relational database system boasting over 30 years of active development, reliability, feature robustness, and performance. It supports SQL and is designed to support various workloads flexibly.

PostgreSQL Video

What is PostgreSQL?

PostgreSQL Integrations

PostgreSQL Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo


View all alternatives

Frequently Asked Questions

What is PostgreSQL?

PostgreSQL (alternately Postgres) is a free and open source object-relational database system boasting over 30 years of active development, reliability, feature robustness, and performance. It supports SQL and is designed to support various workloads flexibly.

What is PostgreSQL's best feature?

Reviewers rate Support Rating highest, with a score of 9.4.

Who uses PostgreSQL?

The most common users of PostgreSQL are from Small Businesses (1-50 employees) and the Computer Software industry.


(1-25 of 53)
Companies can't remove reviews or game the system. Here's why
Aurpa Fiza | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL is the most advanced and versatile DB system available and is well documented. It’s cool, and there is a lot of diversity among the people who help with it. PostgreSQL has a project (phAdmin) that allows us to carry out tasks using a friendly graphical user interface, making it an incredible database manager. It has a command-line interface for Linux and Windows that is simple to use. In addition, Golang and Python and their frameworks, such as Django for Python, can be integrated. A comprehensive documentation website makes learning about all of its features easy.
  • It works well with external data sources and runs on platforms with stable performance.
  • Clients can rest assured that their personal information will be safe and secure.
  • Many forums discuss setup and usage, and most are free.
  • Adding tooling applications to a computer is unlimited.
  • PostgreSQL runs on many OS platforms and supports ANSI SQL, stored procedures, and triggers.
  • Increasing horizontal scaling is complex, but PostgreSQL may have a solution for all replicas to accept operations.
  • No column re-ordering and better data compression are required.
  • PostgreSQL is often criticized for being slow and unsuitable for large-scale enterprise applications.
PostgreSQL, unlike other databases, is user-friendly and uses an open-source database. Ideal for relational databases, they can be accessed when speed and efficiency are required. It enables high-availability and disaster recovery replication from instance to instance. PostgreSQL can store data in a JSON format, including hashes, keys, and values. Multi-platform compatibility is also a big selling point. We could, however, use all the DBMS’s cores. While it works well in fast environments, it can be problematic in slower ones or cause multiple master replication.
December 11, 2021

Best open source RDBMS

Arsalan Khan | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Review Source
We are using PostgreSQL as the main RDBMS for our payment application where we mainly store customer data, accounting, and ledger data, etc. As well as in data warehousing along with NiFi and Metabase we use PostgreSQL as the main data storage; to collect data from multiple sources, analyze, and ETL into PostgreSQL.
  • Sophisticated locking mechanism.
  • Asynchronous replication.
  • Nested database transactions.
  • There should be some tool or way to perform migration from other RDBMS to Postgre easily.
  • Postgre can store longer string values by cutting them into available column size, which is kind of not good as compared to other databases.
It is well suited in the scenarios where you need an open-source/free RDBMS backed by solid community support. Less suited in the areas where you need more from the vendors. Postgre is not a very old database, so it is a bit hard to find expert DBAs for Postgre.
June 22, 2021

PostgreSQL Review

Anson Abraham | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Review Source
Using PostgreSQL in all aspects of the company. Using it for our front-end platform to display data. Using PostgreSQL as part of our pipeline looking up reference data. Also using it for reporting purposes as well. The data we have is structured, but with some unstructured data, the jsonb datatype support, also helps us considerably to store dynamic data generation. Helps us scale out our platform.
  • Aggregation of data quickly for report generation
  • Lookups of reference data vs looking up in files
  • organization of data for quick references
  • quick ansi sql functions vs writing out functions in program language
  • regex isn't as strong
  • parallelization of querying of data
  • data distribution natural sharding
Like any RDBMS, it's perfect for storing structured and sometimes non structured data in the db engine. Transactional data is perfect for PostgreSQL. OLAP data works well.
What it's not suited for, is large document stores. This is where PostgreSQL doesn't do well, compared to mongo. however, newer releases show that it is getting there. Genomic data (raw data) is not suited for PostgreSQL. And PostgreSQL engine alone is not suited for timeseries data. But with extensions in place, works really well.
Score 10 out of 10
Vetted Review
Verified User
Review Source
We are using PostgreSQL as a database for our microservices application. Since microservice is light by nature, performance is never a problem.
We have a lot of microservices applications since PostgreSQL is free, we could use as many database instances as we need without massive cost increase.
The main thing that we like is PostgreSQL supports the JSON column and query which is really useful in our use case.
  • Support the JSON column and able to query by the JSON value.
  • Free to use.
  • Has fairly high performance.
  • Installation and configuration can be difficult for first time users.
  • Somewhat hard to upgrade/update, especially for major releases.
  • Less online documentation and resources available compared to MySQL or SQL Server.
PostgreSQL is perfect if you are an experienced software engineer or database admin. Its wide feature set will be really useful the more you use it. It is also a cheap alternative to SQL Server since you need to pay a fairly pricey SQL Server license especially for business and enterprise, meanwhile, PostgreSQL is completely free to use.
The learning curve is a bit steep compared to MySQL and SQL Server, so might not be suited for a beginner.
Its a really great product that has rich features which are well suited for our needs. It also has a NoSQL option which could be useful in some cases. And most importantly it's free to use which is always great.
There's still room for improvement though, for example, the installation and upgrade process could be made easier, online resources could be improved as well.
Score 8 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL database is being used across the whole organization by different departments for different services/micro-services. It addresses one important business problem that is cost. We migrated from Oracle to PostgreSQL to save license cost without compromising on RDBMS requirements.
  • Easy to manage.
  • Vast number of extensions are available to meet most of the requirements.
  • Simple database backup and restore.
  • Accessing databases within the same database cluster can be done effectively instead of using dblink.
  • Automatic suggestion on the optimal parameters based on stats.
We migrated most of the oracle databases that were used by the application services to PostgreSQL database. In most of the cases it has improved performance. From my experience, performance is good for medium to large databases but not as much different for small databases.
Erlon Sousa Pinheiro | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Review Source
Currently, we are using PostgreSQL to support some DevOps operations, mainly related to monitoring (as a Zabbix database server) and configuration management (it is the database used by our Puppet/PuppetDB environment). We use it as a regular deployment as well as a Database as a service (on AWS RDS).
  • Handle large amounts of data.
  • It is scalable (for reading purposes).
  • It is compatible with so many languages as the language for triggers and stored procedures.
  • PostgreSQL could have a solution to accept operations on all replicas.
  • Could improve its "full vacuum schema" in order to be less painful for applications.
  • Could have an in-memory table type instead of having to create a partition on an in-memory file system.
I simply can't see any reason to use another object-relational database (other than licensing of compatibility with legacy applications) instead of PostgreSQL. I can surely affirm PostgreSQL is the most powerful, scalable, and reliable open-source object-relational database ever. Being able to handle a huge amount of data safely, PostgreSQL will offer you a final result many other paid options can't.
Moris Mendez | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Review Source
In our department PostgreSQL is used as the main database that supports our transactional systems, reaching a consensus for the use of a single database throughout the organization requires a joint effort that leads to a feasibility study and implementation that determine the best way forward to unify the use of a single database platform.
  • The stability it offers, its speed of response and its resource management is excellent even in complex database environments and with low-resource machines.
  • The large amount of resources it has in addition to the many own and third-party tools that are compatible that make productivity greatly increase.
  • The adaptability in various environments, whether distributed or not, [is a] complete set of configuration options which allows to greatly customize the work configuration according to the needs that are required.
  • The excellent handling of referential and transactional integrity, its internal security scheme, the ease with which we can create backups are some of the strengths that can be mentioned.
  • PostgreSQL installation must be homogeneous across all supported operating systems
  • It would be helpful to have an index of compatible tools, plugins or complementary applications within itself to increase productivity.
  • Regarding the administration of PostgreSQL itself, it would be very helpful to have a dashboard that will show us the insecurities of security, stability and operability in order to have an overview of PostgreSQL behavior.
PostgreSQL is ideal for handling databases that contain large volumes of information due to its efficiency, speed and above all because of the good management it makes of our resources, it also behaves very well in distributed environments of high demand, if you want a database of stable data and excellent performance PostgreSQL is one of the best.
Score 10 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL is one of the databases we use for our systems and products. Most of our IT systems run on PostgreSQL, such as issue tracker and wiki. We also use PostgreSQL to store analytic data which would then be fed to analytic and reporting tools to generate graphs and dashboards.
  • Supports and runs on most popular operating systems and environments.
  • Most cloud vendors support PostgreSQL.
  • Solid and reliable, PostgreSQL has been around for a very long time.
  • Has a huge online community that can help you with any questions and challenges.
  • Open source, so cost of initial ownership is much lower than Oracle, MS SQL Server.
  • Horizontal scaling can be difficult.
  • Has support for JSON type, but needs more work if compared to something like MongoDB.
PostgreSQL is a phenomenal product that can satisfy most relational data needs. If you are in an environment where cost is a factor, or you are just starting with a project and needs to get up and running quickly, then PostgreSQL should be your go-to choice. It is robust, reliable, and has all the features you would need from a SQL compliant database, without all the additional baggage that comes with other more heavyweight alternatives.
Score 10 out of 10
Vetted Review
Verified User
Review Source
We use Postgres for a variety of applications, from high availability/high traffic API services to simpler CRUD style single-page applications. It fulfills a need for a low-cost relational data store that has been tested and proven to work. Its use of common SQL is known by many engineers so the learning curve is very low.
  • Ability to handle very large datasets, 100's of GB
  • Great tooling, great selection of mature tools to pick from
  • Available in most cloud platforms
  • Easy to install and maintain
  • Low learning curve for engineers
  • I don't really have any big complaints, it's popular because it's good!
Postgres is well suited for a variety of applications, especially where relational data is involved. Its low cost and its widespread use makes it an ideal choice when looking for a relational database. It's fast reading and writing, so it can be used in low latency applications like APIs. It works well in CRUD style applications as well.

I would not be my 1st choice for big data applications, querying extremely large data in Postgres can be slow.
Score 9 out of 10
Vetted Review
Verified User
Review Source
Postgre[SQL] is awesome, as it ha[s] lots of distinct things in itself. It is [a] highly extensible object relation database. We are using this for our current applications like Virtual Class and StudyShot purposes. We are storing larger pools of servers for virtual class purposes, which uses Postgre[SQL] as backend server. These applications are organization-wide products. Overall, Postgre[SQL] is superb in larger queries, where it is solving our day-to-day business problems in complex programs. Its performance and security both are satisfactory. Postgre[SQL] have features to extend which is a very good [quality].

It [is] platform independent, so we need not to worry about [having a] specific environment. Very good support for replication also relieves us from [the] data lost burden. Its cost for owning and maintaining [in] comparison to SQL server is low so it [suits us well].
  • Built in Json support which usually takes less space and eliminates us from re-parsing again in application and can be indexed
  • Support for large size data is awesome. Currently for loggings of analytics data we use it
  • Postgre[SQL] is more secure which we have experienced. MySQL got corrupted but it retained our data.
  • Its extension support is awesome. Through its inbuilt concurrent, we get faster results
  • Its management is not easy as expected
  • Data compression needs to be more better
  • Clustering and replication need to be improved
  • For JSON datatype, queries need to be better
Postgre[SQL] is well suited for various application and scenarios. Looking to its various distinct features, it is good for applications where a large data size is needed, and Analysis programs. In our case, we specifically utilized software for these too. Apart from this we saw that its distinct JSON support, custom data size, object oriented approach are too good.
Score 8 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL open source relational data management system takes on a task behind a critical and important application running in our information systems infrastructure. Although we did not like the use of a separate model database for this application because it was different and critical at first, we are very pleased at the moment, it was unnecessary to hesitate.
  • Offering high performance.
  • It's free.
  • It is an institutional solution. And its use in very large and important national projects.
  • Good at security.
  • No compression
  • No machine learning included
Looking at many criteria such as the number of transactions, data type diversity, data size and application types to run in the front and concurrent use, PostgreSQL relational database is very suitable for medium and large projects. There are simpler applications for small projects.
Valeri Karpov | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Review Source
We've used PostgreSQL for years as a tool for our data team. We use MongoDB for operational data, but we pipe MongoDB data into Postgres. If we need a chart for an investor deck or someone has a non-trivial data question, our data team queries Postgres.
  • BI tool integration - Periscope/Sisense, Looker, etc.
  • SQL is a common skill, and Postgres' dialect strikes a good balance between stability and usability
  • JSON support
  • Running PostgreSQL locally is a nightmare
  • Hosted solutions like Amazon RDS are hard to use
  • Did I mention how difficult it is to run Postgres locally?
I wouldn't use Postgres for a production application, but I would recommend it if you're looking for a decent data store that anyone with SQL skills can use via BI tools.
Score 10 out of 10
Vetted Review
Verified User
Review Source
At my current organization, we use PostgreSQL to obtain the most current data of our host system.
This is used by the IT department only, with data obtained from it distributed organizational wide. It allows us to obtain real-time data from our host system, rather than an overnight "batch" load of data.
  • Ease of use
  • No downtime
  • Real-time data
  • The URL app works much smoother than the locally installed app.
PostgreSQL is well suited for complex queries, as well as simple queries. It is by far the fastest that I have seen in cloud applications to date. The number of users does not seem to affect performance.
Larger queries are able to be obtained quickly. There have been many times when asked for the information STAT and with other applications, I would not have been able to get the data in the time frame given.
Mark Mitchell | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL is currently at the core of everything we do. For our organization we knew that we needed a durable, feature rich and flexible database. We have various storage needs including traditional relational setups with auditing for our quoting and invoicing. Inherited structures for project standards that can adapt as needed. And dynamic JSON based data for unstructured data. With PostgreSQL there hasn't been a data problem we have not been able to solve. It allows us to collect flexible data and migrate it into structured data sets that can be utilized with traditional tooling.
  • Runs on a variety of platforms with constant performance and features
  • Data integrity is guaranteed
  • Wide support for tooling
  • Expert advise from core developers is easy to get
  • Cloud support through RDS is stellar
  • Many see PostgreSQL as slow or old
  • Horizontal scaling not easy
  • No column re-ordering
PostgreSQL is well suited for almost all industries and use case such as fInance, government, web apps, and even as a "NoSQL" document store with its JSONB/JSON and hstore capability. Its focus on ACID compliance makes it a trustworthy data store. It's a great central database with its ability to use external data sources and its ability to handle large workloads. Its ability to handle petabytes of data make it ideal for scientific and discovery workloads as well as AI neural networks. With PostgreSQL there is always a way to structure your data to make it fast and reliable.
Adolfo Maltez | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Review Source
The use of PostgreSQL in our organization has allowed us to scale the number of implementations without worrying about costs associated with licenses.
We use PostgreSQLl for a variety of transactional systems, from remote sites to headquarters.
It allows us to standardize configurations and implementations throughout the organization, accelerating the number of implementations.
  • Resilient software ensuring data integrity.
  • Unlimited number of installations without worrying about costs associated with licensing.
  • Offer a friendly alternative for configurations.
  • Offer health monitoring functionalities.
PostgreSQL works great for transactional environments where data integrity is a priority. It also offers different types of replication between instances that can be used for high availability and disaster recovery scenarios.
It can be very complex to use in simpler environments where what is needed is speed. Or in environments where multi-master replication is required.
Score 9 out of 10
Vetted Review
Verified User
Review Source
We use PostgreSQL as our solutions database, we looked for a full featured database server that will be both reliable, with high performance and supported on our Linux CentOS based platforms. We preferred Open Source solutions as we did not want to increase our solution price.
Highnet Systems' SNS++ Notification Management solution is sold on license on premise solution, as such the customer need platform (Hardware or virtual server), Operating System, Database Server, WEB Server and finality our software. by selecting Open Source platforms we are able to provide our customer with great enterprise level solution at very small cost.
PostgreSQL give us great performance supporting organizations with millions of alerts per day, with complex alert handling solutions. We started using PostgreSQL more than 15 years ago and it is still great solution, with wide industry support, easy management and development tools and because we provide our solutions to big organizations it helps to relay on platform like PostgreSQL that is constantly developed to face both new demands, environments and security risks.
  • Well designed database solutions.
  • Good support for development environments.
  • Constantly developed.
  • Wide availability in the industry.
  • Management platform not as good as I expected.
  • Does not have schema versioning.
Being an Open Source solution PostgreSQL is great choice for solutions that needs database and do not want to relay on customer database solutions.
PostgreSQL can easily integrated with many platforms we access the database from both our solution engines and the UI.
It is well known and appreciated so relaying on it as our system database can be easily accepted by our customers.
PostgreSQL continues development and support allows us to provide secure and reliable solution acceptable by customer security teams and advisors.
Paul De Audney | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL is used across a wide number of systems. Ranging from customer-facing primary data storage of traditional relational data to using it more like a NoSQL data store with the JSON & JSONB data types. Analytical workloads in some parts of the business are serviced by PostgreSQL as well.
  • Permissive licensing
  • JSONB data types allow for migration from NoSQL data stores that haven't scaled as well as would have like when providing consistency guarantees.
  • Various index types to support full text search.
  • Extensions & customization of the database.
  • Geo-spatial support with routing support.
  • Default tuning isn't optimized for modern hardware
  • No native support for multi-master setups
  • Scaling out with partitions across multiple servers can create transaction issues in some scenarios
PostgreSQL is generally well suited to basically any database workload one can think of.
  • JSONB data types are great for dealing with various use cases that come up to avoid an EAV pattern.
  • Custom data types can be supported.
  • Various extensions can really add a lot of excellent features.
  • Logical replication in later versions supports per table replication.
Don Burks | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL is the primary datastore for Sphere. All of the mission-critical customer and product data which underpins the product offering is there. PostgreSQL was the right choice because so many of the data models that we use are relational to the customer's user account,.
  • Reliability - There is absolutely no issue with uptime or data integrity.
  • Flexibility - The wide range of data types which are supported gives us immense flexibility in terms of what data we can store.
  • Speed - Even at our busiest, we are able to count on the performance of the engine matching our needs.
  • Internal features - Thanks to the wealth of internal features, we have less external dependencies to perform common business tasks.
  • The query syntax for JSON fields is unwieldy when you start getting into complex queries with many joins.
  • I wish there was a distinction (a flag) you could set for automated scripts vs working in the psql CLI, which would provide an 'Are you sure you want to do X?' type prompt if your query is likely to affect more than a certain number of rows. Especially on updates/deletes. Setting the flag in the headless(scripted) flow would disable the prompt.
  • Better documentation around JSON and Array aggregation, with more examples of how the data is transformed.
I don't know anyone who would choose another RDBMS other than PostgreSQL for a new project. Thanks to the wealth of field types, it can even function in situations where you might choose a document-based "NoSQL" db. Its indexing is excellent, meaning that high-performance applications with low thresholds for latency can benefit from it. It is the primary datastore that I recommend to anyone starting a new project which has relational data.
Vladimir Salnikov | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Review Source
I've used PostgreSQL for managing the database for agriculture support system with elements of spatial analysis by PostGIS extension. This was an internal software (not intended for public markets), used by agronomists, management, and shareholders of agricultural holdings in South Russia, Volgograd region. The database includes records about crop rotations, vegetation indices, field observation data, weather data, etc. By this info, used in analytic to achieve better productivity and reduce expenses for common field works, used to grow bulk crops, such as wheat, corn, and sunflower.
  • Advanced spatial capabilities by using PostGIS extension
  • Very fast data processing and support of native ANSI SQL language syntax allows maintaining capability and scalability of database
  • Fast data aggregation, even by SQL or stored routines/functions
  • Well documented, free for use, great community. A lot of examples, and for this reason - lesser threshold for junior developers to start with
  • Clustering and distributed processing is difficult to use and maintain
In my humble opinion, the best area to use PostgreSQL - is small and medium databases with several billion or tens of billions of records/entities with some spatial attributes analytics involved in the data processing pipeline, if needed. Using PostgreSQL with the conjunction of PostGIS extension and some other open-source software such as QuantumGIS, Leaflet, etc allows users rapidly create spatial data analytics software, maintain and modify it with few resources spend.
April 01, 2021

Postgres review

Josh Kramer | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Review Source
I have used Postgres across 3-4 different companies as the main application database for half a dozen web applications.
  • General database functionality
  • Json and hash storage types
  • Reliability
  • Continue advancement with json/hash storage and key-value store solutions
Great solution for a relational database. It also continues to support and add functionality for json/hash/key-value storage.
Javier Blanque | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL is used in several Departmental Information Systems across the Bank, from open source systems which operates with the DBMS to in-house developed systems like the one we use for Operational and Technology Risk Assessment, and Asset Management.
We use other DBMSs like MySQL (MariaDB) and Microsoft SQL Server also, so we can compare them against each other.
  • It is an excellent DBMS, which is scalable, performs well, allows replication, supports ACID and a big subset of the SQL standard (in several cases, it is a superset).
  • Is much better at data types than the other DBMSs, with a more rich semantics, with geo-spatial types, complex numbers, etc.
  • It supports several methods of indexation, including B-trees, Genetic Algorithms based indexes, and GIN indexes that accelerates full-text searches.
  • Its flexibility to select from a variety of procedural languages to make stored procedures is astonishing.
  • The performance of PostgreSQL has been enhanced through the years, but always is better to have as much performance as we can.
  • The replication services could be done directly within the database, and more easily.
  • The Object Orientation of the Database could be extended, and albeit it manages inheritance of tables, and accepts XML and JSON as primary types, it would be wonderful if one could attach methods more easily to tables (to make them more like classes), and instances (rows for example).
PostgreSQL is open source, and then, there are several companies that could give you technical support, like EnterpriseDB or Percona.
PostgreSQL is easy to install and configure and is multi-platform, you could use Windows, Mac, Linux, FreeBSD, and you could use ALL the hardware you have purchased for your project, without sinking hundreds of thousand of dollars in proprietary software, to use only a small part of your server for the database.
Let's see a concrete case: You have a project to make an information system which uses an underlying database. Then you purchase 3 servers, which cost USD 50K for the Production server, USD 25K for the Contingency Server and USD 10K for the Development Server.
If you use a proprietary database, we know what companies, they price their software licenses per every 2 cores if we use the servers physically or every 2 vcpus (threads) if we use virtual machines, and the cost range is between USD 15K and 50K for each 2 cores license. If my production server has a configuration of 24 SSDs of 3,84 TB, 2 TB of ECC RAM, and 2 CPUs AMD EPYC 7702, with 64 cores each (128 cores and 256 vcpus or threads per server), the cost of the proprietary database could be more than USD one million, and if we use a subscription mechanism to get the updates, we could be talking of another million each 3 to 5 years. That is ten times the cost of the hardware. And you can TOUCH the hardware.
Is PostgreSQL slower than the proprietary databases that we talk about? Yes; but for what margin? In in-house tests, the performance of PostgreSQL was from 50% to 75% typically, with several scenarios where PostgreSQL where speedier. But we could use ALL the cores for the DBMS, not just a few.
For us PostgreSQL is the best database in existence. Period. If we use proprietary databases yet it's only for legacy information systems, for contractual restrictions or because our providers haven't seen the light (yet).
There are several companies that you can contract for technical support, like EnterpriseDB or Percona, both first level in expertise and commitment to the software.
But we do not have contracts with them, we have done all the way from googling to forums, and never have a problem that we cannot resolve or pass around. And for dozens of projects and more than 15 years now.
Score 9 out of 10
Vetted Review
Verified User
Review Source
We in the software engineering department use Postgres to permanently store most of our customer's information that is needed by the app--anywhere from their settings, login information (of course user's passwords are encrypted and salted), to the work they've created in the app. The web app writes to Postgres whenever our users need to update their info and saves their work and reads from the app to display the webpages. What's cool is that Postgres also has great user management, so we also gave read-only access to only a few parts of the database for the finance department who want to know how much the users are using the app to charge them accurately, and also to customer support who wants to see user data in order to help users debug issues.
  • As I mentioned before, Postgres has an incredibly flexible and simple-to-use user/role management system. First, there are users--login information so that you can hand out to individual users. Then, there are roles, which specify read and/or write access to all the tables that you can assign to users. Through this system, you can easily control who can read and update which tables, and the system is very well-tested, so there's no concern with users accessing or writing to data that they shouldn't be unless your Postgres admin really messes up!
  • I could write pages on this and would need to reference the Postgres manual itself to do this justice, but Postgres is dang scalable! There are so many ways to scale it. Postgres has undergone active development by some of the brightest engineers for over 30 years now, and the result is that Postgres has so many ways you can scale it besides just upping the SSD and CPU and memory speed. You can scale reads horizontally through multiple slaves that handle all the reads. You can add highly optimized indices to your tables. You can change columns to JSONB types for super fast JSON queries. You can turn on special caches to bulk writes so they don't overwhelm the disk. Between those three options and other tips and tricks experienced Postgres admins have, you can get a lot out of them. There's a reason Yahoo stuck with Postgres for decades up until their main database even past the point of 4 Petabytes and 10k writes/second!
  • Postgres, simply put, has achieved super-wide industry adoption (6% market share), which means it's really easy to integrate it into your stack and hire knowledgeable developers to service Postgres. All the major database libraries of the common web frameworks that I know are out there (e.g. Rails-ActiveRecord, Spring-Hibernate, Play Scala-Slick) have out-of-the-box deep Postgres support, with no extra configuration needed to get your web app to start reading and writing to Postgres. I also know many universities in the US include Postgres in their curriculum too (e.g. UC Berkeley). It's really easy to hire either new grads or experienced software engineers for positions that require Postgres knowledge.
  • If you are comparing Postgres to MySQL and you want to use JSON, know that Postgres has better performance and features on indexing JSON blobs simply because Postgres beat MySQL to the JSON game by several years. I haven't used MySQL's JSON support before, but that's what my co-workers say (and it's true that Postgres definitely started support MySQL years earlier).
  • If you are comparing Postgres to MySQL, MySQL does have superior write performance. I don't want to get toooo technical here because it involves knowledge of how deep database internals work, but if you most know Uber actually switched from Postgres to MySQL for this exact reason and wrote a great article about why here:
  • Anecdotally, the Postgres replication process for keeping slaves up to date with the primary is a bit buggy. I say anecdotally because it just happened to us here at my company. A schema update made to the primary didn't make it to a replica for almost a minute and caused probably 50% of the traffic to our website to see 500 internal server error pages for the whole time, and we didn't know why until we dug deep into Postgres logs on that replica.
  • Postgres' migration from 9 to 10 was a disaster. If you want to be on the latest and greatest, which all tech companies should want, migrating your existing database from 9 to 10 was a real pain. Sure, there's a tool to do it for you, but it involved hours of downtime for our mere 4 TB of data. I wish the Postgres maintainers had put more thought into the tool to make it faster or do it bit-by-bit without downtime. And don't get me started on how confusing the configuration for the migration was....
Postgres is useful for perhaps 99% of apps that simply need to store user data somewhere and make it quickly retrievable at some later time. If you want to do full-text dynamic JSON searches (e.g. you are building a search engine), perhaps one of the NoSQL databases will serve you better. But regardless, you will probably need to store user data, even if you are building a search engine and storing it in Postgres (or a similar relational database) is much simpler. Postgres is also really good for work in industries where you get audited regularly (e.g. legal or financial) and cannot ever corrupt or lose user data, and that is because Postgres is fully ACID compliant, meaning if Postgres receives an update query, it will ALWAYS execute it even if lightning strikes the server.
AWS, Heroku, and Digital Ocean all provide Postgres-as-a-service, where you pretty much never need to administrate it yourself but they do it for you. The Postgres community also has developed awesome and reasonably priced extensions, such as Citus DB and CockroachDB in case you need additional support for running it. If you need documentation, Postgres's docs are super thorough and their official forms are active.
Balázs Kiss | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Review Source
As a company that does a lot of consultation work in software development and database and system administrating on high levels, knowing multiple RDBMS's is essential. PostgreSQL is often required by our partners, and we use it from time to time when the business choice lands on it. Most of the time we like to work with Oracle tools, but PostgreSQL proved itself to be a viable alternative for many use cases.
  • Highly reliable RDBMS for free.
  • Has tons of features that other free solutions do not have.
  • In-memory mode would be useful for many cases.
For smaller development projects where a reliable and free database is required, PostgreSQL is quite good. But for bigger, more robust solutions, it also stands it ground next to the "big" DBs. PostgreSQL's improvement is community based, meaning it will have all the tools and helpful features that a modern software developer needs. It's quite easy to administrate as well.
Most of the time, the community support is enough. Their documentation is thorough, stack overflow is often enough to answer any question that comes up.
Score 10 out of 10
Vetted Review
Verified User
Review Source
It is our primary database engine utilized in the capture, storage, and processing of all company data. We were facing massive licensing fees and large deployment times in order to deploy Microsoft SQL Server at scale. We opted instead to deploy PostgreSQL in replicated pairs (50+ and growing) in a matter of minutes! We were delighted with the ease of use and replication abilities, not to mention the amazing performance.
  • Transaction Speed
  • Customized Tuning
  • Active/Active High Availability
  • PGTune could be more extensive
It is excellent when full transactional SQL is required and reducing costs is a factor. It is also excellent where replication is required.
Community support is amazing and purchased support is available if required.
Arthur Zubarev | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Review Source
PostgreSQL is used across the entire organization and in more than one instance. PostgreSQL was already a part of a wide scale Ruby On Rails implementation and thus was a natural fit for the use in data analytics in form of data marts, data inter-exchange, reporting, and ad-hoc data storage and retrieval.
PostgreSQL fulfills a role of a dedicated and/or per-application or solution data storage engine. Its versatility and flexibility combined with exceptional user community support make a stand-out product. Integration or migration with AWS Redshift is easy and seamless. PostgreSQL has a near-complete ANSI SQL language implementation which makes it very handy for data extraction and analytics.
  • Flexibility and Unicode compliance combined with nearly full SQL features support makes PostgreSQL an ideal tool to conducting complex data analyses
  • Ease of administering PostgreSQL, SSL, SSO support make it possible to operate a very private and secure data repository
  • Programmability of PostgreSQL is superb. Multiple standard programming languages are supported, PL/SQL flavour of programming is possible
  • PostgreSQL runs on any platform
  • Replication, high availability are some of the enterprise features that anyone can implement on its own
  • Free, relatively mature for everyday use client tools
  • Most languages have native drivers
  • Superb support for JSON makes it not stop by thinking of NoSQL
  • Not exactly parallel, means a single query often is run in a sequential manner, no threads. The optimizer is hard to understand and deliver quicker queries faster is not often possible (MVCC model)
  • Index operations are slow
  • Can chew up on the CPU quite a bit
  • Comes in too many pieces, here I mean there are way too many diverse extensions that often belong to different vendors or providers
  • The "schemas" are over-thought
  • Lack of some minor basic DML features as MERGE/UPSERT (however can be done with "On Conflict"), also lacking an ability to reposition table column, case sensitive when it comes to database objects
  • No explicit user control over data compression
PostgreSQL is a go-to database for any web application, especially if one is going to reside with one of the many hosting/Cloud providers. It can analyze some, up to a few TBs, of transactional data, or can be used in data warehouses, and extending it - Geospatial, JSON, Failover, Replication are all within reach.

Not so great for ETL or large volume data processing, e.g. pulling data from foreign sources is not easy often. It is slow to read so any large table scans would be detrimental speed-wise or noticeable to end-users. No in-memory storage, so not good as cache.
I am split between somewhere 6 and 8 so I gave it a 7 largely because the support is via a user community if you are on the freeware version, which entitles you no guarantee in time or quality of support, but most of the quirks are well described with numerous remedies possible. When PostgreSQL comes from for-profit vendors, say MemSQL or Citus, the support situation goes multiple notches up because they want to ensure your success. In AWS as RDS the support it a tad anemic, but works.