The EDB Blog

Deciding on Your Open Source Strategy

1/4/2018
When it comes to enterprises deciding on whether to adopt open source software or commercial software based on open source it can lead to fierce debate about the relative merits of these different approaches. EnterpriseDB ® (EDB™) provides a data management platform based on the open source project...

Top 10 Countdown - EDB Blog Reader Favorites for 2017

12/27/2017
As we approach year end, our EDB team was inspired to take a look back at our blog posts from the year and see what topics resonated the most with our readers. Here is a Top 10 recap of your favorites from 2017. 10. Pgpool II Keeps Pace With Demands of Today’s Architectures and Workloads This blog...

MVCC and VACUUM

12/19/2017
Experienced PostgreSQL users and developers rattle off the terms “MVCC” and “VACUUM” as if everyone should know what they are and how they work, but in fact many people don’t. This blog post is my attempt to explain what MVCC is and why PostgreSQL uses it, what VACUUM is and how it works, and why...

Master Your Database Domain

12/15/2017
The increasing deployment of Postgres has brought about new demands for features, capabilities, and tools from developers and database administrators. As the leading Postgres database platform company, EnterpriseDB ® (EDB™) works closely with customers to respond to their emerging needs. One of the...

Be Sure to Stop Your Backups!

12/12/2017
This article is about using pg_stop_backup() when setting up Streaming Replication. It is not an article about backup/restore methodology or policy. Introduction In a recent support case, I came across a customer who used a clever way to create streaming replication base backups–by taking a Google...

Postgres vs. PostgreSQL

12/7/2017
I have been with the project long enough to remember how the project got the name "PostgreSQL". In 1996, we inherited the name "Postgres95" from the Berkeley team's remaining member Jolly Chen. Obviously the Postgres95 name wasn't going to last long-term, so a new name had to be chosen. We could...

4 Tips for Postgres Administration

12/5/2017
Postgres Alerts It is cool to be able to stare at colorful graphs to see what Postgres is doing, but sometimes you just want to setup something, walk away, and be informed when there is problem. That is what check_postgres and tail_n_mail are designed to do. check_postgres is a script designed to...

PERCENT_RANK Vs. CUMM_DIST

11/14/2017
During research for my Postgres Window Magic talk, I studied the unusual behavior of percent_rank and cumm_dist ( cumulative distribution ). The Postgres documentation wasn't helpful. I finally came up with this paragraph to add to the Postgres 10 docs: cume_dist computes the fraction of partition...

Amazon RDS and Aurora: The Golden Arches of Postgres?

11/9/2017
Would Beyoncé still be Beyoncé if she couldn’t sing? She would of course technically be the same person, but think of how different her life would be based on whatever career choice her other skills might define. The same is true for Postgres. If you take away its most powerful and unique...

Storing the Original Time Zone

11/7/2017
In a previous blog entry I suggested storing the original time zone offset in a separate column if clients need to know the stored time in the original time zone. There is some more complexity to this issue that I would like to cover. First, when I suggested using select extract(timezone from...

Materialized Views and Foreign Data Wrappers

10/31/2017
You might know that Postgres supports materialized views and foreign data wrappers (fdw). Briefly, materialized views allow for queries to be materialized and refreshed on demand. Foreign data wrappers allow data to be pulled from foreign data sources, like Nosql stores and other Postgres servers...

Containers: Impossible to Ignore and Just Might Change Everything

10/26/2017
Virtual machines are by far the most prevalent deployment model for data centers – close to 99%. What was once a revolutionary idea has transformed into the best practice standard for data center deployments. Virtualization has evolved into a very well established and understood technology that is...

Session State Failover

10/24/2017
On the server side, high availability means having the ability to quickly failover to standby hardware, hopefully with no data loss. Failover behavior on the client side is more nuanced. For example, when failover happens, what happens to connected clients? If no connection pooler is being used,...