“PostgreSQL updates are solely driven by its community members”
The world of databases is taking on a new shape with the growth of Big Data. But how can an open source solution deliver a competitive edge against proprietary offerings? Bruce Momjian, co-founder of PostgreSQL Global Development Group and senior database
Q
How has PostgreSQL evolved over the years?
Postgres has evolved from an academic project focused on bug fixing to an enterprise project the first added SQL standards then emphasized adding enterprise-class features. It is currently in the innovation stage where we are adding features no other database has. Now begins the Golden Age of Postgres when people use it because it does things no other database can.
Q
Who drives the rollout process at Postgres? Is it solely driven by the community, or is there any role played by the EnterpriseDB team?
The rollout of PostgreSQL updates are solely driven by community members. However, inputs are taken from any user or organisation who wants to provide suggestions and feedback. EnterpriseDB supports the rollout of PostgreSQL releases by hosting software downloads and providing time for key employees to spend on community work during release cycles.
Q
Which would be the closest open source competitor for Postgres?
I do not think there is a competitor for Postgres. Several people leave MySQL because they prefer Postgres, but very few go the other way. The only real advantage MySQL has over Postgres is its install base and ISV applications. However, MySQL is not developed by an open source community. It is an open source option developed by Oracle..
Q
What do you think are the key features of Postgres that keep it a step ahead of MySQL?
By any measure—features, performance, usability and reliability—Postgres is ahead of MySQL and has been for years. I think the only advantage MySQL has is its existing
staff skills and pre-built applications that require it.
Q
How can an existing MySQL user move to Postgres? Because of its enterprise-class feature set, PostgreSQL is more like the larger, proprietary database solutions than MySQL, which has far less functionality. Most MySQL users would need to learn more about how to use a fullfeatured database management system like Postgres, and to unlearn some of the non-standard features of MySQL.
Q
Is it easy for someone using a commercial solution like, say, Oracle or Microsoft SQL Server, to migrate to Postgres? Yes, it is easy. Postgres follows the SQL standard very closely, and commercial databases have implemented SQL standard features over time. People migrate from those database solutions to Postgres every day.
However, administration of Postgres is different from those databases. This is the reason some training is recommended to perform the entire migration process.
Q
Is EDB Postgres Advanced Server by EnterpriseDB distinct from the traditional version that is available as a free and open source solution?
Yes. EDB Postgres Advanced Server enhances the community Postgres with performance, security, manageability and developer capabilities to better meet the needs of enterprise users and EnterpriseDB customers.
Q
Why would enterprises pick EnterpriseDB’s EDB Postgres Advanced Server rather than any proprietary solution today? EDB Postgres Advanced Server brings together the enhanced version of Postgres, compatibility for Oracle, and multiple tool suites for managing Postgres in a missioncritical, high availability architecture. EDB Postgres Advanced Server is the heart of the EDB Postgres Platform EDB Postgres Advanced Server allows for the safe and efficient deployment of Postgres in enterprises.
Q
What is the contribution of the open source community to the PostgreSQL project?
Postgres is completely developed by an open source community. Some community members are employed by companies that use, support or sell solutions based on Postgres, but they are community members first.
Q
Where does India stand in the list of Postgres contributors? India has many people employed by the Postgres-enabled companies. But we presently do not have many non-affiliated contributors to Postgres from India.
Q
Does it help to have local communities of developers, or is it good enough to have just users?
We like to drive what we call an ‘echo effect’, where engineers get signals from multiple directions to deploy Postgres. That does not happen if just the government says something or the industry says something. What we need is an ecosystem, where everything feeds on everything else.
The idea of having a monthly meeting in a large city like New York, Mumbai or New Delhi is incredibly important because it tells the developer community that this is where the action is, and this is where the future jobs are going to be.
Having a user group is good, but we need developers, companies and the government to create the ‘echo effect’ and say that this is what you need today.
Q
What is the secret behind the Postgres community working together so efficiently?
To make your community happy to work for you, you need to maintain a culture of service.
There are mainly five to seven types of leaders. You can find a visionary leader like Steve Jobs, an institutional leader like Jack Welch, an inspiring leader like Oprah and a servant leader like John Willard Marriott. Each of this leadership type works in different industries. You probably do not need a servant leader in technology, because it does not have much human interaction and needs innovation. You, therefore, need to have a visionary leader. Similarly, in the service industry, you need a servant leader because, effectively, all the employees in this segment are servants to their customers.
Leaders need to train people according to their industry. People do not perform actions by accident. In fact, they are trained to envision, institute or serve the customers and are also trained in the necessary skills in a good manner.
If you do not treat your employees well, they are not going to treat your customers well. This is like a one-on-one reaction. Organisations adopt this method of success. And, undoubtedly, this is vital to grow a community.
Everyone has some deficiencies, but when you interact with somebody and are able to bring out the best and minimise the deficiencies in that person, you succeed in a big way. This is what we consider as the Postgres community.
Q
Do you see any difference in open source adoption in India now compared to when you visited the country first in 2007? When I came to India for the first time in 2007, the only thing I did was go to the EnterpriseDB office. I do not think I went to any customers at that time. I do not even know if any Indian clients were using Postgres that year. I had spent a day alone in Mumbai and then I went to Pune the next day to meet the EnterpriseDB employees. That was just a twothree day trip, mainly targeted to begin my conversations
Postgres is completely developed by an open source community.
with the Indian engineers.
But when I landed in India in 2013, things were a little different. I went to Tata Consultancy Services (TCS), National Informatics Centre (NIC), Centre for Development of Advanced Computing (C-DAC), Infosys and Wipro. Those meetings were ‘tyre kicking’ exercises for us. People had no plans to move from a proprietary solution.
By 2017, the Indian open source space has been majorly transformed. NIC is already developing major projects with Postgres. So is the case with C-DAC and India-headquartered IT companies like Infosys, TCS and Wipro. So, now, we can say that people here have started investing in open source.
Q
What happens at the Enterprise DB Open Source Centre in Pune? And how critical is it from a global perspective?
We have had our Pune Open Source Centre since 2007. Originally, the Pune centre was mostly for technical support, engineering and building software, managing training and managing financing. So it was initially a big back office for us. But within a couple of years, it became clear to our team that there was a significant market in India. So we started initiating sales and established backend engineering.
Nowadays, the Open Source Centre is not only supporting local teams but is also building solutions for the global markets. We can say that the growth in Pune is much quicker, and there is a lot of talent there to enable engineering, support, training components, sales and marketing.
Q
How do you see the entrance of Microsoft SQL Server in the world of open source?
Microsoft has fought against open source for a long time, but it is good to see that its management team has seen the error of its ways. I am unclear what impact the addition of Microsoft SQL Server on Linux will be. However, it still has the baggage of being a proprietary database.
Q
What is next in Postgres?
The next release is coming out in September or October of this year. This version will be Postgres 10 and will include big things like logic replication, increased parallelism and the initial building blocks for sharding. Moreover, it should have 220-230 new features.
Q
What, do you think, is the future of open source database management systems?
Data storage needs are changing rapidly as applications become more demanding. Open source databases are in an ideal position to lead innovation by integrating data from different data storage solutions and process using a distributed architecture. I think Postgres has already started in that area.
Q
In this entire journey, was there ever a make or break situation for the team?
When I am with the core team members, I am always paranoid and have fears like what are all the risks, how could we get exposed and what are the terrible things that can happen? Just a year ago, I used to have thoughts that some large companies would come along and just hire all our key engineers. But, now, I do not think this is going to happen in the future. We have a good distribution of companies, we are not exposed to only one or two firms, and we have a large number of volunteers.
I was also scared in the recent past that some of our assets would get compromised and some of the important credentials would be leaked. Likewise, patents are my major point of concern. It is not an issue in India, but a vital thing in the US. Software patents in the US market are so broad that it is difficult to know whether you are infringing or not.
Having said that, I am not sure that I see any risks now, in working on Postgres.
Q
Lastly, what would be the key learning that you would like to share with other communities trying to drive their own open source projects?
There was a six-month period years ago, when I kind of backed out of all my projects. I did not get involved in emails and would get worked up when I saw unusual things happening in the open source world. I felt then that the harmony that we had in the past had disintegrated, and I could not bring myself to re-engage with the community. What I learnt from that experience is that the leadership of the group has to really set a tone that is balanced.
Russian author Leo Tolstoy said, “All happy families are alike; each unhappy family is unhappy in its own way.” A happy open source project really has to have all the things in all the right measures to really thrive.
A lot of open source communities have been dysfunctional. Sometimes they become dysfunctional because their leaders get too strong, or sometimes because there is a lack of structure and the individuals start fighting against each other. That can become a major problem for growth.
You need to set a tone where everyone in the community feels valued and considers that all their contributions matter, and that this is part of something that is important to their lives.
People can only contribute to a project in a community if they feel like this is the best use of their time, and this is what they can do well in their life. That happens only when you have the kind of community we have, which makes people feel this way, very effectively.
So, the more you empower people, the more dedication you will receive from them to uplift the community.
By any measure - features, performance, usability and reliability - Posgres Is ahead of MySQL and has been for years.