Open source databases: A viable alternative for enterprise computing
There was a time when businesses looked on all open source software with justifiable suspicion. This is no longer the case. Well-established open source products are available with all the support and capability of proprietary products, but at a fraction of the cost.
No one thinks twice anymore of relying on Linux, when the operating system is backed by a large and professional vendor such as RedHat. Database software, perhaps the most critical and expensive infrastructure in an organization, has reached this point as well. Open source databases give you all that the technology has to offer with the reliability and efficiency you require -- especially when you have the help of a partner steeped in experience with enterprise computing.
One example of an open source database is EDB Postgres. Its developers are among the core group of lead developers on the PostgreSQL open source project, on which EDB Postgres is based. The PostgreSQL project began at UC Berkeley in 1986 and has decades of active development.
When you adopt an open source database like EDB Postgres and the professional services that accompany it, you get all the advanced features, performance, and reliability of expensive, proprietary solutions at a fraction of the cost. Your TCO drops radically, potentially by more than 70 percent. As a result, IT budget may become available for projects that you couldn’t afford otherwise.
High-end database needs
Enterprises need databases that are reliable, highly available, scalable and manageable. Other famous open source database management systems (DBMS) products, like MySQL, have been successful in the broad market of simpler use cases such as logging applications and web databases, but they have functional limitations such as meeting the full SQL standard for some functionality. The developers of PostgreSQL aimed high, at the needs of large enterprises with complex configurations while Oracle’s ownership of MySQL has limited the freedom of its developers. Large, tech-savvy enterprises, including Raytheon, MasterCard, Ericsson, and Verizon all rely on EDB Postgres.
Alone among the major open source database projects, PostgreSQL aims to comply with the important standards such as ANSI/ISO SQL and to meet the high-end database needs of large enterprises. Multiversion concurrency control (MVCC) provides for concurrency without read locks, and is part of how PostgreSQL has been atomicity, consistency, isolation, durability (ACID)-compliant for many years.
In the case of EDB Postgres, you have the option of obtaining Postgres and support services from other Postgres vendors, or directly and free, from the PostgreSQL project. Postgres's adherence to industry standards should also ease migration from proprietary systems, even to some non-Postgres database systems, if needed.
Database migration a major task
Migrating from one database platform to another is a major task and likely requires outside expertise, even if both comply broadly with standards. You'll want to look for partners that have developed sophisticated tools and a team of experts to assess which parts of your database and applications will migrate without modification, which require a compatible alternative in EDB Postgres, and which use unsupported features that require additional work. Migration is automated for many key database aspects, including data definitions, stored procedures, packages, and the data itself. Complex enterprise applications use operating system and application-level programming interfaces like Microsoft’s .NET and ODBC, Oracle’s JDBC, OCI and Pro *C. EDB Postgres provides APIs that support key capabilities of these interfaces.
With any reasonably complex installation, automated tools are insufficient to take you all the way from an optimized solution on a complex, proprietary product like Oracle to an optimized solution on an open source product such as EDB Postgres. Engineers experienced in both products and migrations between them can give you a complete migration assessment that details the full inventory of affected assets along with cost and time estimates for completion of the migration. A consulting organization's migration team can help analyze, design, and implement all of the elements in a cohesive migration process that meets specific business needs.
Optimized for the cloud
Cloud architecture is at the heart of any attempt to maximize computing performance and minimize cost. Use of public clouds may or may not be relevant to whether you should migrate to an open database platform. Open platforms are used widely in public and private clouds.
Open source database systems have been optimized to cloud architecture to a far greater degree than proprietary systems. In the case of EDB Postgres, you can get it as a managed database service in the public cloud, through Amazon Web Services’s RDS (Relational Database Service), or as self-manageable, clusterable private instances in the public or private cloud of your choice.
Many workloads need to remain under IT control and on-premises for a variety of reasons. Privacy, regulation, cost or governance concerns may make the use of a public cloud for some tasks impractical. This does not mean you need to give up all the benefits of cloud architecture.
The consumption model is one of the most attractive features of public clouds, but you can still get the benefits of it running workloads on-premises in a private cloud or non-cloud design by choosing consumption-priced, on-premises hosting and operations of your computing tasks. You pay for everything -- including the hardware, software, support, and operations -- on a consumption basis. In this way, even the most sensitive tasks can benefit from cloud economics and technology without taking the data out of your facilities.
Security and compliance
EDB Postgres was built to help users conform to the major regulatory compliance regimes, including the newly-enacted European Union’s General Data Protection Regulation (GDPR). EDB Postgres supports relevant features to make secure applications that protect data confidentiality according to policy, such as AES 512 bit cryptography, SSL certificates for strong authentication to a database, row-level security, strong audit support, and protections against SQL injection.
Attackers looking to access data don’t often try to crack the encryption; rather they try to work around it. This may involve finding or guessing passwords, finding unencrypted copies of the data, or exploiting a flaw in the security implementation. Secure implementation requires awareness at all stages of potential threats and taking measures to protect against them. Postgres gives you the tools to take these measures.
- Password storage encryption: Passwords should only ever be stored as hash values.
- Encryption for specific columns: If only some fields need to be encrypted at rest, the client can supply the key and it is decrypted on the server.
- Data partition encryption: This is generally an operating system capability of encryption of the full-disk, volume, or even at a block level.
- Encrypting passwords across a network: Passwords are actually double-encrypted when transmitted across the network.
- Encrypting data across a network: By default, all data sent across the network is encrypted with TLS.
- SSL host authentication: Clients and servers can be required to use certificates to authenticate each other for maximum confidence.
- Client-side encryption: If the server or its administrator is not to be trusted, the data can be encrypted and decrypted on the client and the server never sees clear text. This impedes the database’s ability to index and perform many other normal functions.
In the end, the software you use is a business decision just like any other. Total cost of ownership is a complex calculation for something as strategic as a corporate database management system, but aspects of it aren’t that hard.
When you consider the TCO of a solution with no up-front license costs for an open source database management system is going to improve TCO compared to a solution that charges high up-front license costs and then keeps charging you top dollar for maintenance, the lowest TCO is not that hard to calculate.
There was a time when proprietary solutions from well-capitalized software companies could be expected to provide superior solutions to those produced by a community of dedicated and talented developers. Just as Linux destroyed the market for expensive UNIX versions, open source database management systems like EDB Postgres are forcing Oracle, Microsoft, SAP, and other premium database management products to justify their pricing. With so many large, critical applications running reliably on open source products, it’s a hard case to make.
Modern databases: Lessons for leaders:
- Open source solutions are a viable alternative for enterprise database computing.
- Enterprise-class projects may require third-party support services.
- Rapid ROI and improved TCO make excellent justifications for these choices.
This article/content was written by the individual writer identified and does not necessarily reflect the view of Hewlett Packard Enterprise Company.