The EDB Postgres Platform Means “Enterprise” Need Not Cost an Arm and a Leg

EDB Postgres Philippines

The EDB Postgres Platform Means “Enterprise” Need Not Cost an Arm and a Leg

The EDB Postgres Platform Means “Enterprise” Need Not Cost an Arm and a Leg 800 507 Warren Cruz

Introduction

A piece of software is enterprise-grade when it caters to the needs of not a single individual, nor a select group of individuals, but the whole organization. When applied to database management systems, an enterprise database is an implementation of database software that serves the organization by managing their humongous collection of data. It must be robust enough to handle queries from hundreds to tens of thousands of users at a time. It must also have a host of features that are geared towards improving the productivity and efficiency of the organization, such as multi-processing, parallel queries, and clustering, to name a few.

For many organizations, the choice, when it comes to the selection of an enterprise database management system, has been Oracle (even MS SQL Server). To be sure, Oracle is a very capable enterprise DBMS, but at what cost?

As the title of this article suggests, it need not cost an arm and a leg. Why should it when you have the EDB Postgres Platform, the only open source-based enterprise DBMS with native Oracle compatibility?

Oracle Compatibility?

When you subscribe to EDB Postgres Enterprise, you get the EDB Postgres Advanced Server, the heart of the EDB Postgres Platform.

But first, a few brief definitions are in order.

What is the EDB Postgres Platform? According to the definition on the official EDB website: “The EDB Postgres Platform provides an enterprise-class data management platform based on PostgreSQL, including toolkits for management, integration, and migration; flexible deployment options; and services and support to deploy Postgres responsibly at scale.”

EDB Postgres Philippines

What is an EDB Postgres Enterprise subscription? Again, according to the official website: “The EDB Postgres Enterprise subscription includes the use of EDB Postgres Advanced Server, EDB’s enhanced Postgres distribution with enhanced security, enterprise tooling for DBAs and application developers, and Oracle database compatibility.”

And now to the heart of the matter, what is EDB Postgres Advanced Server? Where better else to turn than, once again, the official website:

“EDB Postgres Advanced Server is EDB’s enhanced Postgres database designed to meet the needs of the digital enterprise.

  • EDB Postgres Advanced Server incorporates all of PostgreSQL’s features with additional enterprise-class functionality for enhanced performance and security requirements for enterprise workloads.
  • EDB Postgres Advanced Server features improve DBA and developer productivity.
  • Oracle users benefit from EDB Postgres Advanced Server’s native database compatibility with Oracle, including PL/SQL, built-in packages, and many DBA tools to accelerate and simplify migrations.”
EDB Postgres Advanced Server Architecture

That last bullet point is where we want to dwell. Simply put: Because EDB Postgres Advanced Server is an enterprise-class database that is natively compatible with Oracle, your organization can enjoy enterprise-class database management services at a drastically more cost-efficient manner by moving away from Oracle onto the EDB Postgres Platform.

This movement away from Oracle can take the form of outright migration of current Oracle databases to EDB Postgres Advanced Server. It can take the form of offloading Oracle reporting jobs to EDB, thus freeing up resources for Oracle OLTP. Operational data stores? New applications development? You don’t have to buy new (and very costly!) Oracle licenses for these initiatives when EDB Postgres Advanced Server can do the job just as well, at a fraction of the cost!

According to the whitepaper entitled, “EDB Postgres Advanced Server Database Compatibility for Oracle”, EDB Postgres Advanced Server is compatible with Oracle in the following way:

EnterpriseDB extends PostgreSQL to implement the same functionality as Oracle DB primarily with data type support, selected PL/SQL compatibility, Oracle SQL syntax, and built-in SQL functions. DBAs have similar catalog views, wait events and compatible tools such as EDB*Plus and EDB*Loader. Developers have access to popular packages for fast development, advanced object type functionality, object-oriented programming support and programming features such as bulk collections and SQL hints.

Addressing Resistance to Emancipation

There are 3 primary reasons why organizations may pose some hesitation to experiencing freedom from Oracle:

1. Technical Risks. Anxiety over whether EDB Postgres Advanced Server can do the job as relating to database features.

2. Re-training Risks. The pain points of learning new technology.

3. Integration Risks. Issues pertaining to the assimilation of new technology in the I.T. infrastructure.  


How does the EDB Postgres Platform mitigate these risks?

1. Technical Risks.

The EDB Postgres Platform addresses data compatibility issues through the EDB Migration Toolkit.

According to the official website, “EDB’s Migration Toolkit (MTK) migrates tables, data, stored procedures (Oracle only) and custom developed packages (Oracle only) from SQL Server, Sybase, Oracle and MySQL to EDB Postgres Advanced Server.”

EDB Migration Tool Kit Architecture

