YugabyteDB 2.11 meets developer demands for full PostgreSQL compatibility
Yugabyte has released YugabyteDB 2.11 with updates that extend PostgreSQL compatibility in the open source database. These updates enable application developers to take advantage of powerful and familiar PostgreSQL features without compromising resiliency, scalability, or performance.
The latest version brings widely used PostgreSQL functions to YugabyteDB. These include Foreign Data Wrappers (FDW), GIN indexes, collation support and Read Committed Isolation Level for concurrent transactions.
Foreign data wrappers allow PostgreSQL databases to treat tables in remote databases as locally available tables. This makes it easy for developers to write queries that access data in the external data source as if it came from a table in the PostgreSQL database. Support for FDWs allows developers to write a JOIN query that accesses data in an external native cloud database.
This function was developed by Radek Gruchalski, Managing Director of the German integration service company Klarrio.
âAt Klarrio, we use YugabyteDB, but while working on a recent project, we ran into a hurdle when it came to Foreign Data Wrappers. Without it, our alternative was to create a one-time tool for initial data copy and data acquisition for screw change (CDC) to synchronize further data changes. This would have been highly complex. Instead, we researched a working solution for YugabyteDB and got it up and running in a matter of hours. As part of the Yugabyte open source community and working on making the database better, it met our own needs at Klarrio, but it also helped others do more and better. That is the true spirit of open source. “
PostgreSQL uses a technique called multiversion concurrency control to isolate concurrent transactions and ensure data consistency.
The SQL-92 standard defines four levels of transaction isolation; Serializable, repeatable read, read committed and read uncommitted.
YugabyteDB already supports the two strictest isolation levels, serializable and snapshot (analogous to repeatable reading). YugabyteDB 2.11 adds support for Read Committed Transaction Isolation, the default isolation level in PostgreSQL.
âThe biggest barrier to adopting databases is familiarity. PostgreSQL is the most popular database for developers. The ability to work in a similar setting is critical to productivity. What other distributed SQL databases get wrong is that they choose features that either have good compatibility with no real distributed SQL, or vice versa, âsaid Karthik Ranganathan, co-founder and CTO of Yugabyte. âWe heard loud and clear from our community that true distributed SQL with full PostgreSQL compatibility is the gold standard. We deliver that. “
Other notable features of YugabyteDB 2.11 include:
- Generalized inverted indexes or GIN indexes: These speed up the text search across several columns in a table
- collation: This provides fine-grained control over the sort order and character classification behavior of data in accordance with different locales or languages
- Support for ANALYZE: This allows you to collect statistics on the contents of database tables and to enable efficient execution planning for queries
- Support for Dapper and Mybatis ORMs: These simplify .Net and Java application development
- Support for pg_stat_monitor: This is a popular query performance monitoring tool for PostgreSQL
- Merge joins: These provide faster and more efficient joins when the input data is sorted in the join columns
âWe have been on the way for some time to offer a distributed SQL database with full PostgreSQL compatibility. As a result, we’ve already supported features that set us apart from the competition, such as stored procedures, triggers, custom types, a variety of indexes, constraints, and joins, âsaid Ranganathan. “With the new features in this version, we are making YugabyteDB the best known and most developer-friendly distributed SQL database on the market.”