Spanner in the works: The goal is not 100% compatibility, Google says of PostgreSQL interface
Meanwhile, Yugabyte says PostgreSQL compatibility for its distributed database dates back to 2019
Google has clarified details of the interface between its popular distributed SQL database-management-cum-storage-service Spanner and the open-source RDBMS PostgreSQL.
According to a blog published this week, Spanner's PostgreSQL interface uses "the familiarity and portability of PostgreSQL" to make developers' lives easier.
"Teams can be assured that the schemas and queries they build against the Spanner PostgreSQL interface can be easily ported to another PostgreSQL environment, giving them flexibility and peace of mind," said Justin Makeig, product manager for Cloud Spanner.
The post explains that Spanner's PostgreSQL interface is designed to compile PostgreSQL queries to Spanner's existing distributed query processing and storage primitives. "It also supports the PostgreSQL wire protocol, the communication channel used to connect clients. To a developer building an application, this is virtually transparent. Provisioning and monitoring databases use Spanner and Google Cloud's existing tools, while interacting with data feels like PostgreSQL. The implementation touches every layer of the database to ensure a unified experience," Makeig said.
But for those who want a distributed database with a bit more than "familiarity and portability" with PostgreSQL, there are options.
Founded by former Facebook engineers, Yugabyte takes inspiration from Spanner in terms of the distributed database, but claims full compatibility with PostgreSQL since 2019. Unsurprisingly, it had something to say about Google's news.
Karthik Ranganathan, co-founder and CTO of Yugabyte, told The Register: "This effort by Google Spanner highlights the importance of the PostgreSQL API and feature set when it comes to building cloud-native applications. To be practically useful, databases need to go beyond wire compatibility and support commonly used PostgreSQL features such as stored procedures, triggers, and user-defined functions. YugabyteDB achieves this by reusing the query layer code of PostgreSQL rather than rewriting it from scratch."
Nonetheless, Sid Nag, Gartner veep of cloud and edge technologies, said Google's PostgreSQL interface would "benefit increased adoption of Spanner since developers and database administrators who are already familiar with and skilled in PostgresSQL will be able to use Spanner without having to learn the native Spanner interfaces, query mechanisms and APIs etc, thereby opening up the use of Spanner to a whole new world of application development."
- Open-source veteran PostgreSQL emits release 14: Tweaked, scalable, and ready to get heavy
- tz database community up in arms over proposals to merge certain time zones
- Yugabyte's double-decker DBaaS follows Cochroach in distributed RDBMS
- Google plays catch-up with JSON support for distributed RDBMS Spanner
This week Google's data technology team also said it was playing nice with other popular tools in the field.
The integration means Tableau customers would be able to use Looker's semantic model to access data across the organisation, "enabling new levels of data governance while democratising access to data."
The development is also designed to pair Looker's enterprise semantic layer with Tableau's analytics platform.
Looker can be used both as an analytics and visualisation tool and as an enterprise data platform. Google's integration with Tableau is a sign it is decoupling the two technologies, said Nag.
"The idea is to open up Looker to new analytics-based technologies and interfaces such as Tableau. With this development most organisations will pick one or the other, however, some may need both Looker and Tableau – based on their varying application and workload needs and based on the developer preferences and biases. Google will help both constituents by virtue of this new capability." ®