In terms of code compatibility, EDB Postgres Advanced Server executes PL/SQL stored procedures, triggers, packages, and understands extensions like DUAL, Rownum, Decode, NVL(2) and Substr(). Its execution of PL/SQL is not emulation, translation, nor a layer on top of PL/pgSQL. Its procedural language is compiled, interpreted, and debugged just like in Oracle. For database code embedded in client programs, it has ECPGPlus (Pro*C support). Oracle’s OCI (Oracle Call Interface) is supported through EDB’s OCL (Open Client Library).

There are tools included in the EDB Postgres Platform that support mission-critical applications, such as Postgres Enterprise Manager (provides much of the same functionality DBAs use in Oracle Enterprise Manager) for monitoring, managing, tuning, and alerting. High-availability and failover are handled by EDB Failover Manager along with the binary replication and hot standby features (similar to Oracle’s Active Data Guard).

2. Re-training Risks.

Oracle users migrating to EDB Postgres Advanced Server need not worry that their current Oracle skill sets will go to waste.

Oracle developers can still code in PL/SQL. They can still use query hints (default optimizer hints, access method hints, join order hints, join relation hints, global hints, append hints). The following packages are still available to them: DBMS_ALERT, DBMS_CRYPTO, DBMS_JOB, DBMS_LOB, DBMS_LOCK, DBMS_OUTPUT, DBMS_PIPE, DBMS_PROFILER, DBMS_SCHEDULER, DBMS_SQL, DBMS_RANDOM, DBMS_RLS, DBMS_UTILITY, UTL_ENCODE, UTL_FILE, UTL_HTTP, UTL_MAIL, UTL_SMTP, UTL_URL, and custom packages. Virtual private databases can be implemented using a package compatible with Oracle’s DBMS_RLS (row level security).

Oracle DBA’s will thoroughly appreciate the following tools at their disposal:

  • EDB’s Resource Manager (CPU & I/O resource allocation). Similar to Oracle’s Resource Management and Profile.
  • EDB’s password profiles (profiles for password management). Provides Oracle compatible user account and password policy management functions. DB-level security rules are migrated from Oracle to EDB Postgres Advanced Server.
  • The ability to capture, review, and diagnose “Wait” events in DB processing through EDB Postgres Advanced Server’s DRITA (Dynamic Runtime Instrumentation Tools Architecture) functions.

Functions: get_snaps(), sys_rpt(), sess_rpt(), sessid_rpt(), sesshist_rpt(), purgesnap(), truncsnap()

Statspack-like AWR (automatic workload repository) reports: edbreport(), stat_db_rpt(), stat_tables_rpt(),              statio_tables_rpt(), stat_indexes_rpt(), statio_indexes_rpt(), edb$system_waits, edb$session_waits, edb$session_wait_history

Catalog views: edb$system_waits, edb$session_waits, edb$session_wait_history

  • EDB Postgres Advanced Server includes over 50 of Oracle’s most popular dictionary views (Catalog views), including all DBA_views and USER_views.
  • EDB Postgres Advanced Server supports Oracle’s table partitioning syntax.
  • EDB*Plus – command line tool for working directly with the database which is nearly indistinguishable from its Oracle counterpart.
  • EDB*Loader – for bulk data loads and provides support for direct path and parallel direct path loading.

3. Integration Risks. 

With EDB Replication Server, replicating and migrating data to and from Oracle becomes a breeze.

From the official website: “EDB Replication Server (EPRS) provides a robust data replication platform that replicates between Postgres databases in a single-master or multi-master mode, or from non-Postgres databases to Postgres in a single master mode. EPRS provides geographic load balancing, simplifies real-time migration, and enables heterogeneous data integration.”

edb replication server architecture

EDB Postgres Advanced Server can participate with Oracle in XA, multi-database, 2-phase commit transactions by virtue of its XA resource manager.

With EDB Postgres Advanced Server’s implementation of the SQL/MED (Management of External Data) standard, foreign data wrappers for MySQL, MongoDB, and Hadoop make quick work of integrating website and NoSQL data into a relational data store. Many other foreign data wrappers that work with the Postgres ecosystem also work with EDB Postgres Advanced Server, like LDAP, ODBC/JDBC, File/CSV, Twitter/Facebook.

edb data adapters architecture

Summary

What all this tells us is that the EDB Postgres Platform is compatible with:

1. Your technology (No application rewrites)
2. Your people (Minimal re-training)
3. Your business (Easy integration)

Inexpensive database compatibility with Oracle means that it is compatible with any organization’s Oracle technology, technical staff, and I.T. business infrastructure.

By reducing technology, re-training, and integration risks, it removes barriers to change, thereby enabling organizations to transform their I.T. infrastructures and freeing up the budget for building new applications of innovation and customer engagement. Hold on to your arm and leg and migrate to the EDB Postgres Platform. The strength and speed of your business depend on it.