I had many problems on v8.3 when I needed to use SSL client certificate authentication but on version 8.4 my problem was resolved, I’m an information security specialist and my focus is it so all features about security for me is important and the security on PostgreSQL after 8.4 was good.
Specialist of Information Security at a transportation company with 1,001-5,000 employees
It increased the database possibilities within the company. I'd like the ability to import data safely and securely from other databases without errors.
What is most valuable?
How has it helped my organization?
I can say that PostgreSQL increased the database possibilities within the company.
What needs improvement?
I have a dream that a database could import data safely and securely from other databases without errors and by using a GUI to help migrate the data.
For how long have I used the solution?
I've been using it for years.
Buyer's Guide
PostgreSQL
November 2024
Learn what your peers think about PostgreSQL. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
816,406 professionals have used our research since 2012.
What was my experience with deployment of the solution?
We have had no issues with the deployment.
What do I think about the stability of the solution?
There have been no performance issues.
What do I think about the scalability of the solution?
It's been able to scale for our needs.
Which solution did I use previously and why did I switch?
In my last company, we had been using Access. We changed to PostgreSQL as we needed something more robust and usable. This was provided by PostgreSQL which at the time was the perfect solution for what we needed.
What other advice do I have?
PostgreSQL is a perfect database to be used by small to mid-sized companies. Many years ago when I worked with medium companies I would have given it a 10/10 but as the database community has grown, it has decreased.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Senior Software Engineer at a tech services company with 1,001-5,000 employees
It's not limited to a specific language, you can use any procedural language you're familiar with.
Valuable Features:
It allows people to use whatever multiple procedural language they are trained in, such as Java, Python, Pearl, or C and it is not limited to PL/SQL or PGSQL. Also, I love the PostGIS extension and I do not know of any other product like this.
Improvements to My Organization:
I can integrate solutions quicker than with other RDBMS'. At the same time, I am able to keep an RDBMS' integrity, robustness, and High Availability which is the most important thing for all my production environments.
Room for Improvement:
It is lacking some GUI admin tools and it would be nice if more could be developed by the community.
Use of Solution:
I've been using it for years.
Deployment Issues:
We have had no issues with the deployment.
Stability Issues:
There have been no performance issues.
Scalability Issues:
It's been able to scale for our needs.
Other Advice:
It's the best in my opinion because have now found what I need to enable me to quickly deploy into my production environment. Go to a professional and ask for your needs, maybe you will surprise with a variety of solutions that you never thought existed.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
PostgreSQL
November 2024
Learn what your peers think about PostgreSQL. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
816,406 professionals have used our research since 2012.
CTO at a tech services company with 51-200 employees
Array and JSON fields is good. It is too restrictive in cross-table/view constraints.
Valuable Features:
- Updatable views (also over multiple tables)
- Array and JSON fields
- Point-in-time backup and recovery (WAL files archiving)
Room for Improvement:
I find, sometimes, that it is too restrictive in cross-table/view constraints. This is very annoying as I needed to change a field definition from VARCHAR(10) to VARCHAR(30) and, having a group of views depend in it, the only solution was to implement a function that would:
- Read the view definitions
- Store them
- Delete the views
- Update the field definition
- Recreate the views
It took me like three or four hours (and caused a lot of stress) to make such a simple change. To me it looks a bit too overkill, especially nowadays that application requirements and implementation change so often.
Use of Solution:
I have used it for one and a half years.
Deployment Issues:
There were no problems with deployment.
Scalability Issues:
The app hasn’t had the need to scale much yet.
Initial Setup:
It was quite straightforward.
Implementation Team:
I implemented it myself and don’t have any particular advice about it. Today I would consider implementing it via Docker.
Other Solutions Considered:
I've only used online open source resources and would say there's not as much as there is for MySQL. Sometimes it took me some time to find a good solution to the more unusual scenarios
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Co-Founder, Technical Manager, Consultant at a hospitality company with 51-200 employees
Large open-source extensions, modules and software helpers eco-system.
What is most valuable?
- Flexible stored procedures and external functions
- WITH clauses
- Partitioning
- Large open-source extensions, modules and software helpers eco-system
How has it helped my organization?
The documentation is very well written and detailed, it helps to implement the right features for your needs in a timely manner.
What needs improvement?
Parallel processing of queries.
For how long have I used the solution?
I've used it for 12 years.
What was my experience with deployment of the solution?
There's been no issues deploying it.
What do I think about the stability of the solution?
The product always worked as described.
What do I think about the scalability of the solution?
We've had no issues scaling it.
How are customer service and technical support?
There is no tech support, however there is a lot of information available in forums or sites like serverfault.com.
Which solution did I use previously and why did I switch?
I used MySQL. PostgreSQL syntax is much clearer and consistent, and its stored procedures are powerful and fast. The documentation is also much better and of more help.
How was the initial setup?
On Debian, the provided packages are very easy to install and provide automatic updates. On Mac OS X, EnterpriseDB provides packages that work very well but as not as well integrated than in Debian.
What about the implementation team?
I implemented in-house. PostgreSQL databases needs some maintenance but that can be easily automated by a skilled administrator.
What's my experience with pricing, setup cost, and licensing?
PostgreSQL is free and open source.
What other advice do I have?
Read the documentation.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
IT Specialist at a government with 1,001-5,000 employees
Performs well, reliable, and scalable
Pros and Cons
- "The most valuable feature is the performance."
- "The solution could improve the integration."
What is our primary use case?
We use the solution for database management and storage.
What is most valuable?
The most valuable feature is the performance.
What needs improvement?
The solution could improve the integration.
For how long have I used the solution?
I have been using this solution for approximately four years.
What do I think about the stability of the solution?
I have found the solution to be stable.
What do I think about the scalability of the solution?
PostgreSQL is a scalable solution. However, it could be better.
How are customer service and technical support?
I have not needed to use the support.
How was the initial setup?
The installation is not simple, it is more difficult than DeviceSQL. We had a few issues during the installation.
What about the implementation team?
I did the implementation of this solution myself and it was more complex than MySQL.
Which other solutions did I evaluate?
I have evaluated MySQL and DeviceSQL.
What other advice do I have?
I would recommend this solution to others.
I rate PostgreSQL an eight out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Implementation Engineer at aldaris spa
Stable, simple to use, and is fairly priced
Pros and Cons
- "The most valuable features are the price, stability, it is scalable and is used by our clients in small business environments, and it is a simple product to use."
- "The user interface for the clients could be easier to use as they are small businesses. From a technical support perspective, the documentation could be improved."
What is our primary use case?
I am using it to gain knowledge of the product, as I am an implementation engineer. Some clients are public organizations, migrating from Oracle to PostgreSQL.
How has it helped my organization?
We use it daily.
What is most valuable?
The most valuable features are:
- The price
- Stability
- It is scalable and is used by our clients in small business environments
- It is a simple product to use.
What needs improvement?
The user interface for the clients could be easier to use as they are small businesses.
From a technical support perspective, the documentation could be improved. The simplicity and availability of documentation and transparency need a little improvement. The product also needs more service support. However, there is a good online community that can help to quickly find a solution.
For how long have I used the solution?
I have been using PostgreSQL for one year.
What do I think about the stability of the solution?
The product is very stable.
How was the initial setup?
The setup of PostgreSQL is straightforward.
What about the implementation team?
We use an in-house team.
What other advice do I have?
I would rate PostgreSQL a ten out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: My company has a business relationship with this vendor other than being a customer: reseller
Founding Partner at a tech vendor with 1-10 employees
All our company data is stored in it with a BI solution on top, but it lacks the ability to do distributed queries across multiple installations out of the box.
What is most valuable?
It supports full text search, and windows functions.
How has it helped my organization?
All our data is stored in PostgreSQL, and we use a BI solution on top to gather all the important metrics to our business, so the whole company has a clear picture of what is going on.
What needs improvement?
It lacks the ability to distribute queries across multiple installations out of the box.
For how long have I used the solution?
I've used it for seven years.
What was my experience with deployment of the solution?
No issues encountered.
What do I think about the stability of the solution?
I've never experienced any data loss.
What do I think about the scalability of the solution?
No issues encountered, even when querying through third-party applications.
How are customer service and technical support?
Customer Service:
I've never had to deal with customer service.
Technical Support:The support in the community is excellent, the documentation is great, and questions submitted to the mailing list are quickly answered. The IRC support is also excellent.
Which solution did I use previously and why did I switch?
I used MySQL, but I needed support for full text search. PostgreSQL adds this, and also many more advanced SQL functions.
How was the initial setup?
Setup was very easy on all platforms that I use - Linux, Mac OSX, and Windows. It is a simple walk-through installation.
What about the implementation team?
It was done in-house.
What was our ROI?
It's a free solution, and we use it as a data store, it's all return.
What's my experience with pricing, setup cost, and licensing?
PostgreSQL is free software. The only cost of setup was a few developer hours, and with it being stable, we don't have any day-to-day costs.
Which other solutions did I evaluate?
- MySQL
- Microsoft SQL Server
What other advice do I have?
PostgreSQL is one of the most stable data sources out there, and it offers you the most advance and modern functions on SQL so you can do more with less.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Database Expert with 201-500 employees
A quick look at PostgreSQL
PostgreSQL at glance
PostgreSQL is a first class product with high end enterprise class level features. This first chapter is a general review on the product with a brief talk on the database's history.
A long time ago in a galaxy far far away...
Following the works of the Berkeley's Professor Michael Stonebraker, in 1996 Marc G. Fournier asked for any volunteer interested in revamping the Postgres 95 project.
The answer came from Bruce Momjian,Thomas Lockhart, and Vadim Mikheev, the very first PostgreSQL Global Development Team.
Features
Every time a new major release is released, new powerful features join the rich set of the product's functionalities. Here is a small excerpt of what the latest version offers in terms of flexibility and reliability.
Write ahead logging
Like any RDBMS worth of this name, PostgreSQL has the write ahead logging feature. In short, when a data block is updated the change is saved in a reliable location, the so called write ahead log. The effective write on the datafile is performed later. Should the database crash the WAL is scanned and the saved blocks are replayed during the crash recovery. PostgreSQL stores the redo records in fixed size segments, usually 16 MB. When the wal segment is full PostgreSQL switches to a newly created or recycled wal segment in the process called log switch.
Point in time recovery
When the log switch happens it is possible to archive the previous segment in a safe location. Taking an inconsistent copy of the data directory is possible to restore a fully functional cluster because the archived wal segments has all the information to replay the physical data blocks on the inconsistent data files. The restore can be, optionally stopped at a given point in time. For example is possible to recover a PostgreSQL cluster to one second before the a catastrophic happening (e.g. a table drop).
Standby server and high availability
The inconsistent snapshot can be configured to stay up in continuous archive recovery. PostgreSQL 8.4 supports the warm standby configuration where the standby server does not accept connections. From the version 9.0 it is possible to enable the hot standby configuration to access the standby server in read only mode.
Streaming replication
The wal archiving doesn't work in real time. The wal shipping happens only after the log switch and in a low activity server this can leave the standby behind the master for a while. Using the streaming replication a standby server can get the wal blocks over a database connection in almost real time.
Transactional
PostgreSQL fully supports the transactions and is ACID compliant. From the version 8.0 the save points were introduced.
Procedural languages
Among the rich of feature procedural language pl/pgsql, many procedural languages such as perl or python are available for writing database functions. The DO keyword was introduced in the 9.1 to have anonymous function's code blocks.
Partitioning
The partitioning, implemented in PostgreSQL is still very basic. The partitions are tables connected with one empty parent table using the table's inheritance. Defining check constraints on the partitioned criteria the database can exclude, querying the parent table, the partitions not affected by the where condition. As the physical storage is distinct for each partition and there's no global primary key enforcement nor foreign keys can be defined on the partitioned structure.
Cost based optimizer
The cost based optimizer, or CBO, is the one of PostgreSQL's point of strength. The query execution is dynamically determined and self adapting to the underlying data structure or the estimated amount of data affected. PostgreSQL supports also the genetic query optimizer GEQO.
Multi platform support
PostgreSQL nowadays supports almost any unix flavor and from the the version 8.0 is native to Windows.
Tablespaces
The tablespace support permits the data files fine grain distribution on the OS filesystems.
MVCC
The way
PostgreSQL keeps things consistent is the MVCC which stands for Multi Version
Concurrency Control. The mechanism is neat and efficient, offering great
advantages and one single disadvantage. We'll see in detail further but keep in
mind this important sentence.
There's no such thing like an update in PostgreSQL.
Triggers
Triggers to execute automated tasks on when DML is performed on tables and also views are supported at any level. The events triggers are also supported.
Views
The read only views are well consolidated in PostgreSQL. In version 9.3 the support for the materialized and updatable was added. Also the implementation is still very basic as no incremental refresh for the mat views nor update is possible on complex views. Anyway it is still possible to replicate this behavior using the triggers and procedures.
Constraint enforcement
PostgreSQL supports primary keys and unique keys to enforce local data meanwhile the referential integrity is guaranteed with the foreign keys. The check constraint to validate custom data sets is also supported.
Extension system
PostgreSQL implements the extension system. Almost all the previously known contrib modules are now implemented in this efficient way to add feature to the server using a simple SQL command.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
Download our free PostgreSQL Report and get advice and tips from experienced pros
sharing their opinions.
Updated: November 2024
Popular Comparisons
MySQL
MariaDB
Firebird SQL
Faiss
EDB Postgres Advanced Server
SQLite
OpenSearch
LanceDB
Milvus
Qdrant
Percona Server
YugabyteDB
ClickHouse
Oracle MySQL Cloud Service
Buyer's Guide
Download our free PostgreSQL Report and get advice and tips from experienced pros
sharing their opinions.
Quick Links
Learn More: Questions:
- What is the best GUI tool for development and management of a PostgreSQL database?
- How does Firebird SQL compare with PostgreSQL?
- When evaluating Open Source Databases, what aspect do you think is the most important to look for?
- Did you switch from a different solution to MySQL? Can you list a few pros and cons for making the move?
- Which database is the best for session cashing?
- Which low-code (no-code) database solution do you prefer?
- Why is Open Source Databases important for companies?
Can you tell me, please, what tools are available for using PostgreSQL with web pages?