<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Spanner</title><link>https://cloud.google.com/blog/products/spanner/</link><description>Spanner</description><atom:link href="https://cloudblog.withgoogle.com/blog/products/spanner/rss/" rel="self"></atom:link><language>en</language><lastBuildDate>Fri, 27 Feb 2026 14:18:43 +0000</lastBuildDate><image><url>https://cloud.google.com/blog/products/spanner/static/blog/images/google.a51985becaa6.png</url><title>Spanner</title><link>https://cloud.google.com/blog/products/spanner/</link></image><item><title>Serving data from Iceberg lakehouses fast and fresh with Spanner columnar engine</title><link>https://cloud.google.com/blog/products/databases/spanner-columnar-engine-in-preview/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The divide between data in operational databases and analytical data lakehouses is disappearing fast. As businesses increasingly adopt zero ETL lakehouse architectures, the challenge shifts from simply storing data in an open data format such as Apache Iceberg to serving it with the low-latency performance and speed that modern applications and AI agents require. Whether it’s a cybersecurity provider like &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=qiVVCKEwF7w" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Palo Alto Networks&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; requiring real-time threat detection insights, or a telecommunications giant like &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/how-fastweb-vodafone-reimagined-data-workflows-with-spanner-bigquery?e=48754805"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Vodafone&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; looking to reimagine data workflows for better customer experiences, organizations need to serve precomputed insights and AI models at scale.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To help, today, we are excited to announce the preview of the &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/columnar-engine"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner columnar engine&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which allows you to serve your Iceberg lakehouse data with the scale and low latency of Google’s Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Uniting OLTP and analytics: The Spanner columnar engine&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Traditionally, organizations had to choose between the high-performance transactional capabilities of an OLTP database and the analytical power of a columnar warehouse. Spanner’s columnar engine ends this trade-off by uniting these two worlds in a single, horizontally scalable system.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The columnar engine uses a specialized storage mechanism designed to accelerate analytical queries by speeding up scans &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;up to 200 times&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; on live operational data. By storing data in a columnar format alongside traditional row-based storage, Spanner can execute complex queries automatically using vectorized execution — processing batches of data at once rather than row-by-row. Most importantly, this performance boost can be isolated from critical transaction workloads, so that customer-facing applications remain responsive while you gain real-time insights from your operational datastore.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;New features&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Since &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanners-columnar-engine-unites-oltp-and-analytics?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;we first announced Spanner columnar engine&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, we’ve added several new capabilities to accelerate performance and enhance usability. These include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Vectorized execution:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; The engine supports faster columnar scans and aggregations using vectorized execution to process data more efficiently.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Automatic query handling:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner automatically redirects large-scan analytical queries to the columnar representation, speeding up analytical queries without affecting concurrent transactional workloads, allowing for true hybrid processing.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;On-demand columnar data conversion:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; In addition to automated columnar data conversion, a new &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/manual-data-compaction"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;major compaction API&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; helps accelerate the conversion of existing non-columnar data into the columnar format.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Why Iceberg data needs a fast, low-latency serving platform&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Apache Iceberg has become the standard for open lakehouse architectures, providing a robust way to manage massive open format datasets in cloud-based storage. However, while lakehouses are excellent for large-scale analytics, they aren’t usually designed for the sub-second, high-concurrency "point lookups" or aggregated serving that live applications require.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;This is where Spanner provides a unique value proposition. By moving curated, processed data from your lakehouse into Spanner — a process known as &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/bigquery/docs/export-to-spanner"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;reverse ETL&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; — you transform "cold" analytical data into "hot" operational data. Spanner provides the global consistency and high availability that applications require, making your Iceberg data accessible via low-latency APIs for real-time decision-making and agentic AI features.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Benchmarking Spanner columnar engine&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To demonstrate Spanner’s new serving capabilities, we used&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; a leading industry benchmark for web analytics and real-time dashboards — the exact scenarios where low-latency serving is critical.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Our benchmark results with a single Spanner node showcase the power of the columnar engine:&lt;/span&gt;&lt;/p&gt;
&lt;div align="left"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;&lt;table style="width: 97.389%;"&gt;&lt;colgroup&gt;&lt;col style="width: 49.6741%;"/&gt;&lt;col style="width: 50.3259%;"/&gt;&lt;/colgroup&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Benchmark query&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner columnar engine speedup&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;Simple count of all records&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;46.3× &lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Basic aggregation with filtering&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;32.7×&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;High selectivity scan&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;46.7×&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Global aggregation&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;58.6×&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;These results represent the acceleration of real world workloads on Spanner columnar engine and show that Spanner can take complex, scan-heavy queries and return results in milliseconds, making it a great choice for powering real-time dashboards and user-facing features. Spanner is now a high-performance engine capable of delivering complex analytical results at the speeds required by modern digital experiences.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Universal reverse ETL: Serving data from all lakehouses&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner is designed to be the serving layer for your entire data ecosystem. Whether your lakehouse lives in &lt;/span&gt;&lt;a href="https://medium.com/google-cloud/spanner-better-with-bigquery-streaming-insights-faster-federated-queries-with-iceberg-and-04e1299dd831" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigQuery&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, Snowflake, Databricks, or Oracle, Spanner offers an integrated pathway for high-speed serving.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Through our latest reverse ETL workflows, you can easily bridge the gap between your analytical and operational worlds:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;BigQuery&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: The tight integration between Spanner and BigQuery provides a powerful, bidirectional bridge for managing Iceberg data across both operational and analytical environments. You can perform federated queries on BigLake Iceberg and Spanner tables using &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/bigquery/docs/spanner-external-datasets"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigQuery external datasets for Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, allowing for real-time analysis without moving data. When you need to serve curated BigQuery insights at scale, &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/bigquery/docs/export-to-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;reverse ETL workflows&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; can push data from BigQuery and BigLake Iceberg tables directly into Spanner. Furthermore, you can capture live operational changes in Spanner and stream them into &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/datastream/docs/destination-bigquery"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigQuery&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/datastream/docs/destination-blmt"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigLake Iceberg&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; tables using &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/datastream/docs/sources-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Datastream&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, ensuring your lakehouse remains synchronized with your transactional data from Spanner for agentic AI and real-time decision-making.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Databricks:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Using Databricks' Universal Format (UniForm), you can generate Iceberg metadata for your Delta Lake tables automatically. This allows Spanner to ingest your processed Databricks data via BigQuery or Dataflow, so that your "curated" datasets are ready to power applications with minimal engineering overhead. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Snowflake:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; You can export Iceberg tables to Google Cloud Storage and use BigQuery BigLake as a zero-copy intermediary to push that data directly into Spanner via EXPORT DATA commands. Alternatively, for simpler migrations, you can export Snowflake data as CSVs and use Dataflow templates for high-throughput ingestion into Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Oracle Autonomous AI Lakehouse:&lt;/strong&gt; &lt;a href="https://docs.oracle.com/en/database/goldengate/core/26/release-notes/new-features.html#OGGRN-GUID-F48FEF44-A714-4216-8BA0-4A7B9A220CBA" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Oracle Goldengate 26&lt;/span&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;ai&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; now allows you to replicate your Oracle Autonomous AI Lakehouse data into Spanner to serve insights generated from Oracle’s data ecosystem with Spanner’s scale and consistency.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Get started today&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;It’s time to stop waiting for your lakehouse queries to finish and start serving your data hot, fresh, and fast with Google Spanner powered by Spanner columnar engine. The Spanner columnar engine is now in preview. You can &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/configure-columnar-engine"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;enable&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; it on your existing Spanner tables today with a simple DDL change.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;You can see the performance acceleration of Spanner columnar engine by running the analytics benchmark queries on Spanner available on &lt;/span&gt;&lt;a href="https://github.com/GoogleCloudPlatform/cloud-spanner-samples/tree/main/columnar-engine" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Github&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for yourself.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To help you get started, here are &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;codelabs&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; to build&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; reverse ETL pipelines to Spanner from&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Databricks&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://codelabs.developers.google.com/databricks-bigquery-spanner" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;using BigLake external tables&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://codelabs.developers.google.com/databricks-csv-spanner" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;using Dataflow on CSV files on Cloud Storage&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;and&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Snowflake&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://codelabs.developers.google.com/snowflake-bigquery-spanner" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;using BigLake external tables&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://codelabs.developers.google.com/snowflake-csv-spanner" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;using Dataflow on CSV files on Google Cloud Storage&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><pubDate>Thu, 26 Feb 2026 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/spanner-columnar-engine-in-preview/</guid><category>Spanner</category><category>Databases</category><media:content height="540" url="https://storage.googleapis.com/gweb-cloudblog-publish/images/1_GGexgWX.max-600x600.jpg" width="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Serving data from Iceberg lakehouses fast and fresh with Spanner columnar engine</title><description></description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/1_GGexgWX.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/spanner-columnar-engine-in-preview/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagan R. Athreya</name><title>Group Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Girish Baliga</name><title>Director of Engineering</title><department></department><company></company></author></item><item><title>Decommission your legacy Apache Cassandra stack and build for the future with Spanner</title><link>https://cloud.google.com/blog/products/databases/cassandra-query-language-cql-apis-on-spanner/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;An increasing number of customers are migrating to &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; from legacy NoSQL environments like Apache Cassandra. The &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/introducing-cassandra-compatible-api-in-spanner?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;strategic drivers&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; are evident: a markedly lower total cost of ownership (TCO), elastic scalability, and near-zero maintenance overhead. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;With the general availability of the &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/non-relational/connect-cassandra-adapter"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;native endpoint&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; enabling Cassandra Query Language (CQL) APIs on Spanner, your existing Cassandra applications can now leverage Spanner’s enterprise foundation, featuring strong consistency, virtually limitless scale, and 99.999% availability — all while utilizing familiar CQL. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Better yet, migrating your application to Spanner with the CQL interface typically requires only a one-line code change, as your existing CQL statements remain valid. Combined with our integrated, high performance bulk and live migration tools, your transition from Cassandra to Spanner is simple&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;.&lt;/strong&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Beyond NoSQL: Strategic solutions for Cassandra Users&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;While the CQL API facilitates the move, Spanner addresses the fundamental data integrity and operational constraints inherent in traditional Cassandra architectures:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Global ACID transactions:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Minimize concerns regarding eventual consistency. Achieve comprehensive global &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/transactions"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;ACID transactions&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to help ensure data integrity at any scale.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Powerful indexing: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Strongly consistent &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/secondary-indexes"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;secondary indexes&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; support complex query patterns with built-in optimization and no integrity risks.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Rich SQL: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Utilize a sophisticated SQL interface that supports joins and aggregations.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;High reliability: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Benefit from 99.99% availability in regional setups and 99.999% in multi-regional configurations.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Compliance and latency:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Simplify data residency compliance with &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/geo-partitioning"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;geo-partitioning&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, delivering low-latency local reads and writes to a global user base.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Built-in observability:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Access a suite of performance metrics and charts directly in the Google Cloud console at no additional cost.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The native CQL endpoint provides a clear pathway to decouple your existing Cassandra applications and modernize them using the full power of Spanner. Let’s look at the next steps after migrating your data and applications from Cassandra to Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Tweak Spanner for your specific workload&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Following your migration, here’s how to optimize your Spanner environment for your workload.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="vertical-align: baseline;"&gt;1. Optimize costs and operational efficiency&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;div align="left"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;
&lt;div style="color: #5f6368; overflow-x: auto; overflow-y: hidden; width: 100%;"&gt;&lt;table&gt;&lt;colgroup&gt;&lt;col/&gt;&lt;col/&gt;&lt;col/&gt;&lt;/colgroup&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Workload Characteristics&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Recommended Solution&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Primary Benefit&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Write-intensive traffic&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/throughput-optimized-writes"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Throughput-optimized writes&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Up to a &lt;/strong&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/performance#increased-throughput"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;6x increase&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; in write throughput via request bundling (with minimal latency impact).&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Variable or fluctuating traffic&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/autoscaling-overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Autoscaler&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Automatically aligns capacity with demand, eliminating over-provisioning costs.&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Steady-state, baseline capacity&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;a href="https://cloud.google.com/spanner/docs/cuds"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Committed use discounts (CUDs)&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Secure up to &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;40% savings&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; on steady-state operational costs.&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Storage-intensive workloads&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/tiered-storage"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Tiered storage (HDD)&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="vertical-align: top; border: 1px solid #000000; padding: 16px;"&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Utilize cost-effective HDD storage for a significant reduction in long-term storage expenses.&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;2. Achieve low latencies&lt;br/&gt;&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;We continuously enhance Spanner's performance to support mission-critical, high-concurrency workloads.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Single-digit millisecond performance:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner consistently delivers under 5ms latency for both read and write operations.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner/docs/use-repeatable-read-isolation"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Repeatable read isolation&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; This feature utilizes optimistic concurrency to reduce latency and transaction aborts in read-heavy, low-contention scenarios.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner/docs/read-lease"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Read leases&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Enable strongly consistent reads in multi-region instances without cross-region coordination, maximizing node efficiency and performance.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;3. Prepare for peak traffic surges&lt;br/&gt;&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;For planned events like marketing launches or massive data ingestions, you can proactively manage capacity:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner/docs/create-manage-split-points"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Manual split APIs&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; While Spanner handles data partitioning automatically, the &lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;pre-splitting&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; capability allows you to exactly define how your database distributes data ahead of peak loads. This helps ensure immediate utilization of new capacity for stable performance.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;4. Isolate operational and analytical pipelines&lt;br/&gt;&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Prevent resource contention by isolating BI and ETL processes from core operations:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Dedicated resources:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Leverage read-only replicas and &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/directed-reads"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;directed reads&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to achieve workload isolation.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Advanced analytics:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner provides high-performance operational analytics through its &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/columnar-engine"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;columnar engine&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and integrates with BigQuery via &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/databoost/databoost-overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Data Boost&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/bigquery/docs/export-to-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;reverse ETL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/bigquery/docs/continuous-queries-introduction"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;continuous queries&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Deconstruct your Cassandra ecosystem&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Migrating from Apache Cassandra to Spanner is a strategic opportunity to decouple your architecture from a complex web of sidecar utilities. While the &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Cassandra-compatible API&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; serves as the entry point, the true value lies in collapsing the operational "Cassandra tax" into a unified, managed multi-model ecosystem.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_D2ZztYm.max-1000x1000.png"
        
          alt="image1"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Here’s a quick guide to drastically lowering your TCO while significantly boosting performance.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;1. Transition easily via connectors&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Minimize initial friction by leveraging the Spanner Cassandra Adapter&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;and connectors to port management and application layers with near-zero code modifications:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Orchestration:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Maintain your existing Airflow DAGs by redirecting to the Spanner proxy.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Application frameworks:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Transition from Spring Data Cassandra to &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/adding-spring"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spring Data Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, preserving established repository patterns while unlocking a superior transaction model.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Data processing:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Continue leveraging &lt;/span&gt;&lt;a href="https://spark.apache.org/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Apache Spark&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; by connecting to Spanner’s native CQL endpoint or using the specialized &lt;/span&gt;&lt;a href="https://github.com/GoogleCloudDataproc/spark-spanner-connector" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Connector for Spark&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;2. Retire sidecars via native integrations&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Cassandra demands a "babysitting" layer that Spanner automates. Decommission legacy maintenance tools and unlock Spanner’s advanced capabilities:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Anti-entropy:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Decommission &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Cassandra Reaper&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;. Spanner’s Paxos-based replication manages consistency natively, removing the need for manual repair cycles.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Data protection:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Replace &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Medusa&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; with &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner-native backups&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;. Move away from fragile SSTable snapshots to reliable, Point-in-Time Recovery (PITR).&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Observability:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Swap complex JMX exporters for &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Cloud Monitoring&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;. Focus on high-value metrics like &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Query Insights&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Lock Statistics&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; rather than maintenance debt.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Integrated search:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Replace external &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Elasticsearch&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; sidecars and complex ETL pipelines with &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner full-text search&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; to eliminate indices-synchronization issues.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Modern streaming:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Swap legacy CDC for &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner change streams&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, providing native integration with &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Dataflow&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Kafka&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Graph analytics:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Port &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;JanusGraph&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; to &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner Graph&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; to run openCypher queries directly on operational data without complex ETL processes.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Query federation:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Replace Trino/Presto with &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/databoost/databoost-run-queries"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigQuery Federation via Data Boost&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. Join real-time transactional data with massive data lakes without impacting production I/O.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Build the future with Spanner’s multi-model advantage&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner is the definitive always-on database that integrates relational, key-value, graph, search, and vector search capabilities into a single, interoperable platform. By transitioning to Spanner, you eliminate the overhead of managing fragmented databases and unlock the ability to develop innovative applications on a unified data foundation. Build new applications or modernize your legacy applications to take full advantage of Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Get started today&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Ready to refocus on building rather than managing? Initiate your migration today and experience the power of Spanner with your existing Cassandra Query Language.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://codelabs.developers.google.com/codelabs/spanner-cassandra-adapter-getting-started" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Codelab&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Gain practical experience with the native CQL endpoint.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Free trial&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;: Explore Spanner for 90 days or start for as little as $65/month for a production-ready instance that scales without disruption.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/non-relational/migrate-from-cassandra-to-spanner"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Migration guide&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Access deep technical documentation and comprehensive migration resources.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><pubDate>Thu, 19 Feb 2026 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/cassandra-query-language-cql-apis-on-spanner/</guid><category>Spanner</category><category>Customers</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Decommission your legacy Apache Cassandra stack and build for the future with Spanner</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/cassandra-query-language-cql-apis-on-spanner/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Nitin Sagar</name><title>Product Manager</title><department></department><company></company></author></item><item><title>Powering the next generation of agents with Google Cloud databases</title><link>https://cloud.google.com/blog/products/databases/managed-mcp-servers-for-google-cloud-databases/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;For developers building AI applications, including custom agents and chatbots, the open-source &lt;/span&gt;&lt;a href="https://www.anthropic.com/news/model-context-protocol" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Model Context Protocol (MCP)&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; standard enables your innovations to access data and tools consistently and securely. At the end of 2025, &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/ai-machine-learning/announcing-official-mcp-support-for-google-services"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;we introduced managed and remote MCP support&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for services like Google Maps and &lt;/span&gt;&lt;a href="https://cloud.google.com/bigquery"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigQuery&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, establishing a standard method for AI to connect with tools, and effectively creating a universal interface for applications. Today, we are expanding this offering to include PostgreSQL with &lt;/span&gt;&lt;a href="https://cloud.google.com/products/alloydb"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;AlloyDB&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://cloud.google.com/sql"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cloud SQL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, as well as  &lt;/span&gt;&lt;a href="https://cloud.google.com/products/firestore"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Firestore&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://cloud.google.com/bigtable"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Bigtable&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for high-performance NoSQL workloads, and introducing a new &lt;/span&gt;&lt;a href="https://developers.googleblog.com/introducing-the-developer-knowledge-api-and-mcp-server/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Developer Knowledge MCP server&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which presents an API to connect IDEs to Google’s documentation. These servers run in Google Cloud, providing a secure interface for Gemini and other MCP-compliant clients to easily interact with data and infrastructure.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;With the launch of Gemini 3, developers gained advanced reasoning capabilities to plan, build, and solve complex problems. But for an AI model to function as a useful "agent," it must reliably interact with its environment. Today’s announcement extends these capabilities more broadly to the database tools our customers leverage daily as the backbone of their work environment.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To connect your agents to these servers, you don’t need to deploy infrastructure. Just configure the MCP server endpoint in the agent configuration and immediately gain access to your operational data, backed by enterprise-grade auditing, observability and governance. With no infrastructure management, you can scale your agentic workloads without incurring operational overhead.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Bringing operational data to agents&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;These new managed servers enable agents to access specific capabilities across our portfolio:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;AlloyDB for PostgreSQL:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Agents can interact with PostgreSQL workloads, enabling tasks such as schema creation, diagnosing  complex queries for slowness and performing vector similarity search.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; With unified multi-model capabilities in Spanner such as Spanner Graph, agents can model and query complex relationships directly alongside relational and semantic data using standard (SQL and GQL) queries. This allows agents to quickly uncover deep insights (like identifying fraud rings or generating product recommendations) using the MCP tools at its disposal.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Cloud SQL for PostgreSQL, MySQL and SQL Server&lt;/strong&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Developers and database administrators can use the Cloud SQL MCP Server across MySQL, PostgreSQL, and SQL Server fleets for natural language interactions with the database, AI-assisted app development, query performance optimization and database troubleshooting via agents.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Bigtable:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Bigtable’s flexible schema and high-throughput ingestion capabilities are commonly used for building digital integration hubs and managing time series data. MCP simplifies automating operational workflows and developing agentic customer support, CRM, human resources, IT operations, supply chain and logistics applications with this data.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Firestore:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Focused on mobile and web development, the Firestore MCP server enables agents to sync with live document collections. This supports dynamic interactions such as checking user session states or verifying order statuses via natural language prompts.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Managing applications and infrastructure&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Beyond data retrieval, we are enabling agents to help build and manage applications. The &lt;/span&gt;&lt;a href="https://developers.google.com/knowledge/mcp" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Developer Knowledge MCP server&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; connects IDEs to Google’s documentation, allowing agents to answer technical questions and troubleshoot code with relevant context.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Security and governance&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Connecting an agent to a database requires robust security and governance. These servers are built on Google Cloud's standard identity and observability frameworks:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Identity-first security:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Authentication is handled entirely through Identity and Access Management (IAM) rather than shared keys. This ensures agents can only access the specific tables or views explicitly authorized by the user.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Full observability:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; To track agent activity, every query and action taken via these MCP servers is logged in Cloud Audit Logs. This provides security teams with a record of every database interaction, maintaining visibility alongside ease of access.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Demo: From local code to managed data&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Let’s see these new MCP servers in action.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Imagine an agent designed to automate the migration of a full-stack event management platform for fitness communities. Through a series of natural language instructions in the Gemini CLI, the agent utilizes the &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/sql/docs/mysql/use-cloudsql-mcp"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Cloud SQL remote MCP server&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to provision a managed PostgreSQL instance, apply the correct schema, and securely migrate your local data. You don't need to master complex &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;gcloud&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; commands or become a Cloud SQL expert; the agent handles the heavy lifting. This transition is architected in real-time by the &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Developer Knowledge MCP server&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, which references official documentation to guide the agent through best practices — easily upgrading your application's backbone from local storage to a fully managed enterprise database.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/1_onemcplaunchblogdemo.gif"
        
          alt="1 onemcplaunchblogdemo"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Support for third-party agents&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Because these servers follow the open MCP standard, they also work with your favorite AI agents. You can easily connect clients like Anthropic’s Claude by adding a Custom Connector in the settings. Simply point it to your Google Cloud database MCP endpoint, and you are ready to start building — no complex configuration files required.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/2_onemcp_launch_claudegif.gif"
        
          alt="2 onemcp launch claudegif"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;What’s next&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We’ll continue to expand this ecosystem in the coming months with managed MCP support for Looker, Database Migration Service (DMS), BigQuery Migration Service, Memorystore, Database Center, Pub/Sub, Kafka and more.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To start building secure, data-driven agents, explore our guides for &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/alloydb/docs/ai/use-alloydb-mcp"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;AlloyDB&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/use-spanner-mcp"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/sql/docs/postgres/use-cloudsql-mcp"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cloud SQL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/bigtable/docs/use-bigtable-mcp"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Bigtable&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/firestore/native/docs/use-firestore-mcp"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Firestore&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. You can also check out these codelabs for &lt;/span&gt;&lt;a href="https://codelabs.developers.google.com/ai-mcp-dk-csql#0" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cloud SQL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://codelabs.developers.google.com/spanner-mcp-server" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, along with this &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=SeuhYVg8-AU" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;demo video&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; walking through the app migration to Google Cloud.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-video"&gt;



&lt;div class="article-module article-video "&gt;
  &lt;figure&gt;
    &lt;a class="h-c-video h-c-video--marquee"
      href="https://youtube.com/watch?v=SeuhYVg8-AU"
      data-glue-modal-trigger="uni-modal-SeuhYVg8-AU-"
      data-glue-modal-disabled-on-mobile="true"&gt;

      
        &lt;img src="//img.youtube.com/vi/SeuhYVg8-AU/maxresdefault.jpg"
             alt="Gemini CLI + Google MCPs: Migrate &amp;amp; deploy full stack apps"/&gt;
      
      &lt;svg role="img" class="h-c-video__play h-c-icon h-c-icon--color-white"&gt;
        &lt;use xlink:href="#mi-youtube-icon"&gt;&lt;/use&gt;
      &lt;/svg&gt;
    &lt;/a&gt;

    
  &lt;/figure&gt;
&lt;/div&gt;

&lt;div class="h-c-modal--video"
     data-glue-modal="uni-modal-SeuhYVg8-AU-"
     data-glue-modal-close-label="Close Dialog"&gt;
   &lt;a class="glue-yt-video"
      data-glue-yt-video-autoplay="true"
      data-glue-yt-video-height="99%"
      data-glue-yt-video-vid="SeuhYVg8-AU"
      data-glue-yt-video-width="100%"
      href="https://youtube.com/watch?v=SeuhYVg8-AU"
      ng-cloak&gt;
   &lt;/a&gt;
&lt;/div&gt;

&lt;/div&gt;</description><pubDate>Wed, 18 Feb 2026 18:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/managed-mcp-servers-for-google-cloud-databases/</guid><category>AI &amp; Machine Learning</category><category>Application Development</category><category>Cloud SQL</category><category>Spanner</category><category>Databases</category><media:content height="540" url="https://storage.googleapis.com/gweb-cloudblog-publish/images/Gemini_Generated_Image_jcq8tgjcq8tgjcq8.max-600x600.png" width="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Powering the next generation of agents with Google Cloud databases</title><description></description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/Gemini_Generated_Image_jcq8tgjcq8tgjcq8.max-600x600.png</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/managed-mcp-servers-for-google-cloud-databases/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Amit Ganesh</name><title>Vice President, AI &amp; Databases</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Rahul Deshmukh</name><title>Sr. Product Manager, AI for Databases</title><department></department><company></company></author></item><item><title>Google (Spanner) Ranks #1 for Lightweight Transactions Use Case in Gartner® Critical Capabilities Report</title><link>https://cloud.google.com/blog/products/databases/gartner-ranks-spanner-1-for-lightweight-transactions-use-case/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;For the second consecutive year Google (Spanner) has been recognized by Gartner in the &lt;/span&gt;&lt;a href="https://cloud.google.com/resources/content/critical-capabilities-dbms?e=48754805"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Critical Capabilities for Cloud Database Management Systems for Operational Use Cases&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; report, where it &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;ranked #1&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; in the Lightweight Transactions Use Case. In our opinion, this is a testament to its efficiency, low latency, and high-performance consistency. It was also &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;ranked #2&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; in the OLTP Transactions Use Case in the latest rankings. We feel this shows that its "infinite" horizontal scale doesn't come at the cost of traditional transactional performance. To us, this back-to-back recognition underscores a theme of sustained excellence and continuous innovation for the world’s most demanding data environments&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/1_5UdzKPP.max-1000x1000.png"
        
          alt="1"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="rkui7"&gt;Check out the full &lt;a href="https://cloud.google.com/resources/content/critical-capabilities-dbms?e=48754805"&gt;Gartner report&lt;/a&gt;.&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;A look at operational performance&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Looking at the Critical Capabilities Ratings, we believe Spanner’s performance is why it continues to be recognized across a variety of categories:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;#1 in Lightweight Transactions Use Case (second year in a row)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: As microservices and event-driven architectures become the norm, the ability to handle high-frequency, low-latency transactions is paramount. We feel Spanner’s #1 ranking shows it is the most efficient engine for these modern workloads.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Distributed Transactions Support (Score: 5.0/5.0)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Spanner is the only service to receive a 5.0 for the ability to support distributed transactions across multiple nodes, regions and geographies.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;AI/Machine Learning and GenAI (Score: 4.6/5.0)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: We believe this score is the result of the massive wave of innovation we undertook in 2025 to integrate AI directly into Spanner.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Transactional Consistency (Score: 4.9/5.0)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Spanner offers external consistency at planet-scale, helping ensure that every transaction is globally accurate, every time.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;#2 in OLTP Use Case&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Spanner is increasingly being used for traditional, high-volume transactional workloads, thanks to, in our view, its "infinite" horizontal scale, which makes it a top-tier choice for legacy migrations.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;These positionings, to us, signal that Spanner has evolved from a specialized solution for global scale into the most technically capable database suitable for nearly any mission-critical application.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;The foundation for the agentic enterprise&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In 2025, Spanner became the "brain" of AI agents, driven by a number of new capabilities:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/graph/overview"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt; (now GA)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: A unified graph and relational experience. With Spanner Graph, you can traverse complex relationships using ISO-standard GQL alongside SQL. This is critical for building knowledge graphs that ground AI agents in real-world facts.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/topics/developers-practitioners/hybrid-search-in-spanner-combine-full-text-and-vector-search"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Integrated hybrid search&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;: Generally available since 2025, Spanner supports high-scale full text and vector search directly within its SQL and Graph modalities, allowing for integrated, low-latency retrieval-augmented generation (RAG) at scale.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanners-columnar-engine-unites-oltp-and-analytics?e=48754805"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner columnar engine&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;: This architectural breakthrough enables analytical queries to run up to 200× faster on live operational data served from &lt;/span&gt;&lt;a href="https://medium.com/google-cloud/spanner-better-with-bigquery-streaming-insights-faster-federated-queries-with-iceberg-and-04e1299dd831" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Iceberg tables&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, providing agents with the real-time context they need without the "ETL tax."&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/products/databases/introducing-cassandra-compatible-api-in-spanner?e=48754805"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Expanded interoperability&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; With new Cassandra-compatible APIs, we've made it easier than ever to bring scale-out workloads to Spanner with zero code changes, so that your legacy data can participate in the AI revolution.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;A blueprint for tomorrow&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In our opinion, the Gartner recognition validates our belief that the future of data is unified, open, and inseparable from AI. Every day, we see customers leveraging Spanner’s recent innovations:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li role="presentation"&gt;&lt;a href="https://www.youtube.com/watch?v=qiVVCKEwF7w" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Palo Alto Networks&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; As a global cybersecurity leader, Palo Alto Networks relies on Spanner to be the heart of its multi-tenant architecture. By leveraging Spanner’s 99.999% availability and &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner Graph&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, they have unlocked crucial access-control use cases at planet-scale. This integrated approach allows them to secure AI at scale, stitching together a cohesive architecture that manages critical customer workflows without the need for specialized graph database silos.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/topics/retail/inside-mercado-libres-multi-faceted-spanner-foundation-for-scale-and-ai?e=48754805"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Mercado Libre&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; The Latin American e-commerce and fintech giant uses Spanner for its foundational consistency and scale. By integrating Spanner with their internal "Fury" platform, they manage millions of daily financial transactions with near-perfect uptime. They leverage &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner data boost&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; for real-time analytics without impacting transactional performance, and they are now using Spanner as the reliable memory store for their next generation of AI-driven financial agents.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/products/databases/unico-builds-cutting-edge-idtech-with-spanner-vector-search?e=48754805"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Unico&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; This leading IDTech company prevents billions in fraud by facilitating over 1.2 billion digital identity authentications, since 2021. Spanner’s &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;integrated vector search&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; allows Unico to perform complex 1:N facial biometric searches across billions of vectors with high precision and low latency. This eliminates the need for a separate vector database, so that their "Identity Network" remains fast, accurate, and maintenance-free.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Ready to see why Spanner was recognized?&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The future of data is unified and built for AI. By ranking #1 in Lightweight Transactions and we believe Spanner is the premier choice for your mission-critical applications.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/resources/content/gartner-dbms-mq-report?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Read the full 2025 Gartner® Magic Quadrant for Cloud DBMS&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/resources/content/critical-capabilities-dbms?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Explore the 2025 Gartner Critical Capabilities for Operational Cloud DBMS&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Try Spanner for free&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and start building your AI-ready applications today.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;sub&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;Critical Capabilities for Cloud Database Management Systems for Operational Use Cases, By Ramke Ramakrishnan, Masud Miraz, Xingyu Gu, Henry Cook, Aaron Rosenbaum, November 19, 2025.&lt;/span&gt;&lt;/sub&gt;&lt;/p&gt;
&lt;p&gt;&lt;sub&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;GARTNER and MAGIC QUADRANT are registered trademarks and service marks of Gartner, Inc. and/or its affiliates in the U.S. and internationally and are used herein with permission. All rights reserved.&lt;/span&gt;&lt;/sub&gt;&lt;/p&gt;
&lt;p&gt;&lt;sub&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner's research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.&lt;/span&gt;&lt;/sub&gt;&lt;/p&gt;
&lt;p&gt;&lt;sub&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;This graphic was published by Gartner, Inc. as part of a larger research document and should be evaluated in the context of the entire document. The Gartner document is available upon request from Google Cloud.&lt;/span&gt;&lt;/sub&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Wed, 18 Feb 2026 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/gartner-ranks-spanner-1-for-lightweight-transactions-use-case/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Google (Spanner) Ranks #1 for Lightweight Transactions Use Case in Gartner® Critical Capabilities Report</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/gartner-ranks-spanner-1-for-lightweight-transactions-use-case/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagan R. Athreya</name><title>Group Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagdeep Singh</name><title>Director Product Management</title><department></department><company></company></author></item><item><title>Spanner in 2025: Innovations powering intelligent, multi-model AI applications</title><link>https://cloud.google.com/blog/products/databases/spanner-in-2025/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;For over a decade now, Google has relied on Spanner, an always-on, virtually unlimited database to power global-scale applications like Gmail, YouTube, and Google Photos. Today, Spanner handles over 6 billion queries per second at peak and more than 17 exabytes of data, with five 9s of availability, plus global consistency. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span style="vertical-align: baseline;"&gt;2025 was a big year for Spanner on Google Cloud, too, where it powers demanding workloads for customers like &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=L9WmdZD6z8E&amp;amp;t=1300s" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Walmart&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=8RXnNgcEp3o&amp;amp;t=851s" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Goldman Sachs&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://youtu.be/Xsz7m6TvXxM?t=1815" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Palo Alto Networks&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://youtu.be/Xsz7m6TvXxM?t=638" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Shopify&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=bGlBratj1-E&amp;amp;t=10s" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;MercadoLibre&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. At the same time, in an era defined by artificial intelligence, the role of databases is undergoing a profound transformation. The database is evolving beyond its traditional function as a passive data repository, emerging instead as an &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;intelligent context hub&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;. Spanner now powers key use cases like &lt;/span&gt;&lt;a href="https://codelabs.developers.google.com/spanner-ai-graph-recommendations#0" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;product search and recommendations&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://github.com/GoogleCloudPlatform/cloud-spanner-samples/tree/main/TransitFraud" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;fraud detection&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://youtu.be/tIYO0aTmv20?t=1231" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;identity resolution&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/topics/telecommunications/the-autonomous-network-operations-framework-for-csps?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;autonomous network operations (ANO)&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;As we gear up for an exciting 2026, let’s take a minute to review some of last year’s highlights. In a nutshell, i&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;n 2025, we:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Made Spanner a first-class citizen for AI workloads&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Bridged the gap between operational and analytical data&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Made migrations simpler&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Raised the bar on price performance, and &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Enhanced enterprise safety and data protection&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Let’s review!&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner AI with multi-model support&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To build truly intelligent generative AI applications, you shouldn't have to glue together multiple point solutions. This is why in 2024, we integrated &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;vectors, graphs, and relational data &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;to provide context for your AI models. In 2025, we expanded these multi-model capabilities, adding new functionality across graph, vector, text search, as well as &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/ml"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Vertex AI&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; integrations. &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;AI capabilities:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; We introduced multiple capabilities to make Spanner an AI-first database. This includes built-in AI integrations such as&lt;/span&gt; &lt;a href="https://docs.cloud.google.com/spanner/docs/release-notes#October_20_2025"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;ML.PREDICT for natural language queries&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;,&lt;/span&gt; &lt;a href="https://googleapis.github.io/genai-toolbox/resources/sources/spanner/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;MCP Toolbox for Databases&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;,&lt;/span&gt; &lt;a href="https://docs.cloud.google.com/spanner/docs/pre-built-tools-with-mcp-toolbox#connect-spanner-gemini-cli-extension"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner extension for Gemini CLI&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/data-agent-overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;conversational data agents&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and&lt;/span&gt; &lt;a href="https://google.github.io/adk-docs/tools/google-cloud/spanner/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Agent Development Kit for Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which together, empower developers to build sophisticated, agentic applications with Spanner. We also extended our multi-model platform to power advanced AI use cases, such as using&lt;/span&gt; &lt;a href="https://docs.cloud.google.com/spanner/docs/graph/perform-vector-similarity-search"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;graphs with vector search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for GraphRAG use-cases. Finally, &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/vertex-ai/generative-ai/docs/rag-engine/understanding-ragmanageddb"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Vertex RAG Engine&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; now lets you use Spanner as a RAG-managed database for data indexing and retrieval operations.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Graph enhancements:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;a href="https://cloud.google.com/products/spanner/graph?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; added support for &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/graph/manage-schemaless-data"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;schemaless data&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; that enables iterative development and frequent updates without requiring schema changes. You can also now build graphs on &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;named schema&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; objects and on &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/graph/graph-with-views-how-to"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;SQL views&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, organizing and encapsulating important aspects of your app.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Full text search&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: The &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/full-text-search/query-overview#enhanced_query_mode"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;enhance_query&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; option provides automatic synonym matching and spell correction for a number of functions, reducing the manual tuning needed to improve recall. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Approximate Nearest Neighbor (ANN)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: ANN with Google's &lt;/span&gt;&lt;a href="https://research.google/blog/announcing-scann-efficient-vector-similarity-search/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;ScaNN&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; is a fast, scalable vector search technique optimized for efficiency in high-dimensional vector searches, crucial for AI recommendation systems, image search, and semantic search. In 2025, we announced the general availability of ANN search to enable developers to perform fast similarity searches on vector embeddings, powering generative AI applications where consistency at scale matters. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;AI-powered operations&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In 2025, we delivered multiple AI powered improvements that make it easier for developers to leverage Spanner for their applications: &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/index-advisor"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner index advisor&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Index Advisor analyzes your query patterns and proactively suggests new indexes (or identifies unused ones) to optimize performance and cost.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/manage-data-using-console#recommend-schema-best"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Schema recommendations (Preview)&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;An intelligent tool that scans your schema design for anti-patterns — like hotspot-prone primary keys — and suggests improvements before they become production issues.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/spanner-cli"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner CLI&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; The new command line interface, bundled directly with &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;gcloud&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;, allows you to run SQL, manage sessions, and automate scripts within existing developer workflows.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Unified analytics: Minimize silos and complexity&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Last year&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;, we bridged the gap between operational and analytic data with multiple new capabilities:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanners-columnar-engine-unites-oltp-and-analytics"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner columnar engine&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt; (Preview):&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; This engine automatically lets you analyze vast amounts of operational data in real time, while maintaining Spanner's global consistency, high availability, and strong transactional guarantees — without impacting transactional workloads. &lt;/span&gt;&lt;a href="http://verisoul.ai" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Verisoul.ai&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, a provider of an all-in-one platform to automate fake account detection &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanners-columnar-engine-unites-oltp-and-analytics?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;used Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and Spanner columnar engine to support low-latency transactional writes and rich analytics to provide fast responses to their users.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://medium.com/google-cloud/spanner-better-with-bigquery-streaming-insights-faster-federated-queries-with-iceberg-and-04e1299dd831" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;The "Better with BigQuery" ecosystem&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;We strengthened the integrations between &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner and BigQuery to bring operational and analytical engines together to provide real-time insights:&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;ul&gt;
&lt;li aria-level="2" style="list-style-type: circle; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://medium.com/google-cloud/spanner-better-with-bigquery-streaming-insights-faster-federated-queries-with-iceberg-and-04e1299dd831" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Apache Iceberg support:&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; With this capability, data analysts can join live Spanner data with Apache Iceberg tables on BigQuery, as well as export Iceberg data into Spanner. This allows you to query and combine your real-time operational data (from Spanner) with your curated data lakehouse (in Iceberg).&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="2" style="list-style-type: circle; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner external datasets materialized views:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; We announced the general availability of &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/release-notes#June_02_2025"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner external datasets in BigQuery&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; that enable BigQuery users to query live operational data in Spanner with zero ETL requirements. We further extended this capability to integrate with &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/bigquery/docs/materialized-views-create#spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigQuery materialized views&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for ultra-fast reporting using pre-computed query results.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="2" style="list-style-type: circle; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Continuous queries with&lt;/strong&gt; &lt;a href="https://docs.cloud.google.com/spanner/docs/release-notes#March_17_2025"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Reverse ETL&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt; (BigQuery to Spanner):&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; You can now combine BigQuery’s continuous query capabilities with reverse ETL to Spanner to stream computed insights — such as fraud alerts or dynamic pricing signals — from BigQuery into Spanner in &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;real-time,&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; for low-latency serving of these insights. &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/how-fastweb-vodafone-reimagined-data-workflows-with-spanner-bigquery?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Fastweb+Vodafone&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; was able to do just that by leveraging this feature to use Spanner as their real-time serving layer with BigQuery.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Simplified migration&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Customers frequently migrate to Spanner to benefit from five nines of availability, virtually unlimited scale, low operational overhead, and global consistency. In 2025, we made it it easier for them to migrate their Cassandra, and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/migrating-from-mysql-to-spanner-is-easier-now?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;MySQL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; workloads to Spanner:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Cassandra interface:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner’s &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/non-relational/cassandra-overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cassandra interface&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; lets you take advantage of Spanner's fully managed, scalable, and highly available infrastructure using familiar Cassandra tools and syntax. Lift and shift existing CQL applications with virtually no changes. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;MySQL interoperability:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; You can now &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/install-mysql-functions"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;install&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; a library of &lt;/span&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/reference/mysql/user_defined_functions_all"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;80 MySQL functions &lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;to help reduce the application changes required to migrate your MySQL workloads to Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Performance and cost improvements&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Continuously raising the bar on price-performance is a north star for the Spanner team. In 2025, we introduced multiple capabilities to help you improve query performance and reduce costs:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/use-repeatable-read-isolation"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Repeatable read isolation&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt; (Preview)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: This new isolation level reduces locking overhead to improve latency for workloads that have low read-write contention.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/full-text-search/json-indexes"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;JSON indexing:&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; Using the same foundation as Spanner’s full-text search, JSON indexing accelerates common queries over JSON, without having to predefine anything about the structure or data. This gives developers flexibility without having to compromise on performance. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/read-lease"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Read leases&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;: Read leases can improve read latency for strongly consistent data in multi-region configurations by trading off some write performance for common read-mostly workloads. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/tiered-storage"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Tiered storage&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;: Tiered storage allows you to manage data lifecycle costs efficiently by using SSD and HDD storage within the same instance, all via configuration and without having to modify the APIs you use to access the data. This functionality moves older data to lower cost HDD storage (~80% cheaper) while automatically keeping new data on high-performance SSDs.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/managed-autoscaler"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Managed autoscaler&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;: We announced the general availability of managed autoscaler and enhanced it to allow scaling read-only replicas independently from the read-write replicas, thereby improving read performance while optimizing costs based on traffic patterns.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/pre-splitting-overview"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Manual split points&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;: While Spanner automates sharding to distribute work across nodes in an instance, sometimes you know your traffic patterns better than we do. The new split-point API allows you to “warm up” or pre-split your data to handle anticipated spikes, like a flash sale or game launch, to handle traffic immediately.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/query-optimizer/versions#version-8"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Query optimizer&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; The new default query optimizer (version 8, for those counting at home) brings a host of automated enhancements, optimizing join strategies and index usage to improve query performance and predictability.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/release-notes#September_30_2025"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Multiplexed sessions&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt; and &lt;/strong&gt;&lt;a href="https://github.com/googleapis/python-spanner/pull/1411" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;lazy decoding&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; We enabled multiplexed sessions by default across major SDKs (Java, Go), significantly improving throughput and resource utilization. We also optimized our client libraries with &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;lazy decoding&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; for partitioned queries, allowing your applications to handle massive datasets with a significantly lower memory footprint. Plus, new&lt;/span&gt; &lt;a href="https://docs.cloud.google.com/spanner/docs/client-side-metrics-descriptions"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;built-in client metrics&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; give you granular observability into your application's database performance.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Raising the bar on enterprise safety&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;For our customers, especially in industries like financial services, retail, and healthcare, reliability is non-negotiable. This year, we introduced additional "safety nets" that further protect your data from the most unpredictable variable in any system: human error.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/schema-drop-protection"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Drop protection&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Accidental deletions can be catastrophic. We introduced &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;schema object drop protection&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; as a safeguard for your production environments to prevent the accidental deletion of critical tables, indexes, and columns, acting as a line of defense against operational mishaps.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Zero-touch compliance with &lt;/strong&gt;&lt;a href="https://docs.cloud.google.com/spanner/docs/backup#default-backup-schedules"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;default backup schedules&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Data protection shouldn't rely on manual checklists. We introduced &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;default backup schedules&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; to ensure a recovery baseline the moment a database is created. This minimizes the risk of forgotten backups and so that your workloads adhere to your organization's governance and compliance standards from day one.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Awards and recognition&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;While we continue to enhance Spanner based on customer needs and industry trends, it’s always great to get industry recognition for our work. In 2025,&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner was recognized as a Leader in the &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Gartner Magic Quadrant&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; for Cloud DBMS and ranked &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;#1 for the Lightweight Transactions Use Case&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; (and Top 3 in all categories) in the&lt;/span&gt; &lt;a href="https://cloud.google.com/resources/content/critical-capabilities-dbms?e=48754805#:~:text=from%20Gartner%C2%AE.-,Gartner%C2%AE%20ranks%20Google%20Spanner%20%231%20for%20Lightweight%20Transactions%20Use,learn%20how%20Google%20Spanner%20ranked."&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Critical Capabilities for Operational Databases report&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for 2025, beating AWS Aurora to take the &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;#2 rank in “OLTP Transactions”&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Beyond technical performance, a March 2025 &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/forrester-tei-study-on-spanner-shows-benefits-and-cost-savings?e=48754805"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Forrester Total Economic Impact™ (TEI) study&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; validated the significant business value Spanner delivers, finding that a representative composite organization realized a &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;132% ROI and $7.74M in total benefits over three years&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, with a rapid nine-month payback period.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;We were also honored with the&lt;/span&gt; &lt;a href="https://cloud.google.com/blog/products/databases/spanner-wins-the-2025-acm-sigmod-systems-award"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;2025 ACM SIGMOD Systems Award&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for "reimagining relational data management to enable serializability with external consistency at global scale."&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Looking ahead&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We are proud of what we have delivered for customers in 2025, and are excited to see the innovative solutions you are building on Spanner. Needless to say, we are just getting started and we have a lot &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=IEOpgxKBWU8&amp;amp;t=1736s" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;more exciting capabilities lined up for 2026&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;Want to &lt;/span&gt;&lt;a href="https://goo.gle/SpannerDatabaseUnlimited" rel="noopener" target="_blank"&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;learn more&lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt; about what makes Spanner unique and how it’s being used today? &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;Try it yourself for free&lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt; for 90-days or for as little as $65 USD/month for a production-ready instance that grows with your business without downtime or disruptive re-architecture.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Wed, 28 Jan 2026 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/spanner-in-2025/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Spanner in 2025: Innovations powering intelligent, multi-model AI applications</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/spanner-in-2025/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Shubhankar Chatterjee</name><title>Group Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Piyush Mathur</name><title>Group Product Manager</title><department></department><company></company></author></item><item><title>Inside Mercado Libre's multi-faceted Spanner architecture</title><link>https://cloud.google.com/blog/topics/retail/inside-mercado-libres-multi-faceted-spanner-foundation-for-scale-and-ai/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;a href="https://mercadolibre.com/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Mercado Libre&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, the e-commerce and fintech pioneer of Latin America, operates at a staggering scale, demanding an infrastructure that's not just resilient and scalable, but also a catalyst for rapid innovation. While our use of &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for foundational consistency and scale is known, a deeper dive reveals a sophisticated, multi-layered strategy. Spanner is not just a database here; it's a core engine powering our internal developer platform, diverse data models, advanced analytics loops, intelligent features, and even our roadmap for next-generation AI applications.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;This blog explores the technical underpinnings of how Mercado Libre leverages Spanner in concert with our internal innovations like the Fury platform, achieving significant business impact and charting a course for an AI-driven future.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;The dual challenge: internet-scale operations and developer velocity&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Mercado Libre faces the classic challenges of internet-scale services: keeping millions of daily financial transactions safe, making it easy for developers to build apps, and maintaining near-perfect uptime. The solution required a database powerful enough for the core and an abstraction layer elegant enough for broad developer adoption.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Fury: Mercado Libre's developer gateway&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;At the heart of Mercado Libre's strategy is &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Fury&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, our in-house middleware platform. Fury is designed to abstract away the complexities of various backend technologies, providing developers with standardized, simplified interfaces to build applications. &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Abstraction &amp;amp; Standardization:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Fury allows development teams to focus on business logic rather than the nuances of distributed database management, schema design for specific engines, or optimal connection pooling.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner as the Reliable Core:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner is an a&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;lways-on, globally consistent, multi-model database with virtually unlimited scale.&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt; &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;By designating Spanner as a choice within Fury, Mercado Libre ensures that applications built on the platform using Spanner  inherit its best features – they stay consistent globally, scale without breaking, and rarely go down.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/1_Rd8yefF.max-1000x1000.jpg"
        
          alt="1"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="1yrlw"&gt;Fig. 1 - Fury’s core services&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner – the versatile backbone&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Through Fury, Spanner empowers Mercado Libre's developers with remarkable versatility. Some apps need complex transactions, others need fast lookups. Spanner handles both, which means teams can use just one system:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Relational prowess for complex transactions:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; For sophisticated transactional workloads like order management, payments, and inventory systems, Spanner’s relational capabilities (SQL, ACID transactions, joins) remain critical. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;High-performance key-value store:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Many modern applications require fast point lookups and simple data structures. &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;While Spanner isn't Mercado Libre's default backend for typical key-value workloads, there are specific applications running large scale &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;non-relational, KV-style workloads&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; on the Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner’s foundational architecture — TrueTime for global consistency and automated sharding for effortless scaling — makes it an ideal candidate to reliably serve both these access patterns through the Fury platform.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Handling peak demand&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Mercado Libre's Spanner instances demonstrate significant processing capacity, handling around &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;214K &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;queries per second&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt; (QPS)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;30K &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;transactions per second &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;(TPS)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;. To manage this substantial workload, the Spanner infrastructure dynamically scales to over &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;400 nodes (by 30%)&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, highlighting the robust and elastic nature of the underlying system in accommodating high-demand scenarios. This level of throughput and scalability is critical for maintaining the performance and reliability of Mercado Libre's services during its busiest times.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/2_ZAe7FJs.max-1000x1000.png"
        
          alt="2"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="mudr9"&gt;Fig. 2 - Diagram of the solution built with Spanner, which uses current search data to predict and recommend products that a customer is most likely to purchase.&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Turning data into action&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Mercado Libre builds a dynamic data ecosystem around Spanner, leveraging advanced analytics to feed insights directly back into operational systems.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;They achieve real-time analytics by combining Spanner Data Boost with BigQuery Federation. Data Boost isolates analytical queries, preventing them from impacting critical transactional performance. This allows for powerful, large-scale analytics to run directly on fresh Spanner data within BigQuery, integrating seamlessly with other data sources.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Insights from BigQuery, such as customer segmentations or fraud scores, are then actioned via Reverse ETL, feeding directly back into Spanner. This enriches operational data, enabling immediate action by frontline applications like serving personalized content or performing real-time risk assessments.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Furthermore, Spanner Change Streams coupled with Dataflow drive crucial service integrations. By capturing real-time data modifications from Spanner, they establish robust pipelines. These enable loading changes into BigQuery for analytics or streaming them to services like Fury Stream for real-time consumption, ensuring low-latency data propagation and enabling event-driven architectures across their systems.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;The impact: cost savings, agility, and future-proofing&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The strategic adoption of Spanner, amplified by internal platforms like Fury and sophisticated data workflows, has yielded significant benefits for Mercado Libre:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Significant cost savings &amp;amp; low total cost of ownership:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; The combination of Spanner's managed nature (reducing manual sharding, maintenance, and maintenance work), efficient resource utilization, and the abstraction provided by Fury has led to a lower Total Cost of Ownership and substantial cost savings.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Business impact &amp;amp; agility:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Developers, freed from infrastructure complexities by Fury and empowered by Spanner's versatile capabilities, can deliver new features and applications faster. The reliability of Spanner underpins critical business operations, minimizing disruptions.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Low operational overhead:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Automated scaling, sharding, and maintenance in Spanner significantly reduce the human effort required to manage large-scale database infrastructure.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Building for AI:  Next-generation applications on Spanner&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Looking ahead, Mercado Libre is exploring Spanner to support more AI workloads.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner's characteristics make it an ideal foundation:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Consistent state management:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Critical for AI systems that need to maintain and reliably update their state context.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Scalable memory/knowledge store:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Ability to store and retrieve vast amounts of data for AI system memory, logs, and contextual information.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Transactional operations:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Enabling AI systems to perform reliable actions that interact with other systems.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Integration with analytics &amp;amp; Machine Learning (ML):&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; The existing data loops and ML.PREDICT capabilities can enrich AI systems with real-time insights and intelligence.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner provides the transactional foundation  these sophisticated, AI applications will require.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Conclusion: A Unified, Intelligent Data Foundation&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Mercado Libre's adoption of Spanner demonstrates how to use a powerful, globally consistent database not just for its core capabilities, but as a strategic enabler for developer productivity, operational efficiency, advanced analytics, and future AI ambitions. Through their Fury platform, they've simplified access to Spanner's capabilities, allowing it to serve as a flexible foundation for both relational and non-relational needs. The integration with BigQuery via Data Boost demonstrates a comprehensive approach to building an intelligent, data-driven enterprise. As Mercado Libre builds AI applications, Spanner is set to continue its role as the consistent and scalable foundation for their next wave of innovation.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Learn more&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Discover how Spanner can transform your business&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner/docs/free-trial-quickstart"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Get started on Spanner today with a 90 day free trial instance.&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><pubDate>Mon, 03 Nov 2025 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/topics/retail/inside-mercado-libres-multi-faceted-spanner-foundation-for-scale-and-ai/</guid><category>Databases</category><category>Spanner</category><category>Customers</category><category>Retail</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Inside Mercado Libre's multi-faceted Spanner architecture</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/topics/retail/inside-mercado-libres-multi-faceted-spanner-foundation-for-scale-and-ai/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Pablo Leopoldo Arrojo</name><title>Software Technical Leader, Mercado Libre</title><department></department><company></company></author></item><item><title>Spanner columnar engine: Powering next-generation analytics on operational data</title><link>https://cloud.google.com/blog/products/databases/spanners-columnar-engine-unites-oltp-and-analytics/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;For years, organizations have struggled with the workload conflict between online transaction processing (OLTP) and analytical query processing. OLTP systems such as Spanner are optimized for high-volume, low-latency transactions, and use row-oriented storage that's efficient for individual record access. Analytical workloads, conversely, require rapid aggregations and scans across large datasets. These tasks are traditionally handled by separate data warehouses that employ columnar storage and incoming data pipelines from transaction systems. Separating OLTP and analytical workflows requires periodic data transfers, which often leads to stale data, complex ETL pipelines, and operational overhead.&lt;/p&gt;
&lt;p&gt;Today, we're thrilled to announce &lt;a href="https://cloud.google.com/spanner/docs/columnar-engine"&gt;&lt;strong&gt;Spanner columnar engine&lt;/strong&gt;&lt;/a&gt;, which brings new analytical capabilities directly to Spanner databases. Just as &lt;a href="https://cloud.google.com/blog/products/databases/alloydb-for-postgresql-columnar-engine"&gt;AlloyDB's columnar engine&lt;/a&gt; enhanced PostgreSQL analytics, Spanner's new columnar engine lets you analyze vast amounts of operational data in real-time, all while maintaining Spanner's global consistency, high availability, and strong transactional guarantees — and without impacting transactional workloads.&lt;/p&gt;
&lt;p&gt;The power of Spanner columnar engine helps organizations, such as &lt;strong&gt;Verisoul.ai&lt;/strong&gt;, eliminate the problem of data silos typically found when combining high volume transaction systems with fast analytics. “Detecting fraud in real time is only half the story—showing customers the ‘why’ helps them act faster and turn trust into measurable ROI,” says Raine Scott and Niel Ketkar, founders of &lt;strong&gt;Verisoul.ai&lt;/strong&gt;, a machine-learning platform that stops fake users and fraud. “Spanner’s new columnar engine allows high-velocity transactional writes and rich analytics in one place, eliminating data copies and replication lag so customers get instant answers." &lt;/p&gt;
&lt;h3&gt;Columnar storage meets vectorized execution&lt;/h3&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--medium
      
      
        h-c-grid__col
        
        h-c-grid__col--4 h-c-grid__col--offset-4
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/1._Columnar_architecture_diagram.max-1000x1000.jpg"
        
          alt="1. Columnar architecture diagram"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="zwvj6"&gt;Figure: Spanner columnar engine architecture&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;The heart of the Spanner columnar engine is its innovative architecture, which combines columnar storage with vectorized query execution.&lt;/p&gt;
&lt;h3&gt;Columnar Storage in Spanner: Hybrid Architecture&lt;/h3&gt;
&lt;p&gt;Unlike traditional row-oriented storage, where an entire row is stored contiguously, columnar storage stores data column by column. This offers several advantages for analytical workloads:&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Reduced I/O&lt;/strong&gt;: Analytical queries often access only a few columns at a time. With columnar storage, only the relevant columns need to be read from disk, significantly reducing I/O operations.&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Improved compression&lt;/strong&gt;: Data within a single column is typically of the same data type and often exhibits similar storage patterns, leading to much higher compression ratios. This means more data can fit in memory and fewer bytes need to be read.&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Efficient scans&lt;/strong&gt;: When scanning a column, consecutive values can be processed together, for more efficient data processing.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Spanner columnar engine integrates a columnar format alongside its existing row-oriented storage. This unified &lt;strong&gt;transactional and analytical processing&lt;/strong&gt; design allows Spanner to maintain its OLTP performance while &lt;strong&gt;accelerating analytical queries up to 200X&lt;/strong&gt; on your live operational data.&lt;/p&gt;
&lt;h3&gt;Vectorized execution: turbocharging your queries&lt;/h3&gt;
&lt;p&gt;To complement columnar storage, the columnar engine makes use of Spanner’s &lt;a href="https://cloud.google.com/spanner/docs/sql-best-practices#optimize-scans"&gt;vectorized execution&lt;/a&gt; capabilities. While traditional query engines process data tuple-by-tuple (row by row), a vectorized engine processes data in batches (vectors) of rows. This approach dramatically improves CPU utilization, with:&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Reduced function call overhead&lt;/strong&gt;: Instead of calling a function for each individual row, vectorized engines call functions once for an entire batch, significantly reducing overhead.&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Optimized memory access&lt;/strong&gt;: Vectorized processing often results in more cache-friendly memory access patterns, further boosting performance.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The combination of columnar storage and vectorized execution means that analytical queries on Spanner can run orders of magnitude faster, allowing for real-time insights on your global-scale data.&lt;/p&gt;
&lt;h3&gt;Better with BigQuery: Accelerating federated queries&lt;/h3&gt;
&lt;p&gt;The Spanner columnar engine takes its integration with Google’s Data Cloud ecosystem a step further, specifically enhancing integrations between Spanner and BigQuery. For enterprises that leverage BigQuery for data warehousing and analytics, federating queries directly to Spanner has always been a valuable capability. Now, with the Spanner columnar engine, this integration becomes even more potent, by delivering faster insights on operational data.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data Boost&lt;/strong&gt;, Spanner's fully managed, elastically scalable compute service for analytical workloads, is at the forefront of this acceleration. When BigQuery issues a federated query to Spanner, and that query can benefit from columnar scans and vectorized execution, Data Boost automatically leverages the Spanner columnar engine. This provides:&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Faster analytical insights&lt;/strong&gt;: Complex analytical queries initiated from BigQuery that target your Spanner data execute significantly faster, bringing near-real-time operational data into your broader analytical landscape.&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Reduced impact on OLTP&lt;/strong&gt;: Data Boost helps ensure that analytical workloads are offloaded from your primary Spanner compute resources, preventing impact on transactional operations.&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1"&gt;
&lt;p role="presentation"&gt;&lt;strong&gt;Simplified data architecture&lt;/strong&gt;: You can get the best of both worlds – Spanner's transactional consistency and BigQuery's analytical prowess – without the need for complex ETL pipelines to duplicate data.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This integration empowers data analysts and scientists to combine Spanner's live operational data with other datasets in BigQuery for richer, more timely insights and decision-making.&lt;/p&gt;
&lt;h3&gt;Columnar engine in action: Accelerating your analytical queries&lt;/h3&gt;
&lt;p&gt;Let's look at some sample &lt;a href="https://cloud.google.com/spanner/docs/query-columnar-data"&gt;queries&lt;/a&gt; that should see significant acceleration with the Spanner columnar engine. These types of queries, common in analytical and graph workloads, benefit from columnar scans and vectorized processing.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;: Imagine a large e-commerce database; for demonstration purposes, we'll use the same schema as the TPC-H benchmark.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Query 1: Revenue from discounted shipments in a given Year&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;SQL&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;@{scan_method=columnar}\r\nSELECT\r\n  sum(l.l_extendedprice * l.l_discount) AS revenue\r\nFROM\r\n  lineitem l\r\nWHERE\r\n  l.l_shipdate &amp;gt;= date &amp;quot;1994-01-01&amp;quot;\r\n  AND l.l_shipdate &amp;lt; date_add(date &amp;quot;1994-01-01&amp;quot;, INTERVAL 1 year)\r\n  AND l.l_discount BETWEEN 0.08 - 0.01 AND 0.08 + 0.01\r\n  AND l.l_quantity &amp;lt; 25;&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;lang-sql&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa402872670&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p style="padding-left: 40px;"&gt;&lt;strong&gt;Acceleration&lt;/strong&gt;: This query heavily benefits from scanning only the &lt;code&gt;&lt;strong&gt;l_shipdate&lt;/strong&gt;, &lt;strong&gt;l_extendedprice&lt;/strong&gt;, &lt;strong&gt;l_discount&lt;/strong&gt;,&lt;/code&gt; and &lt;code&gt;&lt;strong&gt;l_quantity&lt;/strong&gt;&lt;/code&gt; columns from the &lt;code&gt;lineitem&lt;/code&gt; table. Vectorized execution rapidly applies the date, discount, and quantity filters to identify qualifying rows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Query 2: Total quantity of non-discounted items&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;SQL&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;@{scan_method=columnar}\r\nSELECT\r\n  sum(l_quantity)\r\nFROM\r\n  lineitem\r\nWHERE\r\n  l_discount = 0;&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;lang-sql&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa402872520&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p style="padding-left: 40px;"&gt;&lt;strong&gt;Acceleration&lt;/strong&gt;: This query heavily benefits from scanning only the &lt;code&gt;&lt;strong&gt;l_discount&lt;/strong&gt;&lt;/code&gt; and &lt;code&gt;&lt;strong&gt;l_quantity&lt;/strong&gt;&lt;/code&gt; columns from the &lt;code&gt;lineitem&lt;/code&gt; table. Vectorized execution rapidly applies the equality filter (&lt;code&gt;l_discount = 0&lt;/code&gt;) to identify matching rows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Query 3: Item count and discount range for specific tax brackets..&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;SQL&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;@{scan_method=columnar}\r\nSELECT\r\n  count(*),\r\n  min(l_discount),\r\n  max(l_discount)\r\nFROM\r\n  lineitem\r\nWHERE\r\n  l_tax IN (0.01, 0.02);&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa402872070&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p style="padding-left: 40px;"&gt;&lt;strong&gt;Acceleration&lt;/strong&gt;: This query benefits heavily from scanning only the l_tax and l_discount columns from the lineitem table. Vectorized execution rapidly applies the IN filter on the l_tax column to identify all matching rows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Query 4: Scan friend relationships to find the N most connected people in the graph using Spanner Graph&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;GQL&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;@{scan_method=columnar}\r\nGRAPH social_graph\r\nMATCH (p:Person)-[k:Knows]-&amp;gt;(:Person)\r\nRETURN COUNT(k) AS friend_count GROUP BY p ORDER BY friend_count DESC LIMIT 10;&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa402872250&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p style="padding-left: 40px;"&gt;&lt;strong&gt;Acceleration&lt;/strong&gt;:This query benefits heavily from scanning subgraphs and by loading only relevant columns from the graph.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Query 5: Perform a K-nearest neighbor vector similarity search to retrieve the top 10 most semantically similar embeddings with perfect recall&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;GQL&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;@{scan_method=columnar}\r\nSELECT e.Id as key, COSINE_DISTANCE(@vector_param, e.Embedding) as distance\r\nFROM Embeddings e\r\nORDER BY distance LIMIT 10;&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa402872940&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p style="padding-left: 40px;"&gt;&lt;strong&gt;Acceleration&lt;/strong&gt;:This query benefits heavily from scanning contiguously stored vector embeddings and by loading only relevant columns from the table.&lt;/p&gt;
&lt;h3&gt;Get started with Spanner columnar engine today! &lt;/h3&gt;
&lt;p&gt;The Spanner columnar engine is designed for businesses looking to unlock faster, deeper, real-time insights from their operational data without compromising Spanner's foundational strengths. We are incredibly excited about the possibilities this opens up for developers and data analysts alike. We invite you to be among the first to try the &lt;a href="https://cloud.google.com/spanner/docs/columnar-engine"&gt;Spanner columnar engine&lt;/a&gt;. &lt;strong&gt;Request access to the Preview of Spanner columnar engine by &lt;a href="https://forms.gle/nE1bAqfHJrqhkStR9" rel="noopener" target="_blank"&gt;signing up&lt;/a&gt; today&lt;/strong&gt;. We look forward to seeing what you build!&lt;/p&gt;&lt;/div&gt;</description><pubDate>Wed, 06 Aug 2025 01:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/spanners-columnar-engine-unites-oltp-and-analytics/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Spanner columnar engine: Powering next-generation analytics on operational data</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/spanners-columnar-engine-unites-oltp-and-analytics/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagan R. Athreya</name><title>Group Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Alan Jin</name><title>Software Engineer</title><department></department><company></company></author></item><item><title>Spanner's enduring impact: Celebrating the 2025 ACM SIGMOD Systems Award</title><link>https://cloud.google.com/blog/products/databases/spanner-wins-the-2025-acm-sigmod-systems-award/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Earlier this year, the Association for Computing Machinery's Special Interest Group on Management of Data (ACM SIGMOD) announced that Spanner, Google's globally distributed database, was awarded the &lt;/span&gt;&lt;a href="https://sigmod.org/2025-sigmod-systems-award/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;2025 SIGMOD Systems Award&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. The SIGMOD Systems Award specifically honors systems whose technical contributions have profoundly impacted the theory or practice of large-scale data management. On behalf of the entire Spanner team, especially the engineers who were there at the beginning of Spanner's journey, it is with deep humility and immense pride that we receive this recognition from such a distinguished community. We’re thrilled to be participating in the &lt;/span&gt;&lt;a href="https://2025.sigmod.org/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;2025 SIGMOD conference&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; from June 22-27 in Berlin, Germany as a Platinum sponsor&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;This honor feels particularly significant following Spanner's &lt;/span&gt;&lt;a href="https://www.sigops.org/2022/hof-2022/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;2022 SIGOPS Hall of Fame Award&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which highlighted the crucial role of technologies like TrueTime and our network infrastructure, reaffirming the lasting significance of the original vision laid out in the first &lt;/span&gt;&lt;a href="https://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner paper&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner’s core innovation: TrueTime and external consistency&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;For Spanner to be recognized in this way is a powerful affirmation of the vision we set out to achieve years ago and the new ways Spanner enables applications to be built. According to the award citation, Spanner is recognized “for reimagining relational data management to enable serializability with external consistency at global scale.”&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Why “reimagining”? Before Spanner, databases offered a stark choice: you could have ACID transactions and SQL, or you could have scale and multi-datacenter reliability. Scale and availability required a distributed system, and that meant eventual consistency and other forms of best-effort synchronization. Spanner showed that this choice was not fundamental — that it was possible to build a database that offered the horizontal scalability of a distributed system with the power and ease of use of transactions and SQL. It enabled companies for whom scale is job #1 to regain developer velocity and agility. Spanner drastically simplifies the logic required in distributed applications. Developers can reason about the state of the database as if it were a single, consistent entity, even when it spans the globe.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The key enabler for Spanner's ability to deliver external consistency is TrueTime. Beyond just a synchronized global clock, TrueTime is an API that cleverly exposes clock uncertainty as a bounded interval, which allows higher-level algorithms to reason about the ordering of events. Google’s TrueTime implementation uses specialized hardware references like GPS receivers and atomic clocks to provide highly trustworthy and very tight time bounds. Spanner leverages this bounded uncertainty to achieve external consistency. When a transaction commits, Spanner assigns it a commit timestamp derived from TrueTime. Spanner then enforces a "commit wait" — which can be overlapped with making the transaction durable – to ensure that the commit timestamp is definitively in the past before making the transaction's effects visible. This ensures that the assigned commit timestamps definitively reflect the true global serialization order of transactions, even across data centers. The result is remarkable: external consistency with no performance cost.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt; Addressing the consistency-scale dilemma&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To truly appreciate the journey, it helps to travel back to the early and mid-2000s at Google. The internet was exploding, and our biggest challenge was scaling our software infrastructure to keep pace. We needed databases that could store and process a copy of the internet using vast fleets of commodity servers. This spurred the development of internal systems that delivered incredible performance and scalability, but they came with trade-offs.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;As we gained more familiarity with these systems, and started using them to build big interactive applications like Gmail, we consistently heard from internal developers about the challenge of working with eventual consistency and cross-shard synchronization, as well as the friction of modeling every problem (no matter how complex) as key-value pairs. It quickly became apparent that we needed to build a globally distributed database that offered the familiarity and guarantees of traditional relational databases — including ACID transactions, serializability, and external consistency — without giving up Google’s ever-growing need for bigger databases serving bigger audiences. Moreover, working closely with our customers, it became clear that actually, it was something we could build. The rest is history!&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner as a cloud service&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;As a cornerstone of Google's infrastructure, Spanner powers some of our most critical, planet-scale services, including Google Ads, Google Search indexing, Gmail, YouTube, Google Photos, metadata for Cloud Storage, and BigQuery, demonstrating its robustness and scalability under extreme load.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The next logical step was to make these capabilities available externally to customers through Google Cloud. The &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/gcp/introducing-cloud-spanner-a-global-database-service-for-mission-critical-applications"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;launch&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and subsequent &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-innovations-in-2024"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;evolution&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; of  Spanner aimed to democratize this technology, bringing the power of a globally consistent, scalable database to organizations of all sizes, from startups to global enterprises, simplifying their application development and operations.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner’s core value proposition for customers stems directly from its unique architecture:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Global scale with strong consistency&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Spanner delivers on the original promise: ACID transactions with external consistency across a database that can scale horizontally across regions and continents, automatically managing data distribution (sharding) as needed. This directly addresses the capability highlighted by the SIGMOD award.  &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Unmatched availability&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Leveraging synchronous, &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/replication"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Paxos-based replication&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; across multiple zones or regions, Spanner offers an industry-leading 99.999% availability &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/sla?hl=en"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Service Level Agreement&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; (SLA) for multi-region configurations. This helps provide extreme fault tolerance and minimizes downtime risk for mission-critical applications.  &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Simplified operations&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: As a fully managed service, Spanner automates complex operational tasks like sharding, replication management, backups, and maintenance. This frees development teams from significant operational burdens, allowing them to focus on building applications rather than managing database infrastructure. This contrasts sharply with the manual effort often required for traditional sharded databases or the complexity of implementing consistency logic at the application layer for NoSQL systems.  &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Developer productivity&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Spanner offers familiar SQL query interfaces, supporting both Google SQL and PostgreSQL dialects, which significantly flattens the learning curve for developers. Furthermore, its strong consistency eliminates entire classes of complex problems related to data synchronization and reconciliation that often plague applications built on eventually consistent systems.  &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Empowering customers and industries&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Of course, today’s data landscape has changed since we published the first Spanner paper in 2012. In the modern AI-first data world, we see customers more focused than ever on getting full value from their data, which is often spread out over many systems with different data models, varying scalability, and uneven reliability. We’re addressing these new challenges head on, introducing &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-graph-is-now-ga"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/how-spanner-vector-search-supports-generative-ai-apps"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;vector search for AI applications&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and integrated &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-graph-full-text-search"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;full-text search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. These allow you to bring together a wide range of data and iterate on it rapidly within a single, consistent, scalable platform. We've also helped you run even more cost-effectively as your data grows, with &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-cloud-spanner-price-performance-updates"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;increased compute and storage density&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-spanner-editions"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;tiered pricing through editions&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and cost-optimizing features such as &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/introducing-tiered-storage-for-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;tiered storage&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. Finally, we’ve made it easier to bring scale-out workloads into Spanner through enhanced interoperability with tools and capabilities, such as  &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/introducing-cassandra-compatible-api-in-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cassandra-compatible APIs&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;While academic recognition such as the SIGMOD award is gratifying, we’ve always felt that the true measure of a system's impact lies in how it empowers users to solve real-world problems and build innovative applications. Spanner's unique combination of capabilities have proven transformative across various industries.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;financial services&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, where consistency, availability, and security are paramount, Spanner provides the foundation for many critical systems. Companies like &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=8RXnNgcEp3o&amp;amp;t=851s&amp;amp;ab_channel=GoogleCloudEvents" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Goldman Sachs&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; use it to consolidate trade ledgers, while others like &lt;/span&gt;&lt;a href="https://cloud.google.com/customers/arigatobank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Arigato Bank&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; rely on it to handle high volumes of financial transactions with perfect consistency, even during peak loads. Digital-native banks like &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/minna-bank-colopl-and-7-eleven-japan-build-apps-on-spanner?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Minna Bank&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; have built their entire infrastructure on Spanner, leveraging its availability and consistency to meet stringent regulatory requirements and customer expectations.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;gaming&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; industry is constantly pushing the boundaries of scale and real-time interaction. Spanner has helped game developers launch globally successful titles like Dragon Quest Walk by &lt;/span&gt;&lt;a href="https://cloud.google.com/customers/colopl"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Colopl&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, handling millions of concurrent players from day one. Its ability to manage player profiles, in-game inventory, and leaderboards consistently across a global player base, while elastically scaling to handle unpredictable traffic spikes, has been crucial for delivering a seamless player experience&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;retail and e-commerce&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, Spanner helps businesses manage the complexities of modern commerce. &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=L9WmdZD6z8E&amp;amp;t=1300s" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Walmart&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; uses Spanner to modernize its inventory and payment management, providing a real-time, consistent view across online and physical stores. &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=bGlBratj1-E&amp;amp;t=10s" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;MercadoLibre&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, a global online marketplace and e-commerce provider, leverages Spanner to handle the global needs of their customers, including massive demand spikes during major product launches.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Leaders in &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;transportation&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, such as &lt;/span&gt;&lt;a href="https://www.uber.com/blog/building-ubers-fulfillment-platform/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Uber&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, rely on Spanner to handle millions of concurrent users and billions of trips per month across over 10,000 cities and billions of database transactions per day.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;These examples illustrate that for many modern applications, Spanner's specific blend of global consistency, massive scalability, high availability and interoperable &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner?e=0#features"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;multi-model&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; isn't just a technical advantage; it's a fundamental enabler. Business models built around real-time global inventory, instantaneously consistent financial records, or seamless worldwide multiplayer experiences become significantly simpler, less risky, and more feasible to implement with Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;The future with Spanner&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The SIGMOD award recognizes the contributions of over 30 individuals, and countless other current and prior Googlers who have played roles throughout its development and evolution. It’s been a privilege to witness the journey from the initial ambitious concepts to the globally impactful system it is today. The journey from the original &lt;/span&gt;&lt;a href="https://www.usenix.org/system/files/conference/osdi12/osdi12-final-16.pdf" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;OSDI paper&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; published to this &lt;/span&gt;&lt;a href="https://sigmod.org/2025-sigmod-systems-award/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;2025 SIGMOD Systems Award&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; highlights over a decade of sustained research, engineering, and investment by Google. This long-term commitment is rare and is a key factor behind Spanner's enduring success and impact.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Thanks to you, our customers, Spanner remains a living system that continues to evolve, benefiting from ongoing improvements, driven by both internal use and the needs of our cloud customers. Looking ahead, we remain committed to pushing the boundaries of what's possible with distributed databases. We're excited about enabling new kinds of applications, including those leveraging AI, and continuing our mission to simplify the complexities of data management for developers building the next generation of world-changing applications.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Experience the Spanner difference&lt;/strong&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The 2025 ACM SIGMOD Systems Award is a tremendous honor and a validation of the path we embarked on years ago. &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;If you are at the  &lt;/span&gt;&lt;a href="https://2025.sigmod.org/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;2025 SIGMOD conference&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, join us on &lt;/span&gt;&lt;a href="https://2025.sigmod.org/program_full_detail.shtml#sponsor_session" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Tuesday, June 24 at 4:30 pm&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to hear from and meet with the Google team. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;If Spanner's capabilities for consistency, scale, and availability resonate with the challenges you face, we encourage you to learn more:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Explore &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to learn about supported features and use cases, and get started with a &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;90-day Spanner free trial instance.&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Dive deeper with &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;documentation&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;  &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;For the academically inclined, read the &lt;/span&gt;&lt;a href="https://research.google.com/archive/spanner-osdi2012.pdf" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;original&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/46103.pdf" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;successor&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; papers on Spanner  &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In closing, we believe Spanner unlocks new possibilities for building reliable, scalable, and globally consistent applications, and we are excited to see what you, our customers, will build with it.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Tue, 17 Jun 2025 16:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/spanner-wins-the-2025-acm-sigmod-systems-award/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Spanner's enduring impact: Celebrating the 2025 ACM SIGMOD Systems Award</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/spanner-wins-the-2025-acm-sigmod-systems-award/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Christopher Taylor</name><title>Founding engineer, Spanner &amp; Google Fellow</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagan R. Athreya</name><title>Group Product Manager</title><department></department><company></company></author></item><item><title>Introducing Apache Cassandra®-compatible APIs in Spanner for zero-code-change migration</title><link>https://cloud.google.com/blog/products/databases/introducing-cassandra-compatible-api-in-spanner/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;You heard at Next ‘25 that native support for the &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Apache Cassandra®&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; Query Language (CQL) API in Spanner is available in preview, providing near-zero code-change application migration, along with a suite of complementary tools for zero-downtime data migration. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://cloud.google.com/spanner/docs"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; is known for its robust SQL support, ACID transactions, and change data capture (CDC), provided as a fully managed service. At the same time, Spanner excels at the basics of NoSQL: single-digit-millisecond read and write latencies, virtually unlimited horizontal scalability, and industry leading high availability. With the CQL addition to Spanner, migrating your application is typically a one-line code change — your application and CQL statements stay the same — while new data migration tooling simplifies live and bulk migration of data. &lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Why migrate from Cassandra to Spanner?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;But first, let’s talk about why an organization might want to migrate from Cassandra to Spanner in the first place. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;NoSQL databases like Apache Cassandra gained popularity for their horizontal scalability and high availability — attributes that are essential for modern, web-scale applications that manage large datasets and user traffic. But while Cassandra's masterless architecture and tunable consistency provides flexibility, but some key challenges persist:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Cassandra suffers from high total cost of ownership (TCO) via inelastic scaling and the substantial operational overhead it requires.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Queries that use secondary indexes may suffer from significant performance impact. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;CQL lacks complex joins and sophisticated aggregation functionality.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In contrast, Spanner offers several key advantages for demanding NoSQL workloads:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Easy operations: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Managing Cassandra requires dedicated expertise and effort for tasks such as hardware/VM provisioning, configuration tuning, scaling, and patching and upgrades. With Spanner, Google Cloud manages these operational tasks, dramatically reducing TCO and freeing engineers to focus on your application, not database administration.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Optimized elastic scale: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner offers truly elastic scalability via an autoscaler that automatically adjusts capacity in response to real-time load, helping avoid overprovisioning for peak workloads. Spanner handles data rebalancing in the background, so as not to impact availability or performance of production workloads.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Global ACID transactions:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Cassandra's Lightweight Transactions (LWTs) offer limited compare-and-set functionality within a single partition and cannot guarantee atomicity for multi-partition or multi-step operations without complex, often brittle, application-level workarounds. Spanner supports fully ACID (atomic, consistent, isolated, durable) transactions, simplifying development and helping to ensure data integrity. In fact, &lt;/span&gt;&lt;a href="https://cloud.google.com/resources/content/critical-capabilities-dbms"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Gartner ranks Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; as #1 in the Lightweight Transactions Use Case and #3 in the OLTP Transactions Use Case in its Critical Capabilities for Cloud Database Management Systems for Operational Use Cases&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;report.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Strongly consistent global secondary indexes&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Cassandra secondary indexes are local indexes, stored as hidden tables on each node that contains the primary data to be indexed. This means that queries on a secondary index that accesses multiple nodes can greatly impact your application’s performance. Spanner offers global secondary indexes that can be used to efficiently query data across the entire database. In addition, Spanner’s secondary indexes are strongly consistent, so your different queries all return results that are consistent and up to date. Spanner also offers &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/index-advisor"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;an index advisor&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; that analyzes your queries to recommend new or altered indexes that can improve query performance.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Normalized data for data integrity: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Data in Cassandra is often arranged as one query per table, and data is repeated amongst many tables, a process known as denormalization. Data denormalization has several drawbacks: increased data redundancy, inconsistencies between datasets, and increased storage and maintenance requirements as the number of tables grows. In contrast, data in Spanner is normalized, with full support for relational semantics, including enforced foreign keys and rich SQL query capabilities with efficient server-side aggregation.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Using Spanner’s new Cassandra-compatible APIs&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The new APIs and the migration tools are meant to provide a seamless experience for your Cassandra to Spanner migrations. Here’s a quick guide:&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/cassandra_to_spanner_2x.max-1000x1000.png"
        
          alt="cassandra_to_spanner_@2x"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;ol&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Set up Spanner:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Begin by creating a Spanner instance — regional or multi-regional. For each Cassandra keyspace you intend to migrate, create a corresponding database in your Spanner instance. Using the same name as the Cassandra keyspace is recommended to minimize application code modifications.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Convert your schema:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Utilize the &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/spanner-cassandra-schema-tool" rel="noopener" target="_blank"&gt;&lt;code style="text-decoration: underline; vertical-align: baseline;"&gt;spanner-cassandra-schema-tool&lt;/code&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to automate schema conversion and Spanner tables creation. This tool processes your CQL table definitions, maps Cassandra data types to their Spanner equivalents (e.g., &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;text&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; to &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;STRING(MAX)&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;bigint&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; to &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;INT64&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;map&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; to &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;JSON&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt;), and automatically generates the transformed Spanner tables.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Migrate data:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Migrate your data from Cassandra to Spanner and subsequently verify its integrity. We typically recommend a two-phased approach to minimize downtime:&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;ul&gt;
&lt;li aria-level="2" style="list-style-type: circle; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Live migration (for zero downtime):&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; To achieve a near zero-downtime migration, implement live migration for incoming data &lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;before&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; initiating the bulk data transfer, via the &lt;/span&gt;&lt;a href="https://github.com/GoogleCloudPlatform/spanner-migration-tool/tree/master/sources/cassandra" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;included Docker file or Terraform template&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. The tool leverages the ZDM Proxy for dual-writes and the &lt;/span&gt;&lt;a href="https://github.com/googleapis/go-spanner-cassandra?tab=readme-ov-file#sidecar-proxy" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cassandra-Spanner Proxy&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to transform CQL to Spanner API.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="2" style="list-style-type: circle; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Bulk data migration:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Use the &lt;/span&gt;&lt;a href="https://github.com/GoogleCloudPlatform/DataflowTemplates/blob/main/v2/sourcedb-to-spanner/README_Sourcedb_to_Spanner.md#cassandra-to-spanner-bulk-migration" rel="noopener" target="_blank"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;SourceDB to Spanner Dataflow template&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for a highly parallelized transfer. This template reads data from Cassandra, performs the necessary transformations, and writes it to Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="2" style="list-style-type: circle; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Data validation:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; After the bulk data migration is complete, it’s time to &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/non-relational/migrate-from-cassandra-to-spanner#compare-data"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;validate data accuracy and integrity&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. Common methods include comparing row counts, sampling row data, or performing an exhaustive comparison between the Cassandra and Spanner data.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Switch your application to use the native endpoint for Cassandra:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; We provide two options for doing this:&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li style="list-style-type: none;"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong style="vertical-align: baseline;"&gt;Embed the Spanner Cassandra Client Library:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; For applications written in Java or Go, you can include the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/non-relational/connect-cassandra-adapter"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Cassandra client library&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; as a dependency. The primary code modification involves changing how you build the &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;CqlSession&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; object to use the &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;SpannerCqlSession.builder()&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; and providing the Spanner database URI. Your existing data access logic using the &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;CqlSession&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; interface remains unchanged.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;CqlSession session =\r\n    SpannerCqlSession.builder() \r\n        .setDatabaseUri(&amp;quot;projects/your_gcp_project/instances/your_spanner_instance/databases/your_spanner_database&amp;quot;)\r\n        .withKeyspace(&amp;quot;your_spanner_database&amp;quot;) // Corresponds to the Spanner database name\r\n        .withConfigLoader(\r\n            DriverConfigLoader.fromFile(new File(&amp;quot;/path/to/config/file&amp;quot;))) // Optional: path to driver config\r\n        .build();\r\n\r\n// Your existing code using the \&amp;#x27;session\&amp;#x27; object remains unchanged.&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa402905dc0&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;ul&gt;
&lt;li aria-level="2" style="list-style-type: circle; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Use the Spanner Cassandra sidecar proxy:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; For applications where embedding the client library is not feasible or for connecting standard tools like &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;cqlsh&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt;, you can deploy the &lt;/span&gt;&lt;a href="https://github.com/googleapis/go-spanner-cassandra?tab=readme-ov-file#sidecar-proxy" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Cassandra sidecar proxy&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. This proxy runs as a separate process, often containerized, alongside your application and handles the translation between the Cassandra wire protocol and Spanner's API.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;At this point, your application and data should be successfully migrated to Spanner. We have more detailed migration instructions available in &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/non-relational/migrate-from-cassandra-to-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;the documentation&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner is cost-effective for your Cassandra workloads&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Now that you’ve migrated your workloads to Spanner, you may wonder about costs. In fact, Spanner is a cost-effective alternative to Cassandra. Here’s why:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Fully managed service: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;This reduces your operational costs.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span&gt;&lt;strong style="vertical-align: baseline;"&gt;Enterprise license-Free, Usage-Based Billing:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner usage is billed hourly with no extra licensing fees, meaning no upfront costs, and you only pay for what you use.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Elastic scaling with Autoscaler:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/managed-autoscaler"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner’s Autoscaler&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; allows precise scaling according to workload requirements. Avoid over-provisioning for peak performance and pay only for the resources you consume.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Granular instances:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Start small with a Spanner granular instance (100 processing units) for as little as $65/month.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Built-in observability dashboards: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;No need to pay extra to store and analyze your usage logs. The Spanner console has everything you need.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Tiered storage:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; For storage-heavy workloads, Spanner offers tiered storage options that can be up to 80% cheaper than solid-state drive (SSD) storage.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Incremental backups:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Benefit from substantial cost savings on backups with Spanner's incremental backups.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;A recent &lt;/span&gt;&lt;a href="https://cloud.google.com/resources/content/forrester-spanner-tei-study"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Total Economic Impact study by Forrester Consulting&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; found that Spanner delivered a 132% ROI and $7.74 million in total benefits over three years for a composite organization representative of interviewed customers. These gains largely stemmed from retiring self-managed databases and leveraging Spanner’s elastic scalability and built-in, hands-free high availability operations.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Migrating to Spanner is just the starting point&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Migrating your Cassandra application to Spanner is the first step to unlocking a world of new possibilities for your data. While your application continues interacting with Cassandra via CQL, you can build new microservices that access the same data. You can even consider moving your connecting ETL pipelines to Spanner leveraging Spanner's full multi-model capabilities. You can also implement sophisticated &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;graph&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; queries to analyze relationships between users, utilize &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;full-text search&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; across user profiles or product catalogs, or add &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;vector embedding&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; support for recommendation engines or similarity searches, combining transactional data with AI/ML workloads directly. Lastly, Spanner is tightly integrated with BigQuery, allowing you to unlock valuable insights and drive better decision-making by connecting operational and analytical workloads. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Get started today by testing our migration kit via the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner free trial&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. We believe this will empower next-gen application builders like you to modernize your Cassandra workloads and unlock the full potential of your data on Google Cloud with Spanner.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Thu, 15 May 2025 16:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/introducing-cassandra-compatible-api-in-spanner/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Introducing Apache Cassandra®-compatible APIs in Spanner for zero-code-change migration</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/introducing-cassandra-compatible-api-in-spanner/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Nitin Sagar</name><title>Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Rajeshwar Vanka</name><title>Staff Software Engineer</title><department></department><company></company></author></item><item><title>Google Cloud Spanner ranked #1 by Gartner® for Lightweight Transaction Use Case</title><link>https://cloud.google.com/blog/products/databases/gartner-recognizes-spanner-in-critical-capabilities-report/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We're thrilled to share that Google Cloud Spanner has been recognized by Gartner in the &lt;/span&gt;&lt;a href="https://cloud.google.com/resources/content/critical-capabilities-dbms"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Critical Capabilities for Cloud Database Management Systems for Operational Use Cases&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; report, where it was ranked #1 in the Lightweight Transactions Use Case and was ranked #3 in the OLTP Transactions Use Case and the Application State Management Use Case.&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;This recognition showcases Spanner's strength and versatility to handle the most demanding workloads.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/lightweight_transactions_2024.max-1000x1000.png"
        
          alt="lightweight transactions 2024"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Check out the full &lt;/span&gt;&lt;a href="https://cloud.google.com/resources/content/critical-capabilities-dbms"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Gartner report&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Beyond traditional transactions: Expanding capabilities&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We believe the Gartner recognition isn't just about raw performance. We feel it's about Spanner's comprehensive feature set, which is designed to address the complex needs of modern enterprises. Beyond its renowned transactional consistency and global scalability, Spanner offers a powerful &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;multi-model experience&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, seamlessly integrating the graph, full-text, and vector search functionality required by modern applications. &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-graph-is-now-ga"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Graph database functionality&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner's ability to model and query relationships makes it a strong fit for applications requiring graph analysis, such as social networks, fraud detection, and recommendation engines.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner/docs/full-text-search"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Full-text search&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Integrated full-text search capabilities enable efficient retrieval of unstructured data, powering features like product catalogs, content management systems, and knowledge bases.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/blog/products/databases/how-spanner-vector-search-supports-generative-ai-apps"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Vector search&lt;/strong&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt;:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; With the rise of AI and machine learning, Spanner's vector search capabilities facilitate similarity searches, enabling applications like image recognition, semantic search, and personalized recommendations.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;This flexibility allows developers to build diverse applications on a single platform that provides dynamic elasticity combined with operational efficiency without the complexity of managing multiple specialized databases.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa3f87c6e80&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;A truly global service: Transactions and analytics combined&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner's global footprint helps ensure low latency and high availability for transactional workloads, regardless of a user’s location. But its power extends beyond transactions. Spanner's deep integration with BigQuery allows for &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/data-analytics/introducing-bigquery-external-datasets-for-spanner"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;federated queries&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, enabling real-time analytics on transactional data without the need for complex ETL processes. This integration also supports &lt;/span&gt;&lt;a href="https://cloud.google.com/bigquery/docs/export-to-spanner"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;reverse ETL from BigQuery&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, allowing you to push analytical insights back into Spanner for operational use.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Real-world impact: Customer success stories&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The true testament to Spanner's capabilities is its impact on our customers. Here's a sampling of how it’s being used in the field:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner's high availability, external consistency, and infinite horizontal scalability made it the ideal choice for &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/deutsche-bank-scales-online-banking-platform-with-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Deutsche Bank’s&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; business critical application for online banking.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;By consolidating all user data with the exception of logs to a single database for development, &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/minna-bank-colopl-and-7-eleven-japan-build-apps-on-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;COLOPL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; has eliminated the scalability constraints that occurred when using horizontally and vertically partitioned databases for large-scale services.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;With Spanner's fully-managed relational database, &lt;/span&gt;&lt;a href="https://www.prnewswire.com/news-releases/google-cloud-and-deloitte-boost-grocery-associate-productivity-and-improve-the-customer-experience-301726406.html" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Kroger&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; has been able to build a true event-driven ledger, which enables the company to capture unique events to make better-informed decisions about how to direct associates to be more productive.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Looking ahead&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We believe Spanner's recognition in the Gartner Critical Capabilities report reinforces Google’s position in the Cloud Database Management Systems market. We're committed to continuing to innovate and expand Spanner's capabilities, empowering our customers to build the next generation of mission-critical applications.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Whether you need a database for global transactions, multi-model applications or real-time analytics, Spanner is the solution you can rely on. Sign up for a &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/free-trial-instance"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;free Spanner trial account&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and experience the power of multi-model Spanner today.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;sup&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;Gartner Critical Capabilities for Cloud Database Management Systems for Operational Use Cases, Ramke Ramakrishnan, Henry Cook, Xingyu Gu, Masud Miraz, Aaron Rosenbaum, 18 December, 2024.&lt;/span&gt;&lt;/sup&gt;&lt;/p&gt;
&lt;p&gt;&lt;sup&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;GARTNER is a registered trademark and service mark of Gartner, Inc. and/or its affiliates in the U.S. in the U.S. and internationally and is used herein with permission. All rights reserved. This graphic was published by Gartner, Inc. as part of a larger research document and should be evaluated in the context of the entire document. The Gartner document is available upon request from Google. Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner’s research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.&lt;/span&gt;&lt;/sup&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Thu, 01 May 2025 18:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/gartner-recognizes-spanner-in-critical-capabilities-report/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Google Cloud Spanner ranked #1 by Gartner® for Lightweight Transaction Use Case</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/gartner-recognizes-spanner-in-critical-capabilities-report/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagan R. Athreya</name><title>Group Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagdeep Singh</name><title>Director Product Management</title><department></department><company></company></author></item><item><title>Migrating your apps from MySQL to Spanner just got easier</title><link>https://cloud.google.com/blog/products/databases/migrating-from-mysql-to-spanner-is-easier-now/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Yesterday’s databases aren‘t sufficient for tomorrow’s applications, which need to deliver dynamic, AI-driven experiences at unpredictable scale and with zero downtime. To help, at Google Cloud Next &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;25&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;, we announced new functionality, improved performance, and migration tooling to simplify modernizing database workloads from MySQL to &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, Google Cloud’s horizontally scalable, always-on operational database. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;MySQL simply wasn't designed for today’s most pressing scaling and availability needs. Common fixes, like sharding or manual replication, are complex and risky—coming exactly at the time when the business can tolerate it least. Planning and executing scaling on self-managed databases typically require expensive after-market solutions, which can take months to architect and test, diverting development teams from more pressing user-facing features. And because of the overhead of scaling, organizations often provision for peak usage, even if that capacity remains unused most of the time. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Tomorrow’s applications also need to do more than just transaction processing. New experiences like semantic discovery, collaborative recommendations, real-time fraud detection, and dynamic pricing, require different ways of storing and querying data. &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa3f8353340&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Simpler live migrations from MySQL to Spanner&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To help organizations struggling to grow and modernize their apps, Spanner provides a well-defined migration path to safely and easily move production workloads from MySQL with virtually no downtime. Once there, they can take advantage of Spanner’s hands-free reliability and rich graph, full-text search, and integrated AI capabilities. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;A key part of this is &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/migration-tools"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner migration tool&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which automates schema and data migration to support live cutovers, including consolidating petabyte-sized sharded MySQL databases in days, not months. Improved data movement templates provide increased throughput at significantly lower cost as well as new flexibility to transform data as it’s migrated, and updated built-in &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/cutover-fallback-mechanisms"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;reverse replication&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; synchronizes data back from Spanner to sharded MySQL instances to allow for near real-time failover in a disaster scenario. Finally, new Terraform configurations and CLI integration provide flexibility to customize implementations. &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/smt.max-1000x1000.png"
        
          alt="smt"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="1fx70"&gt;Spanner migration tool architecture&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Improved latency with fewer code and query changes&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To further reduce the cost and complexity of migrating application code and queries, we introduced a rich new set of relational capabilities in Spanner that map closely to MySQL. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Repeatable read is the default isolation level in MySQL, balancing  performance and consistency. We’re excited to bring this flexibility to Spanner as well. New repeatable read isolation, now in &lt;/span&gt;&lt;a href="https://docs.google.com/forms/d/e/1FAIpQLScmtrpVe9OW0R-3DV6vfqUHgaD2I5qXmKcUbzLSGrMiXdz0Fw/viewform?usp=sharing&amp;amp;resourcekey=0-Ljj3fNdJ5SAbDtH9Xl3MbA" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;preview&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, complements Spanner’s existing serializable isolation. It will be familiar to MySQL developers and gives them additional tools to significantly improve performance. In fact, most common workloads can see up to a 5x latency improvement compared to what was possible in Spanner previously. In addition, new &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/reference/standard-sql/data-definition-language#create_table"&gt;&lt;code style="text-decoration: underline; vertical-align: baseline;"&gt;auto_increment&lt;/code&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; keys, &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/use-select-for-update"&gt;&lt;code style="text-decoration: underline; vertical-align: baseline;"&gt;SELECT…FOR UPDATE&lt;/code&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and close to &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/reference/standard-sql/functions-all"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;80 new MySQL functions&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; dramatically reduce the changes required to migrate an application to Spanner. &lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“As our calendar sharing service gained popularity, demand grew steadily. At 55 million users, we hit Aurora MySQL’s scalability limits for both data volume and active connections. But scalability wasn't the only issue. Our app teams spent too much time managing the database, leaving less for feature development. Fully managed Spanner solved this, significantly cutting costs and enabling future growth. Migrations are challenging, but with Google Cloud support and the Spanner migration tool, we completed it successfully with minimal downtime.”&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; - Eiki Kanai, SRE Manager, TimeTree&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;A recent &lt;/span&gt;&lt;a href="https://cloud.google.com/resources/content/forrester-spanner-tei-study?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Total Economic Impact study from Forrester Consulting&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; also found that Spanner provided a 132% ROI and $7.74M of total benefits over three years for a composite organization representative of interviewed customers. This comes largely from retiring self-managed databases and taking advantage of Spanner’s elastic scalability and built-in, hands-free, high availability operations. Forrester found that decreased disruptions from unplanned downtime and system maintenance with Spanner reduced time to onboard new apps and allowed development teams to address new opportunities without complex re-architecture projects or new capital expenditures.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Get started today&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To learn more about how Spanner can take the stress out of your organization’s next growth milestone and set your development teams up for success, visit &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;https://cloud.google.com/spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. There, you’ll find reference architectures, examples of successful migrations, and a directory of qualified partners to help with a free assessment. Read up on &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/migrating-mysql-to-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;how to run a successful migration from MySQL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. Or try Spanner yourself today with a &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/free-trial-instance"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;90-day free trial&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and production instances starting around $65 USD/month.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Thu, 24 Apr 2025 16:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/migrating-from-mysql-to-spanner-is-easier-now/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Migrating your apps from MySQL to Spanner just got easier</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/migrating-from-mysql-to-spanner-is-easier-now/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Justin Makeig</name><title>Senior Product Manager, Google</title><department></department><company></company></author></item><item><title>Forrester study reveals significant benefits and cost savings with Spanner</title><link>https://cloud.google.com/blog/products/databases/forrester-tei-study-on-spanner-shows-benefits-and-cost-savings/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Is your legacy database sticking you with rising costs, frustrating downtime, and scalability challenges? For organizations that strive for top performance and agility, legacy database systems can become significant roadblocks to innovation. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;But there's good news. According to a new Forrester Total Economic Impact™ (TEI) study, organizations may realize significant benefits by deploying &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, Google Cloud’s always-on, globally consistent, multi-model database with virtually unlimited scale. What kind of benefits? We’re talking an ROI of 132% over three years, and multi-million-dollar benefits and cost savings for a representative composite organization. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Read on for more, then &lt;/span&gt;&lt;a href="https://cloud.google.com/resources/content/forrester-spanner-tei-study"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;download the full study&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to see the results and learn how Spanner can help your organization increase cost savings and profit, as well as reliability and operational efficiencies.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;The high cost of the status quo&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Legacy, on-premises databases often come with a hefty price tag that goes far beyond initial hardware and software investments. According to the Forrester TEI study, these databases can be a burden to maintain, requiring dedicated IT staff and specialized expertise, as well as high capital expenditures and operational overhead. Outdated systems can also limit your ability to respond quickly to changing market demands and customer needs, such as demand spiking for a new game or a viral new product.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa3d6f8c190&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner's economic impact: Forrester's key findings &lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To quantify the benefits that Spanner can bring to an organization, &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Forrester used its TEI methodology, conducting in-depth interviews with seven leading organizations across the globe who had adopted Spanner. These organizations came from a variety of industries such as retail, financial services, software and technology, gaming, and transportation. Based on its findings, Forrester created a representative composite organization: a business-to-consumer (B2C) organization with revenue of $1 billion per year, and modeled the potential financial impact of adopting Spanner. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In addition to a 132% return on investment (ROI) with a 9-&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;m&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;o&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;nth payback perio&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;d, Forrester found that the composite organization also realized $7.74M in total benefits over the three years, from a variety of sources: &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Cost savings from retiring on-prem legacy database:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; By retiring the on-prem legacy database and &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;transitioning to Spanner, the composite organization can save &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;$3.8 million&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; over three years. Savings came from reduced infrastructure capital expenditure, maintenance costs, and system licensing expenses. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="vertical-align: baseline;"&gt;“&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;The system before migration was more expensive. It was the cost of the entire system including the application, database, monitoring, and everything. We paid within the $5 million to $10 million range for a mainframe, and I expect that the cost of it would almost double within the next few years. Currently, we pay 90% less for Spanner.&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;” - &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Senior Principal Architect at a software and technology organization&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Profit retention and cost savings from reduced unplanned downtime:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Prior to adopting Spanner, organizations suffered unplanned database downtime triggered by technical malfunctions, human errors, data integration issues, or natural disasters. With up to 99.999% availability, Spanner virtually  eliminates unplanned downtime. Forrester calculates that the composite organization achieves &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;$1.2 million&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; in cost savings and profit retention due to reduced unplanned downtime. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“In the last seven years since we migrated to Spanner, the total number of failures caused by Spanner is zero. Prior to Spanner, some sort of problem would occur about once a month including a major problem once a year.” - Tech Lead, gaming organization&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Cost savings from reduced overprovisioning for peak usage:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; With on-prem database systems, long infrastructure procurement cycles and large up-front expenditures mean that organizations typically provision for peak usage — even if that means they are over-provisioned most of the time. Spanner's elastic scalability allows organizations to start small and scale up and down effortlessly as usage changes. Databases can scale up for however long you need, and then down again, cutting costs and the need to predict usage. For the composite organization, this results in cost savings of &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;$1 million&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; over three years. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“The number of transactions we are able to achieve is one of the main reasons that we use Spanner. Additionally, Spanner is highly consistent, and we save on the number of engineers needed for managing our databases."&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; - Head of SRE, DevOps, and Infrastructure, financial services organization&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Efficiencies gained in onboarding new applications:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner accelerates development of new applications by eliminating the need to preplan resources. This resulted in 80% reduction in time to onboard new applications and &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;$981,000&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; in cost savings for the composite organization.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Beyond the numbers&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Beyond the quantifiable ROI, the Forrester TEI study highlights unquantified benefits that amplify Spanner's value. These include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Improved budget predictability,&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; as Spanner shifts expenditures from capex to opex, enabling more effective resource allocation and forecasting. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Greater testing and deployment flexibility&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;, allowing software development engineers to rapidly scale development environments for testing, conduct thorough load tests, and quickly shut down resources. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Expert Google Cloud customer service,&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; providing helpful guidance to maximize Spanner's benefits. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“The Spanner team are experts. They have a deep understanding of the product  they’ve built with deep insights on how we’re using the product if we ask them.” - &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Head of Engineering, financial services organization&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;An innovation-friendly architecture,&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; facilitating the design and implementation of new business capabilities and expansion, improving automation and customer satisfaction, all without incurring downtime. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Together, these strategic advantages contribute to organizational agility and long-term success.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Unlock the potential of your data with Spanner &lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We believe the Forrester TEI study clearly demonstrates that Spanner is more than just a database; it's a catalyst for business transformation. By eliminating the constraints of legacy systems, Spanner empowers organizations to achieve significant cost savings, improve operational efficiencies, and unlock new levels of innovation. Are you ready to transform your data infrastructure and unlock your organization's full potential?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Download the full &lt;/strong&gt;&lt;a href="https://cloud.google.com/resources/content/forrester-spanner-tei-study"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Forrester Total Economic Impact study&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Wed, 05 Mar 2025 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/forrester-tei-study-on-spanner-shows-benefits-and-cost-savings/</guid><category>Spanner</category><category>Databases</category><media:content height="540" url="https://storage.googleapis.com/gweb-cloudblog-publish/images/total_econmic_impact_spanner.max-600x600.jpg" width="540"></media:content><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Forrester study reveals significant benefits and cost savings with Spanner</title><description></description><image>https://storage.googleapis.com/gweb-cloudblog-publish/images/total_econmic_impact_spanner.max-600x600.jpg</image><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/forrester-tei-study-on-spanner-shows-benefits-and-cost-savings/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Ashish Chopra</name><title>Cloud-native Databases Product Marketing Lead</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Justin Makeig</name><title>Senior Product Manager, Google</title><department></department><company></company></author></item><item><title>Unico builds cutting-edge IDTech with Spanner Vector Search</title><link>https://cloud.google.com/blog/products/databases/unico-builds-cutting-edge-idtech-with-spanner-vector-search/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;a href="https://unico.io/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Unico&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; is a leading biometric verification and authentication company addressing the global challenges of identity management and fraud prevention. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;With nearly two decades of experience in the Brazilian market, Unico has become a reliable supplier to over 800 companies, including four of the top five largest banks and leading retailers. Since 2021, Unico has facilitated more than 1.2 billion authentications through digital identity. It is estimated that Unico's solutions have thwarted $14 billion in fraud, by 2023. Valued at over $2.6 billion, the company stands as the second most valuable SaaS company in Latin America, backed by General Atlantics, SoftBank, and Goldman Sachs,  and was recognized as the &lt;/span&gt;&lt;a href="https://www.fastcompany.com/91039324/latin-america-most-innovative-companies-2024" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;third most innovative company in Latin America&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; by Fast Company in 2024. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Currently, working on its global expansion, Unico has an ambitious vision to become the main identity network in the world, thus moving beyond traditional ID verification and embracing a broader spectrum of identity-related technologies. In this article, we’ll explore how Google Cloud and &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; — Google’s always-on, virtually unlimited-scale database — is helping Unico achieve this goal.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Why vector search shines in Unico's solutions&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Unico is committed to delivering innovative, cutting-edge digital identity solutions. A cornerstone of this effort is the use of vector search technology, which enables powerful capabilities like 1:N search —  the ability to search for a single face within a large set of many others. This technology drives Unico’s identity solutions by retrieving and ranking multiple relevant matches for a given query with high precision and speed. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;However, developing 1:N searches poses a significant challenge: efficiently verifying facial matches within databases containing millions or billions of registered face vectors. Comparing an individual’s facial characteristics against each entry one by one is impractical. To address this, vector databases are often employed to perform Approximate Nearest Neighbor searches (ANN) and return the top-N most similar faces. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Unico found that Spanner supports vector search capabilities to solve these issues, providing: &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Semantic retrieval&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Leveraging vector embeddings, Unico’s solutions can retrieve results based on deeper semantic relationships rather than exact matches. This improves the quality of identity verification, such as identifying relevant facial matches even when minor variations exist between the source and target images.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Diversity and relevance&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Using algorithms like ANN and exact K-Nearest Neighbors (KNN) vector search balances the need for diverse and relevant results, ensuring high reliability in fraud detection and identity verification.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Multimodal applications&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Vector search supports embeddings from multiple data types, such as text, images, and audio, enabling its use in complex, multimodal identity scenarios.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Hybrid search&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;: Modern vector search frameworks combine similarity search with metadata filters, allowing tailored results based on context, such as region or user preferences.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;By integrating vector search, Unico provides customers with faster and smarter fraud detection tools. Leveraging high-precision algorithms, these tools can identify fraudulent faces with exceptional accuracy, effectively safeguarding businesses and individuals against identity theft and other threats. This innovation not only solidifies Unico’s position as a technology leader but also underscores its mission to build a safer, and more trusted world by creating a unified ecosystem to validate people's real identities.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa3f82aa9a0&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;span style="vertical-align: baseline;"&gt;Some results&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Operating at low latency while maintaining accuracy is crucial for Unico’s business, especially in applications that demand real-time performance, such as banking. Spanner was Unico’s first choice because its integrated support for vector search eliminates the need for separate, specialized vector database solutions. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner provides transactional guarantees for operational data, delivers fresh and consistent vector search results, and offers horizontal scalability. Its features also include GRPC (Google Remote Procedure Call) support, geo partitioning, multi-region storage configuration, RAG and LLM integrations, high SLA levels (99.99%), and maintenance-free architecture. Spanner also currently supports KNN and ANN vector searches.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Unico currently operates 1:N services in Brazil and Mexico, storing more than 1 billion facial embeddings in Spanner to date. This setup enables Unico to achieve low latency at high percentiles, high throughput of 840 RPM, and a precision/recall of 96%. And it’s just the start — Unico processes around 35 million new faces every month and that number continues to grow.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Unico remains focused on growing its customer base, enhancing its existing products, and exploring new opportunities in international markets — with the aim of expanding the reach of its secure digital identity services beyond Brazil’s borders. With Spanner and the ability to tap into the full power of the Google Cloud’s ecosystem, Unico is confident that it can bring its ambitious vision to life and deliver innovative solutions that forge trust between people and companies.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Learn more:&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Discover how &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; can transform your business.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner/docs/free-trial-quickstart"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Get started on Spanner today with a 90 day free trial instance. &lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;Or try out &lt;/span&gt;&lt;a href="https://codelabs.developers.google.com/codelabs/spanner-getting-started-vector-search#3" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Vector Search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn how &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/how-spanner-vector-search-supports-generative-ai-apps?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Vector Search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/topics/developers-practitioners/hybrid-search-in-spanner-combine-full-text-and-vector-search?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;hybrid search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-graph-is-now-ga?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; can supercharge AI apps at virtually unlimited scale.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Tue, 04 Mar 2025 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/unico-builds-cutting-edge-idtech-with-spanner-vector-search/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Unico builds cutting-edge IDTech with Spanner Vector Search</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/unico-builds-cutting-edge-idtech-with-spanner-vector-search/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Gustavo Monti Rocha</name><title>Engineering Manager, Unico</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Vinícius Mariano</name><title>Software Engineering Manager, Unico</title><department></department><company></company></author></item><item><title>8 steps to ensuring a smooth Spanner go-live</title><link>https://cloud.google.com/blog/products/databases/your-spanner-launch-checklist/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;As a developer, there’s a lot to think about when you’re getting ready to launch an application. There’s the availability of the underlying database, of course, which stores application state, and determines how fast and you can recover if your application or web servers go down. Thankfully, if you’re running on &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, its 99.999% availability architecture means that application owners don’t have to worry about designing and operating active-active database deployments. While Spanner itself is designed to offer high availability, as with any other database, it’s important to have a checklist to ensure a successful launch of your workload as a whole and subsequent ongoing operation. We’ve captured a comprehensive list of items to keep in mind when launching workloads on Spanner in the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/launch-checklist"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Launch Checklist&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. In this blog post, we go over the key steps in the checklist, and provide additional color about each item. Once you’re done, you’ll be equipped to launch your Spanner-based application with confidence.&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Let’s explore the key steps to focus on when gearing up for a Spanner launch.&lt;/span&gt;&lt;/p&gt;
&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;1. Design, develop, test, optimize&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Your Spanner schema and transactions are the blueprint for success. Designing for Spanner’s distributed architecture isn’t just a good idea — it’s the key to unlocking its full potential. Ensure your schema avoids bottlenecks and hotspots, and that transactions are tailored for minimal locking and maximum performance. But the real game-changer? Testing. Rigorous, real-world load testing, complete with traffic spikes and realistic concurrency, helps ensure your workload is ready for production scale and capable of handling unexpected spikes in traffic. &lt;/span&gt;&lt;/p&gt;
&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;2. Choose your deployments well&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner deployments entail more than just provisioning nodes; they’re about aligning infrastructure with your business goals. Choose configurations that balance availability and performance while accounting for traffic peaks with features like auto-scaling. Geography matters as well — place leader regions near your users for low-latency performance. And don’t forget the small stuff, like setting up tags and labels for &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/tags"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;resource tracking&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; or &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/pre-warm-database"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;warming up your database&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for a smooth start.&lt;/span&gt;&lt;/p&gt;
&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;3. Implement backup and disaster recovery&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Downtime isn’t an option when critical data is on the line. A solid backup and recovery strategy helps your business weather unexpected failures. Define recovery objectives, automate backups, and test restore procedures regularly. Features like incremental backups and Point-in-Time Recovery (PITR) make Spanner a reliable ally in your data protection arsenal.&lt;/span&gt;&lt;/p&gt;
&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;4. Stay secure&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Protecting your data goes beyond locking it up. Spanner’s security features, like fine-grained access controls and least-privilege permissions, let you limit access to only what’s necessary and for the right principals. Add an extra layer of defense with deletion protection and carefully designed IAM policies. With these safeguards, your Spanner instance remains both robust and secure.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa402164d00&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;5. Deploy logging, monitoring, and observability&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;To keep Spanner running smoothly, you need visibility. Audit logs, distributed tracing with OpenTelemetry, and real-time dashboards give you a clear view of what’s happening under the hood. Proactive alerts ensure you’re ready to act before small issues turn into big problems. We also invite you to check out &lt;/span&gt;&lt;a href="https://cloud.google.com/database-center/docs/overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Database Center&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which provides a centralized view across your entire database fleet, including Spanner instances.&lt;/span&gt;&lt;/p&gt;
&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;6. Optimize your configuration with the client library: &lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner’s client library is more than a connection — it’s a tool for optimization. Add transaction tags for enhanced debugging, fine-tune session pooling to match workloads, and tweak retry policies to handle errors with grace. These configurations boost both performance and resilience.&lt;/span&gt;&lt;/p&gt;
&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;7. Cut costs without compromising performance &lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Managing costs isn’t about cutting corners. Take advantage of committed use discounts for predictable savings and let auto-scaling handle spikes while minimizing idle resources. For non-production environments, scale down or shut off instances when they’re not needed. &lt;/span&gt;&lt;/p&gt;
&lt;h3 role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;8. Plan your Migration&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;If you’re moving to Spanner, a well-planned migration makes all the difference. From orchestrating a seamless cutover to preparing a reliable fallback strategy, every step counts. Communicate with stakeholders, validate data, and monitor the process to ensure success.&lt;/span&gt;&lt;/p&gt;
&lt;h3 style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;Ready, set, scale!&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Launching a successful workload or application is the result of careful planning, rigorous testing, and proactive management. And it’s no different for workloads running on Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Deploying mission-critical workloads on Spanner is about building a solid foundation for scalability, resilience and peak performance. A well-structured launch checklist ensures you’ve covered all the bases, from design and deployment to backup strategies and cost management. You can review the Spanner Launch Checklist in the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/launch-checklist"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner documentation&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Fri, 21 Feb 2025 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/your-spanner-launch-checklist/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>8 steps to ensuring a smooth Spanner go-live</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/your-spanner-launch-checklist/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Szabolcs Rozsnyai</name><title>Senior Staff Solutions Architect</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Karthi Thyagarajan</name><title>Senior Staff Solutions Architect</title><department></department><company></company></author></item><item><title>Announcing the general availability of Spanner Graph</title><link>https://cloud.google.com/blog/products/databases/spanner-graph-is-now-ga/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In today's complex digital world, building truly intelligent applications requires more than just raw data — you need to understand the intricate relationships within that data. Graph analysis helps reveal these hidden connections, and when combined with techniques like full-text search and vector search, enables you to deliver a new class of AI-enabled application experiences. However, traditional approaches based on niche tools result in data silos, operational overhead, and scalability challenges. That's why we introduced &lt;/span&gt;&lt;a href="https://cloud.google.com/products/spanner/graph"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and today we’re excited to announce that it’s generally available.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-spanner-graph"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;In a previous post&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, we described how Spanner Graph reimagines graph data management with a unified database that integrates graph, relational, search, and gen AI capabilities with virtually unlimited scalability. With Spanner Graph, you gain access to an intuitive ISO Standard Graph Query Language (GQL) interface that simplifies pattern matching and relationship traversal. You also benefit from full interoperability between GQL and SQL, for tight integration between graph and tabular data. Powerful vector and full-text search enable fast data retrieval using semantic meaning and keywords. And you can rely on Spanner’s scalability, availability, and consistency to provide a solid data foundation. Finally, integration with Vertex AI gives you access to powerful AI models directly within Spanner Graph.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa4024bf2b0&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;What’s new in Spanner Graph&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Since the preview, we have added exciting new capabilities and partner integrations to make it easier for you to build with Spanner Graph. Let’s take a closer look.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;1) &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner Graph Notebook:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Graph visualization is key to developing with graphs. The new open-source &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/spanner-graph-notebook/blob/main/README.md" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph Notebook&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; tool &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;provides an efficient way to query Spanner Graph visually. This tool is natively installed in &lt;/span&gt;&lt;a href="https://colab.google/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Google Colab&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, meaning you can use it directly within that environment. You can also leverage it in notebook environments like &lt;/span&gt;&lt;a href="https://jupyter.org/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Jupyter Notebook&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. With this tool, you can use &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/spanner-graph-notebook/blob/main/README.md#--spanner_graph-ipython-magics" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;magic commands&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; with &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/reference/standard-sql/graph-intro"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;GQL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to visualize query results and graph schemas with multiple layout options, inspect node and edge properties, and analyze neighbor relationships. &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/spanner_graph_notebook.gif"
        
          alt="1 Open-source Spanner Graph Notebook."&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="7wf5b"&gt;Open-source Spanner Graph Notebook.&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;2) &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;GraphRAG with LangChain integration:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner Graph's &lt;/span&gt;&lt;a href="https://cloud.google.com/python/docs/reference/langchain-google-spanner/latest#spanner-graph-store-usage"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;integration with LangChain&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; allows for quick prototyping of GraphRAG applications. Conventional RAG, while capable of grounding the LLM by providing relevant context from your data using vector search, cannot leverage the implicit relationships present in your data. GraphRAG overcomes this limitation by constructing a graph from your data that captures these complex relationships. At retrieval time, GraphRAG uses the combined power of graph queries with vector search to provide a richer context to the LLM, enabling it to generate more accurate and relevant answers.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;3) &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Graph schema in Spanner Studio:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; The Spanner Studio Explorer panel now displays a list of defined graphs, their nodes and edges, and the associated labels and properties. You can explore and understand the structure of your graph data at a glance, making it easier to design, debug, and optimize your applications.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;4) &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Graph query improvements:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner Graph now supports the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/graph/work-with-paths#query-graph-path"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;path data type and functions&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, allowing you to retrieve and analyze the specific sequence of nodes and relationships that connect two nodes in your graph. For example, you can create a path variable in a path pattern, using the IS_ACYCLIC function to check if the path has repeating nodes, and return the entire path:&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;GRAPH FinGraph\r\nMATCH p = (:Account)-[:Transfers]-&amp;gt;{2,5}(:Account)\r\nRETURN IS_ACYCLIC(p) AS is_acyclic_path, TO_JSON(p) AS full_path;&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa4049335b0&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;5) &lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt;Graph visualization partner integrations:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;  Spanner Graph is now integrated with leading graph visualization partners. For example, Spanner Graph customers can use &lt;/span&gt;&lt;a href="https://www.issuewire.com/kineviz-enhances-graph-analytics-with-google-clouds-spanner-graph-1821436523132493" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;GraphXR,&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; Kineviz’s flagship product, which combines cutting-edge visualization technology with advanced analytics to help organizations make sense of complex, connected data. &lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;"We are thrilled to partner with Google Cloud to bring graph analytics to big data. By integrating GraphXR with Spanner Graph, we're empowering businesses to visualize and interact with their data in ways that were previously unimaginable." &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- Weidong Yang, CEO, Kineviz&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Spanner_Graph_2_GraphXR.gif"
        
          alt="2 Transit Fraud Investigation"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="7wf5b"&gt;Transit Fraud Investigation in &lt;a href="https://github.com/Kineviz/spannergraph-graphxr-api"&gt;Kineviz GraphXR and Google Spanner Graph&lt;/a&gt;&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Similarly, you can use &lt;/span&gt;&lt;a href="https://www.graphistry.com/blog/graphistry-google-spanner-graph-partnership-launch" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Graphistry’s GPU-accelerated visual graph intelligence platform&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to extract meaningful insights from large complex data in Spanner Graph&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;"Businesses can finally handle graph data with both speed and scale. By combining Graphistry’s GPU-accelerated graph visualization and AI with Spanner Graph’s global-scale querying, teams can now easily go all the way from raw data to graph-informed action. Whether detecting fraud, analyzing journeys, hunting hackers, or surfacing risks, this partnership is enabling teams to move with confidence." &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- Leo Meyerovich, Founder and CEO, Graphistry&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/3_Visual_analytics_capabilities_in_Graphistry.gif"
        
          alt="3 Visual analytics capabilities in Graphistry"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="7wf5b"&gt;Visual analytics capabilities in Graphistry: zooming, clustering, filtering, histograms, time bar filtering, node styling (colors), allowing point-and-click analysis to quickly understand the data, clusters, identify patterns, anomalies and other insights.&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Furthermore, you can use &lt;/span&gt;&lt;a href="https://gdotv.com/blog/google-cloud-spanner-graph-release/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;G.V()&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, a quick-to-install graph database client, with Spanner Graph to perform day-to-day graph visualization and data analytics tasks with ease. Data professionals benefit from high-performance graph visualization, no-code data exploration, and highly customizable data visualization options. &lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“Graphs thrive on connections, which is why I’m so excited about this new partnership between G.V() and Google Cloud Spanner Graph. Spanner Graph turns big data into graphs, and G.V() effortlessly turns graphs into interactive data visualizations. I’m keen to see what data professionals build combining both solutions.” &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- Arthur Bigeard, Founder, gdotv Ltd.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/gdotv.gif"
        
          alt="gdotv"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="7wf5b"&gt;Visually querying and exploring Spanner Graph with G.V().&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;What customers are saying&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Through our road to GA, we have also been working with multiple customers to help them innovate with Spanner Graph:&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“The Commercial Financial Network manages commercial credit data for more than 30 million U.S. businesses  Managing the hierarchy of these businesses can be complex due to the volume of these hierarchies, as well as the dynamic nature driven by mergers and acquisitions, Equifax is committed to providing lenders with the accurate, reliable and timely information they need as they make financial decisions. Spanner Graph helps us manage these rapidly changing, dynamic business hierarchies easily at scale.” - &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Yuvaraj Sankaran, Chief Architect of Global Platforms, Equifax&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="vertical-align: baseline;"&gt;“&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;As we strive to enhance our fraud detection capabilities, having a robust, multi-model database like Google Spanner is crucial for our success&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;By integrating SQL for transactional data management with advanced graph data analysis, we can efficiently manage and analyze evaluated fraud data. Spanner's new capabilities significantly improve our ability to maintain data integrity and uncover complex fraud patterns, ensuring our systems are secure and reliable&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;.” - Hai Sadon, Data Platform Group Manager, Transmit Security&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;"Spanner Graph has provided a novel and performant way for us to query this data, allowing us to deliver features faster and with greater peace of mind. Its flexible data modeling and high-performance querying have made it far easier to leverage the vast amount of data we have in our online applications." - &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Aaron Tang, Senior Principal Engineer, U-NEXT &lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Get started with Spanner Graph today&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;With Spanner Graph, we’re excited to offer graph data management alongside relational, search, and AI capabilities, all on a single unified, highly scalable database. Learn more about Spanner Graph benefits and use cases &lt;/span&gt;&lt;a href="https://cloud.google.com/products/spanner/graph"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. Use this &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/graph/set-up"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;quick setup guide&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to get started with &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/graph/overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph capabilities&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. You can also try out sample applications related to &lt;/span&gt;&lt;a href="https://github.com/GoogleCloudPlatform/generative-ai/blob/main/gemini/sample-apps/finance-advisor-spanner/README.md" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;financial investing&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://github.com/maguec/TransitFraudDemo" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;fraud detection&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and &lt;/span&gt;&lt;a href="https://github.com/GoogleCloudPlatform/chocolate-ai/blob/main/colab-enterprise/Campaign-Performance-Spanner-Graph.ipynb" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;customer 360 and product recommendations&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Thu, 30 Jan 2025 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/spanner-graph-is-now-ga/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Announcing the general availability of Spanner Graph</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/spanner-graph-is-now-ga/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Bei Li</name><title>Sr. Staff Software Engineer</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagdeep Singh</name><title>Director Product Management</title><department></department><company></company></author></item><item><title>Avoid global outages by partitioning cloud applications to reduce blast radius</title><link>https://cloud.google.com/blog/products/devops-sre/how-to-partition-cloud-applications-to-avoid-global-outages/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Cloud applications like Google Workspace provide benefits such as collaboration, availability, security, and cost-efficiency. However, for cloud application developers, there’s a fundamental conflict between achieving high availability and the constant evolution of cloud applications. Changes to the application, such as new code, configuration updates, or infrastructure rearrangements, can introduce bugs and lead to outages. These risks pose a challenge for developers, who must balance stability and innovation while minimizing disruption to users.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Here on the &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Google Workspace Site Reliability Engineering team, we&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; once moved a replica of Google Docs to a new data center because we needed extra capacity. But moving the associated data, which was vast, overloaded a key index in our database, restricting user ability to create new docs. Thankfully, we were able to identify the root cause and mitigate the problem quickly. Still, this experience convinced us of the need to reduce the risk of a global outage from a simple application change.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;Try Google Cloud for free&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa4049f1790&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Get started for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;https://console.cloud.google.com/freetrial?redirectPath=/welcome&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Limit the blast radius&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Our approach to reducing the risk of global outages is to limit the “blast radius,” or extent, of an outage by vertically partitioning the serving stack. The basic idea is to run isolated instances (“partitions”) of application servers and storage (&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Figure 1&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;). Each partition contains all the various servers necessary to service a user request from end to end. Each production partition also has a pseudo-random mix of users and workloads, so all the partitions have similar resource needs. When it comes time to make changes to the application code, we deploy new changes to one partition at a time. Bad changes may cause a partition-wide outage, but we are protected from a global application outage. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Compare this approach to using canarying alone, in which new features or code changes are released to a small group of users before rolling them out to the rest. While canarying deploys changes first to just a few servers, it doesn’t prevent problems from spreading. For example, we’ve had incidents where canaried changes corrupted data used by all the servers in the deployment. With partitioning, the effects of bad changes are isolated to a single partition, preventing such contagion. Of course, in practice, we combine both techniques: canarying new changes to a few servers within a single partition.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_KiJBHRh.max-1000x1000.png"
        
          alt="image1"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Benefits of partitioning&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Broadly speaking, partitioning brings a lot of advantages:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Availability:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Initially, the primary motivation for partitioning was to improve the availability of our services and avoid global outages. In a global outage, an entire service may be down (e.g., users cannot log into Gmail), or a critical user journey (e.g., users cannot create Calendar events) — obviously things to be avoided. &lt;br/&gt;&lt;br/&gt;&lt;/span&gt;Still, the reliability benefits of partitioning can be hard to quantify; global outages are relatively infrequent, so if you don’t have one for a while, it may be due to partitioning, or may be due to luck. That said, we’ve had several outages that were confined to a single partition, and believe they would have expanded into global outages without it.&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Flexibility: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;We evaluate many changes to our systems by experimenting with data. Many user-facing experiments, such as a change to a UI element, use discrete groups of users. For example, in Gmail we can choose an on-disk layout that stores the message bodies of emails inline with the message metadata, or a layout that separates them into different disk files. The right decision depends on subtle aspects of the workload. For example, separating message metadata and bodies may reduce latency for some user interactions, but requires more compute resources in our backend servers to perform joins between the body and metadata columns. With partitioning, we can easily evaluate the impact of these choices in contained, isolated environments. &lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Data location: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Google Workspace lets enterprise customers specify that their data be stored in a specific jurisdiction. In our previous, non-partitioned architecture, such guarantees were difficult to provide, especially since services were designed to be globally replicated to reduce latency and take advantage of available capacity.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Challenges&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Despite the benefits, there are some challenges to adopt partitioning. In some cases, these challenges make it hard or risky to move from a non-partitioned to a partitioned setup. In other cases, challenges persist even after partitioning. Here are the issues as we see them:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Not all data models are easy to partition: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;For example, Google Chat needs to assign both users and chat rooms to partitions. Ideally, a chat and its members would be in a single partition to avoid cross-partition traffic. However, in practice, this is difficult to accomplish. Chat rooms and users form a graph, with users in many chat rooms and chat rooms containing many users. In the worst case, this graph may have only a single connected component — the user. If we were to slice the graph into partitions, we could not guarantee that all users would be in the same partition as their chat rooms.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Partitioning a live service requires care: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Most of our services pre-date partitioning. As a result, adopting partitioning means taking a live service and changing its routing and storage setup. Even if the end goal is higher reliability, making these kinds of changes in a live system is often the source of outages, and can be risky.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Partition misalignment between services: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Our services often communicate with each other. For example, if a new person is added to a Calendar event, Calendar servers make an Remote Procedure Call (RPC) to Gmail delivery servers to send the new invitee an email notification. Similarly, Calendar events with video call links require Calendar to talk to Meet servers for a meeting id. Ideally, we would get the benefits of partitioning even across services. However, aligning partitions between services is difficult. The main reason is that different services tend to use different entity types when determining which partition to use. For example, Calendar partitions on the owner of the calendar while Meet partitions on meeting id. The result is that there is no clear mapping from partitions in one service to another.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Partitions are smaller than the service: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;A modern cloud application is served by hundreds or thousands of servers. We run servers at less than full utilization so that we can tolerate spikes in traffic, and because servers that are saturated with traffic generally perform poorly. If we have 500 servers, and target each at 60% CPU utilization, we effectively have 200 spare servers to absorb load spikes. Because we do not fail over between partitions, each partition has access to a much smaller amount of spare capacity. In a non-partitioned setup, a few server crashes may likely go unnoticed, since there is enough headroom to absorb the lost capacity. But in a smaller partition, these crashes may account for a non-trivial portion of the available server capacity, and the remaining servers may become overloaded.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Key takeaways&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We can improve the availability of web applications by partitioning their serving stacks. These partitions are isolated, because we do not fail over between them. Users and entities are assigned to partitions in a sticky manner to allow us to roll out changes in order of risk tolerance. This approach allows us to roll out changes one partition at a time with confidence that bad changes will only affect a single partition, and ideally that partition contains only users from your organization.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In short, partitioning supports our efforts to provide stronger and more reliable services to our users, and it might apply to your service as well. For example, you can improve the availability of your application by using &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which provides geo-partitioning out of the box. Read more about geo-partitioning best practices&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/geo-partitioning"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;References&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://cloud.google.com/spanner/docs/geo-partitioning"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;https://cloud.google.com/spanner/docs/geo-partitioning&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://research.google/pubs/deployment-archetypes-for-cloud-applications/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;https://research.google/pubs/deployment-archetypes-for-cloud-applications/&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;a href="https://sre.google/workbook/managing-load/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;https://sre.google/workbook/managing-load/&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><pubDate>Thu, 09 Jan 2025 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/devops-sre/how-to-partition-cloud-applications-to-avoid-global-outages/</guid><category>Developers &amp; Practitioners</category><category>Spanner</category><category>DevOps &amp; SRE</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Avoid global outages by partitioning cloud applications to reduce blast radius</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/devops-sre/how-to-partition-cloud-applications-to-avoid-global-outages/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Karan Anand</name><title>Technical Program Management</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>John Lunney</name><title>Senior Staff Reliability Engineer</title><department></department><company></company></author></item><item><title>Spanner in 2024: A year of innovation</title><link>https://cloud.google.com/blog/products/databases/spanner-innovations-in-2024/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner is Google’s always-on, virtually unlimited database that powers planet-scale applications like Gmail, YouTube, and Google Photos. Outside of Google, Spanner powers demanding workloads for household brands like Yahoo!, The Home Depot, Wayfair, and Pokémon Go. Today, Spanner handles over 4 billion queries per second at peak and more than 15 exabytes of data, with five 9s of availability, plus global consistency.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Since we first &lt;/span&gt;&lt;a href="https://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;discussed&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; it in 2012, Spanner has evolved from a groundbreaking distributed SQL database into a versatile, intelligent innovation platform. 2024 was a big year for Spanner, with multiple launches that expanded its functional capabilities, pushed the envelope on price-performance, re-architected it for best-in-class reliability and security, and enhanced the developer experience. Here is a recap of Spanner’s biggest innovations of the year and how you can benefit from them. &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa401780580&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3 style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;1. Multi-model: one database, many possibilities&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;With the launch of &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-spanner-graph?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Graph&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-graph-full-text-search?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;full-text search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/how-spanner-vector-search-supports-generative-ai-apps?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;vector search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, Spanner went from being a highly available, globally consistent and scalable database, to a multi-model database with intelligent, interoperable capabilities with which you can build AI-enabled applications. Unlike other multi-model databases on the market, Spanner offers a true multi-model experience that allows interoperability between different data models without downtime. &lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner's multi-model support lets you consolidate databases, saving on costs and reducing operational overhead, governance, and security touchpoints, while its interoperability eliminates data movement for a "true ZeroETL" experience with consistent data across all models. This helps enable use cases like near-real-time fraud detection, supply chain optimization, or product recommendations.  &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_LedlyJM.max-1000x1000.png"
        
          alt="image1"&gt;
        
        &lt;/a&gt;
      
        &lt;figcaption class="article-image__caption "&gt;&lt;p data-block-key="29wmq"&gt;Fig1: A SQL query on Spanner showing interleaved usage of graph, relational, and vector models and full-text search&lt;/p&gt;&lt;/figcaption&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3 style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;2. Improving price-performance  &lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner’s price-performance lets you dream big, start small (for as little as $65/mo), and scale linearly with no cliffs. In 2022, we increased the storage per node from 2T to 4T, and in 2023 we built on this with a &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-cloud-spanner-price-performance-updates?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;50% increase in throughput and a 2.5X increase in storage&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; at no additional cost. &lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;This year, with the launch of new multi-model capabilities, we wanted to make it simple and cost effective for you to use these capabilities without charging incrementally for every new feature. The result was &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-spanner-editions?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner editions&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, an intuitive, tier-based pricing approach that offers different capabilities at various price points to fit you diverse needs and budgets, all while providing flexibility, cost transparency and additional cost saving opportunities.&lt;/span&gt;&lt;/p&gt;
&lt;h3 style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;3. A new home for your Cassandra workloads&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;The Cassandra NoSQL database is prized for its speed and scalability. It also has limitations, such as limited support for complex queries and difficulty modeling intricate relationships. Spanner combines the scalability and availability of NoSQL with the strong consistency and relational model of traditional databases, for the best of both worlds. &lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;This year, we launched the &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/cassandra-to-spanner-proxy" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cassandra to Spanner Proxy Adapter&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, an open-source, plug-and-play tool that makes it easier than ever to move your Cassandra workload to Spanner with near-zero changes to your application logic. &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Customers like &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/new-proxy-adapter-eases-cassandra-to-spanner-migration?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Yahoo!&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/spanner/reltio-migrates-from-cassandra-to-spanner?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Reltio&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; are loving the ease of use of the Cassandra proxy adapter, and we’re excited to help customers be more successful with Cassandra on Spanner. &lt;/span&gt;&lt;/p&gt;
&lt;h3 style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;4. Generative AI and the Spanner ecosystem&lt;/strong&gt;&lt;/h3&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Over the past year, we’ve witnessed a remarkable shift in how organizations leverage generative AI. But gen AI comes with risk of hallucinations. We believe that&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;transactional and analytical databases can help reduce these,&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;bridging the gap between foundation models and enterprise gen AI apps. Here’s how: &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;Vector support:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; With &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/how-spanner-vector-search-supports-generative-ai-apps?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;vector support for Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, developers can perform similarity searches on vector embeddings stored in the database. Spanner vector search supports both exact KNN and approximate ANN searches, providing flexibilit for different workloads that leverage Google's scalable nearest neighbor (ScaNN) algorithm, providing fast and accurate results, even on large datasets. Spanner now supports vector searches scaling to more than 10 billion vectors. Developers can combine vector searches with regular SQL and graph GQL queries to power use-cases like RAG applications. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;BigQuery and Spanner better together: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;New, groundbreaking integrations between Spanner and BigQuery help businesses connect operational and analytical workloads, to unlock valuable insights and drive better decision-making. &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/data-analytics/introducing-bigquery-external-datasets-for-spanner?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner external datasets in BigQuery&lt;/span&gt;&lt;/a&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;allows you to query transactional data residing in Spanner directly within BigQuery, without needing to move or duplicate data. Spanner now also supports &lt;/span&gt;&lt;a href="https://cloud.google.com/bigquery/docs/export-to-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;reverse ETL from BigQuery&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to export data from BigQuery to Spanner, so you can operationalize the analytical insights that BigQuery enables. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;5. Reliability, availability, security, and governance &lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner customers expect the highest levels of reliability, availability, security, and governance controls for their mission-critical workloads. This year, we launched support for &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-dual-region-configurations-for-data-residency?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;dual-region configurations&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-gets-geo-partitioning?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;geo-partitioning&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to help you improve your availability SLAs, improve application performance for multi-region workloads, and meet governance requirements.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;Dual-region support:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner dual-region configurations help meet local residency requirements while providing five 9s of availability and zero recovery-point objective (RPO) guarantees in geographies with only two regions. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;Geo-partitioning:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; You can partition your table data at the row-level across the globe, to serve data closer to your users. With geo-partitioning, Spanner customers across industries like gaming, e-commerce, and financial services can provide their&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;users reduced application latency, optimized costs, and data residency benefits such as storing sensitive user data within geographic jurisdictions.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;Lastly, we introduced support for &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/release-notes#October_10_2024"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;incremental and scheduled backups&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to make it easier and cheaper to back up your Spanner data. &lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;6.  The developer experience&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;At Google Cloud, we strive to make it ridiculously simple to build and manage applications built on our databases, including Spanner. &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;Protobuf improvements:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; &lt;/span&gt;&lt;a href="https://github.com/protocolbuffers/protobuf" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Protocol Buffers&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, or protobuf, is a language-neutral way to encode and decode data structures for efficient transport and storage. You can now manage protobuf values in Spanner and access their fields&lt;/span&gt;&lt;strong style="vertical-align: baseline;"&gt; &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;using the dot operator in SQL, e.g., dimensions.size.width, without having to normalize into tables upfront. This dramatically simplifies writing queries that need to filter, group, or order by specific values within a protobuf. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation" style="text-align: justify;"&gt;&lt;strong style="vertical-align: baseline;"&gt;Troubleshooting and Database Center support: &lt;/strong&gt;&lt;a href="https://cloud.google.com/database-center/docs/overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Database Center&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; is an AI-powered unified database management solution to monitor and manage diverse database services. This year, customers started to be able to use Database Center to manage their Spanner databases. We also added support for end-to-end tracing and client tracing to make it easier to troubleshoot performance issues. &lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="text-align: justify;"&gt;&lt;span style="vertical-align: baseline;"&gt;We are proud of what we have delivered for customers in 2024, and are excited to see the innovative solutions you are building on Spanner. Needless to say, we are just getting started and we have a lot more exciting capabilities lined up for 2025. &lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Get started&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;Want to &lt;/span&gt;&lt;a href="https://goo.gle/SpannerDatabaseUnlimited" rel="noopener" target="_blank"&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;learn more&lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt; about what makes Spanner unique and how it’s being used today? &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner"&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;Try it yourself for free &lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;for 90-days or for as little as $65 USD/month for a production-ready instance that grows with your business without downtime or disruptive re-architecture.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Fri, 20 Dec 2024 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/spanner-innovations-in-2024/</guid><category>Spanner</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Spanner in 2024: A year of innovation</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/spanner-innovations-in-2024/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Piyush Mathur</name><title>Group Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jagdeep Singh</name><title>Director Product Management</title><department></department><company></company></author></item><item><title>New Cassandra to Spanner adapter simplifies Yahoo's migration journey</title><link>https://cloud.google.com/blog/products/databases/new-proxy-adapter-eases-cassandra-to-spanner-migration/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Cassandra, a key-value NoSQL database, is prized for its speed and scalability, and used broadly for  applications that require rapid data retrieval and storage such as caching, session management, and real-time analytics. Its simple key-value pair structure helps ensure high performance and easy management, especially for large datasets. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;But this simplicity also leads to limitations like poor support for complex queries, potential data redundancy, and difficulty in modeling intricate relationships. Spanner, Google Cloud’s always-on, globally consistent, and virtually unlimited-scale database, combines the scalability and availability of NoSQL with the strong consistency and relational model of traditional databases, positioning it for traditional Cassandra workloads. And today, it’s easier than ever to switch from Cassandra to Spanner, with the introduction of the &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/cassandra-to-spanner-proxy" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cassandra to Spanner Proxy Adapter,&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; an open-source tool for plug-and-play migrations of Cassandra workloads to Spanner, without any changes to the application logic.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa4025952b0&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner for NoSQL workloads&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner provides strong consistency, high availability, virtually unlimited scalability, and a familiar relational data model with support for SQL and ACID transactions for data integrity. As a fully managed service, it helps simplify operations, allowing teams to focus on application development rather than database administration. Furthermore, Spanner's high availability, even at a massive global scale, supports business continuity by minimizing database downtime. &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/1_G0mCmB0.max-1000x1000.png"
        
          alt="1"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We’re constantly evolving Spanner to meet the needs of modern businesses. Some of the latest Spanner capabilities include enhanced multi-model capabilities such as &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-spanner-graph"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;graph&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/full-text-search"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;full-text search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/find-approximate-nearest-neighbors"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;vector search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, improved performance for analytical queries with &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/understanding-cloud-spanner-data-boost"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Data Boost&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and unique enterprise features such as &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-gets-geo-partitioning"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;geo-partitioning&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-dual-region-configurations-for-data-residency"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;dual-region configurations&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. For Cassandra users, these powerful features, along with Spanner’s compelling &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-cloud-spanner-price-performance-updates?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;price-performance&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, unlock a world of new, exciting possibilities.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;The Cassandra to Spanner adapter — battle-tested by Yahoo!&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;If you’re wondering, “Spanner sounds like a leap forward from Cassandra. How do I get started?” the proxy adapter provides a plug-n-play way to forward your client applications' Cassandra Query Language (CQL) traffic to Spanner. Under the hood, the adapter functions as a Cassandra client for the application but operates internally by interacting with Spanner for all data manipulation tasks. With the Cassandra to Spanner proxy adapter there is no migration for your application code needed — it just works! &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Yahoo successfully migrated from Cassandra to Spanner, reaping the benefits of improved performance, scalability, consistency, and operational efficiency. And the proxy adapter made it easy to migrate. &lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“The Cassandra Adapter has provided a foundation for migrating the Yahoo Contacts workload from Cassandra to Spanner without changing any of our CQL queries. Our migration strategy has more flexibility, and we can focus on other engineering activities while utilizing the scale, redundancy, and support of Spanner without updating the codebase. Spanner is cost-effective for our specific needs, delivering the performance required for a business of our scale. This transition enables us to maintain operational continuity while optimizing cost and performance.”&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; - Patrick JD Newnan, Principal Product Manager, Core Mail and Analytics, Yahoo &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Another Google Cloud customer that successfully migrated from Cassandra to Spanner recently is &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/spanner/reltio-migrates-from-cassandra-to-spanner"&gt;&lt;strong style="text-decoration: underline; vertical-align: baseline;"&gt;Reltio&lt;/strong&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. Reltio benefited from an effortless migration process to minimize downtime and disruption to their services while reaping the benefits of a fully managed, globally distributed, and strongly consistent database.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;These success stories demonstrate that migrating from Cassandra to Spanner can be a transformative step for businesses seeking to modernize their data infrastructure, unlock new capabilities, and accelerate innovation.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;How does the new proxy adapter simplify your migration? &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;A typical &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/migration-overview"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;database migration&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; involves the following steps:&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--medium
      
      
        h-c-grid__col
        
        h-c-grid__col--4 h-c-grid__col--offset-4
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/2_t87AI4p.max-1000x1000.png"
        
          alt="2"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Some of these steps — migrate your application (step 4) and migrate the data (step 6) — are more complex than others. The proxy adapter vastly simplifies migrating a Cassandra-backed application to point to Spanner. Here's a high-level overview of the steps involved when using the new proxy adapter:&lt;/span&gt;&lt;/p&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;1. Assessment:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Evaluate your Cassandra schema, data model, and query patterns which ones you can simplify after moving to Spanner. &lt;/span&gt;&lt;/p&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;2. Schema design:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner’s table declaration syntax and data types are similar to Cassandra’s; the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/non-relational/spanner-for-cassandra-users#data_modeling"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;documentation&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; covers these similarities and differences in depth. With Spanner, you can also take advantage of relational capabilities and features like &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/schema-and-data-model#parent-child"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;interleaved tables&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for optimal performance.&lt;/span&gt;&lt;/p&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;3. Data migration:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; There are several steps to migrate your data:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Bulk load:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Export data from Cassandra and import it into Spanner using tools like the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/dataflow-connector"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Dataflow connector&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; or &lt;/span&gt;&lt;a href="https://cloud.google.com/bigquery/docs/export-to-spanner"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;BigQuery reverse ETL&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/li&gt;
&lt;li role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Replicate incoming data: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;Replicate incoming updates to your Cassandra cluster to Spanner in real-time using Cassandra’s Change Data Capture (CDC). &lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;"&gt;Another possibility is to update your application logic to perform dual-writes to Cassandra and Spanner. We don’t recommend this approach if you’re trying to minimize changes to your application code.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;4. Set up the proxy adapter and update your Cassandra configuration:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Download and run the &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/cassandra-to-spanner-proxy" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cassandra to Spanner Proxy Adapter&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, which runs as a sidecar next to your application. By default, the proxy adapter runs on port 9042. In case you decide to use a different port, don’t forget to update your application code to point to the proxy adapter.&lt;/span&gt;&lt;/p&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;5. Testing:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Thoroughly test your migrated application and data in a non-production environment to ensure everything works as expected.&lt;/span&gt;&lt;/p&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;6. Cutover:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Once you're confident in the migration, switch your application traffic to Spanner. Monitor closely for any issues and fine-tune performance as needed.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;What’s under the hood of the new proxy adapter?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The new proxy adapter presents itself as a Cassandra client to the application. From the application's perspective, the only noticeable change is the IP address or hostname of the Cassandra endpoint, which now points to the proxy adapter. This streamlines the Spanner migration, without requiring extensive modifications to application code.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/3a.png"
        
          alt="3"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We designed the proxy adapter to establish a one-to-one mapping between each Cassandra cluster and a corresponding Spanner database. The proxy instance employs a multi-listener architecture, with each listener bound to a distinct port. This facilitates concurrent handling of multiple client connections, where each listener manages a distinct connection with the specified Spanner database. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The proxy’s translation layer handles the intricacies of the Cassandra protocol. This layer performs message decoding and encoding, manages buffers and caches, and crucially, parses incoming CQL queries and translates them into Spanner-compatible equivalents.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The proxy adapter supports &lt;/span&gt;&lt;a href="https://opentelemetry.io/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;OpenTelemetry&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; to collect and export traces to &lt;/span&gt;&lt;a href="https://cloud.google.com/trace/docs"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cloud Trace&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;For more details about different ways of setting up the adapter, limitations, mapping of CQL data types to Spanner, and more, refer to the &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/cassandra-to-spanner-proxy?tab=readme-ov-file" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;proxy adapter documentation&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Addressing common concerns and challenges&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Let's address a few concerns you may have with your migrations:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Cost:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Have a look at &lt;/span&gt;&lt;a href="https://www.accenture.com/content/dam/accenture/final/accenture-com/document-2/Spanner-Benchmark-With-YCSB-Final.pdf" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Accenture’s benchmark result&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; that demonstrates that Spanner ensures not only consistent latency and throughput but also cost efficiency. Furthermore, Spanner now offers a new tiered pricing model (&lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-spanner-editions?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner editions&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;) that delivers better cost transparency and cost savings opportunities to help you take advantage of all of Spanner’s capabilities.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Latency increases: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;To minimize an increase in query latencies, we recommend running the proxy adapter on the same host as the client application (as a side-car proxy) or running on the same Docker network when running the proxy adapter in a Docker container. We also recommend keeping the CPU utilization of the proxy adapter host to under 80%.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Schema flexibility:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; While Cassandra offers schema flexibility, Spanner's stricter relational schema provides advantages in terms of data integrity, query power, and consistency.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;strong style="vertical-align: baseline;"&gt;Learning curve:&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; Spanner’s data types have some differences with Cassandra’s. Have a look at this &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/non-relational/spanner-for-cassandra-users"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;comprehensive documentation&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; that can ease the transition.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Get started today &lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The benefits of strong consistency, simplified operations, enhanced data integrity, and global scalability make Spanner a compelling option for businesses looking to leverage the cloud's full potential for NoSQL workloads. With the new Cassandra to Spanner proxy adapter, we are making it easier to plan and execute on your migration strategy, so you can unlock a new era of data-driven innovation for your organization.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Download the new &lt;/span&gt;&lt;a href="https://github.com/cloudspannerecosystem/cassandra-to-spanner-proxy" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Cassandra to Spanner proxy adapter&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and try it out on a &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/free-trial-instance"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Free Trial instance&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; at no cost today.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Mon, 18 Nov 2024 17:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/new-proxy-adapter-eases-cassandra-to-spanner-migration/</guid><category>Spanner</category><category>Customers</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>New Cassandra to Spanner adapter simplifies Yahoo's migration journey</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/new-proxy-adapter-eases-cassandra-to-spanner-migration/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Nitin Sagar</name><title>Product Manager</title><department></department><company></company></author><author xmlns:author="http://www.w3.org/2005/Atom"><name>Eike Falkenberg</name><title>Engineering Manager, Google</title><department></department><company></company></author></item><item><title>Unlocking the power of Spanner: 10 partners to revolutionize your data</title><link>https://cloud.google.com/blog/products/databases/unlocking-the-power-of-spanner/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In today's fast-paced digital landscape, businesses need a database solution that can keep up with their evolving demands. Spanner is the always-on, globally consistent, and virtually unlimited-scale database, powering a wide array of modern applications across different industries. Spanner powers a number of Google products with billions of users, including &lt;/span&gt;&lt;a href="https://www.youtube.com/watch?v=ih97gwNmkRA" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Gmail&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and has become the foundation for many other innovative organizations in their data-driven transformations. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner not only offers predictable single-digit millisecond latencies, virtually unlimited scalability, and a five 9s of availability SLA, but also strong consistency, familiar PostgreSQL-compatible syntax, and ACID transactions. This unique combination makes Spanner an excellent choice not just for relational data but also for read-heavy, key-value workloads. Furthermore, with Spanner granular instances you can start small and grow according to your business needs.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Spanner is constantly evolving to meet the needs of modern businesses. Some of the latest Spanner advancements include enhanced multi-model capabilities, including &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-spanner-graph"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;graph&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/full-text-search"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;full-text search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/find-approximate-nearest-neighbors"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;vector search&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, improved performance for analytical queries with &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/understanding-cloud-spanner-data-boost"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner Data Boost&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, and the addition of unique enterprise features, such as &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-gets-geo-partitioning"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;geo-partitioning&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/spanner-dual-region-configurations-for-data-residency"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;dual-region configurations&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. These new capabilities, along with compelling &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-cloud-spanner-price-performance-updates?e=48754805"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;price-performance improvements&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, empower you to further optimize your database operations, gain deeper insights from your data, and build even more resilient and scalable applications.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To help our customers take full advantage of Spanner, we are ensuring it is also backed by a robust ecosystem of technology partners and system integrators ready to help you modernize your applications and migrate to the cloud. &lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa4048edca0&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_IMvCDqh.max-1000x1000.png"
        
          alt="image1"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Learn more about our Spanner partners&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Our Spanner partners offer a wide range of solutions and services, including data integration, analytics, governance, and migration assessment to ensure a smooth transition and optimal use of Spanner. Google Cloud collaborates closely with these partners to guarantee the best possible experience and support as you embark on your cloud transformation journey.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;66degrees&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; offers assistance to customers across their full journey including migrations, application code updates, and infrastructure deployment. &lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“As a trusted partner in Spanner implementations, 66degrees brings a proven track record of successful database migrations and deep expertise in leveraging Spanner's capabilities. We have achieved exceptional results in Spanner migrations, including Storj, which we migrated from CockroachDB to Spanner. Our accelerators, such as Route66 and custom data flow templates, streamline the migration process and ensure efficient data transfer. We are committed to partnering with Google to empower organizations to harness the full potential of Spanner, enabling them to achieve scalability, performance, and reliability for their mission-critical applications.”&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; - Daniel Zagales, VP of Data Platforms, 66degrees&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how 66degrees can help with your database migration journey to Spanner &lt;/span&gt;&lt;a href="https://66degrees.com/database-modernization/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Accenture’s&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; 72,000 database professionals worldwide leverage deep industry and cloud expertise to empower clients to drive innovation and digital transformation.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“Google Cloud Spanner offers great performance with availability, scalability, and performance. Our &lt;/span&gt;&lt;a href="https://www.accenture.com/content/dam/accenture/final/accenture-com/document-2/Spanner-Benchmark-With-YCSB-Final.pdf" rel="noopener" target="_blank"&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;benchmark result&lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt; indicated Spanner provided predictable performance while maintaining consistent throughput with low cost. Partnering with Google Cloud on Spanner opportunities allows us to combine our deep industry expertise with cutting-edge database technology on Google Cloud, empowering our clients to unlock new levels of scalability, resilience, and real-time insights that drive their digital transformation journeys to the cloud."&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; -&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; Weidong Zhou, Principal Director, Accenture.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how Accenture can help you &lt;/span&gt;&lt;a href="https://www.accenture.com/us-en/services/software-platforms/accenture-google-cloud-business-group" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;unleash the full potential of human-centric design and Google’s innovative tech&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Amarello &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;has been expanding their capabilities to migrate new customers to Spanner, enabled by a great team of application modernization and database migration experts working together and staying updated on the latest Google Cloud technology.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“Amarello is dedicated to reimagining core business solutions that demand elasticity, high availability, and high transactional processing for Google Cloud customers. Spanner has been proven to be our preferred core technology for delivering mission-critical solutions in any industry.”&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; - Damián Contreras, Managing Partner, Amarello &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how &lt;/span&gt;&lt;a href="https://amarello.cloud/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Amarello can help you unleash the full potential of Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Ollion&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; worked alongside Google Cloud to develop the critical migration tooling that helps customers move from Cassandra and DynamoDB to Spanner, building deep experience in the nuances and “gotchas” of switching apps over to Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;We're thrilled to partner with Google to help customers switch to the extraordinary Spanner platform. We’ve helped large-scale customers like ShareChat and Glance successfully move to Spanner from platforms like Amazon DynamoDB, Azure Cosmos DB and Apache Cassandra, with zero downtime and minimal code change. Spanner's new capabilities make it an incredibly flexible tool in any developer's arsenal, and we're excited to explore applying it to an even wider variety of complex use cases.&lt;/span&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;” &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Vishal Parpia, Head of Data &amp;amp; AI, Ollion&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how &lt;/span&gt;&lt;a href="https://ollion.com/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Ollion can help your business transform with Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Orijtech Inc&lt;/strong&gt;&lt;strong style="vertical-align: baseline;"&gt;. &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;delivers high-quality engineering and computing solutions to hard problems in gritty areas, such as frameworks with terse and rigid flows. Orijtech also designs, builds, and delivers a plethora of integrations so that you can focus on business logic with nothing standing in the way of you using Cloud Spanner's powerful features in any environment.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“Partnering on Spanner is a very fulfilling experience that enables us to directly increase the reach and market share of Spanner, allowing the ecosystem and its customers to build more transformative experiences for example our &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/topics/developers-practitioners/introducing-django-cloud-spanner-database"&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;django-spanner integration&lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt; opened new avenues for Spanner to tap into the entire Django ecosystem (the world's most popular web framework) and being avid Spanner users ourselves, our solutions help solve problems for our subsidiary customers and big customers of Google Cloud alike. We build all sorts of integrations from frameworks to proxy-level adapters to even custom tools for analysis and automation plus graph and Artificial Intelligence experiences.”&lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt; - Emmanuel Odeke, Founder and CEO, Orijtech Inc.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about &lt;/span&gt;&lt;a href="https://spanner.orijtech.com/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Orijtech’s software and solutions for Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Pythian&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; is a Google Cloud Premier Partner with nearly three decades of expertise in relational databases (Oracle, SQL Server, MySQL), including a track record of successful deployments on Spanner, helping Google Cloud customers maximize the benefits of Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“Enterprises want to take advantage of Spanner’s capabilities, but migrating databases can be a resource-intensive, complex task. Our team has deep expertise in both open source and traditional RDBMS databases, as well as Google Spanner, so we can manage these complexities and deliver low-risk, high-value migrations.” &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- &lt;span&gt;&lt;span style="vertical-align: baseline;"&gt;Vanessa Simmons, SVP of business development, Pythian&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how &lt;/span&gt;&lt;a href="https://www.pythian.com/partners/google/cloud/data-management" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Pythian can simplify your database migration to Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; at every step.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Searce&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; is proud to be one of the earliest engineering and consulting partners for Google Spanner to spearhead Spanner integration. Searce is a modern technology consulting firm that empowers clients to modernize their businesses, leveraging cloud, AI, and analytics.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“Google Spanner’s unique capabilities, such as horizontal scaling without compromising the benefits of relational databases, has allowed Searce to empower its clients, in the financial services, retail and travel, transportation, and logistics industries, to ‘futurify’ their technology solutions. Spanner has been super transformational in solving conflicting requirements of our clients around scalability, high availability and consistency. Spanner’s unique technical capabilities help us achieve our mission to continuously improve and find better ways of doing things for our clients.” &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- Vrinda Khurjekar, Head of AMER Business, Searce&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how &lt;/span&gt;&lt;a href="https://searce.com/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Searce can help you with your database modernization journey to Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Tensure's&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; unique strategy for migrating database workloads into Spanner manages complexity and risk while ensuring you get to take advantage of all that Spanner has to offer.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;"Spanner is quickly becoming the go to cloud database of choice. It's a powerful tool that minimizes complexity of managing your database estate. Also spanners new AI features push the platform to a whole new level." &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- Dan Piening, Direct of Partnerships, Tensure&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how &lt;/span&gt;&lt;a href="https://www.tensure.io/lp/google-cloud-spanner" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Tensure can help you unleash the full potential of Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Wipro's&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; technology and IT consulting services enable enterprises to build innovative solutions for addressing the most complex digital transformation needs.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;“Wipro is proud to be a partner with Google Cloud for Spanner. With the host of features available from transactional processing to graph capability and vector, Spanner will be a game changer in this space and an easy proposition to customers looking to implement a variety of business cases.” &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- Shiva Karra, Global Chief Architect, Wipro&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how &lt;/span&gt;&lt;a href="https://www.wipro.com/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Wipro can fuel your business growth with Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;&lt;strong style="vertical-align: baseline;"&gt;Zencore&lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt; has helped many companies simplify their database operations and increase scale by migrating their most critical databases to Spanner. These solutions have been tailored to specific customer industry use cases, including financial services, gaming, and advertising. Zencore provides a comprehensive Spanner migration methodology and associated tooling that drastically simplifies and accelerates the Spanner adoption journey.&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left: 40px;"&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;"Google Spanner has been a game-changing technology since it came to market. We have had the privilege to partner with Google Cloud on this product for multiple years and support many of our customers in benefitting from its unparalleled scaling abilities." &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;- Guilhem Tesseyre, CTO &amp;amp; Co-Founder, Zencore&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Learn more about how &lt;/span&gt;&lt;a href="https://zencore.dev/solutions/data-cloud/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Zencore can help you run a successful POC, and migrate to Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;hr/&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Get started with Spanner&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Modernization of your database is the critical first step to delivering a truly world class user experience. We hope we have helped you discover a partner that can help you in your transformation strategy and implementation to onboard Spanner.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In the meantime, take advantage of Spanner's &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/free-trial-instance"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;free trial instances&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and put this globally distributed, virtually unlimited scalable database to the test today! Explore Spanner’s features, experiment with different configurations, and see firsthand how Spanner can revolutionize your data management.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Thu, 31 Oct 2024 16:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/unlocking-the-power-of-spanner/</guid><category>Spanner</category><category>Partners</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Unlocking the power of Spanner: 10 partners to revolutionize your data</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/unlocking-the-power-of-spanner/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Nitin Sagar</name><title>Product Manager</title><department></department><company></company></author></item><item><title>Spanner and PostgreSQL at Prefab: Flexible, reliable, and cost-effective at any size</title><link>https://cloud.google.com/blog/products/databases/how-prefab-scales-with-spanners-postrgesql-interface/</link><description>&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;strong style="font-style: italic; vertical-align: baseline;"&gt;TL;DR: &lt;/strong&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;We use &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/postgresql-interface"&gt;&lt;span style="font-style: italic; text-decoration: underline; vertical-align: baseline;"&gt;Spanner’s PostgreSQL interface&lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt; at &lt;/span&gt;&lt;a href="https://prefab.cloud/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Prefab&lt;/span&gt;&lt;/a&gt;&lt;span style="font-style: italic; vertical-align: baseline;"&gt;, and we’ve had a good time. It’s easy to set up, easy to use, and — surprisingly — less expensive than other databases we’ve tried for workloads that need the option to scale. We’re already impressed by the performance to date, and we’re nowhere close to its limits yet.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;PostgreSQL is akin to a Swiss Army knife in the world of databases — a fabulous OLTP database, capable of fulfilling the same roles as Redis for real-time access, MongoDB for schema flexibility, and Elastic for data that doesn’t neatly fit into tables or SQL. Its transaction integrity is also impeccable, and whether you need it for analytics queries or JSON storage, PostgreSQL handles it all with grace.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;On the opposite end of the database spectrum are NoSQL databases like HBase, Cassandra, and DynamoDB. Unlike PostgreSQL’s versatility, these databases are notoriously challenging to set up, understand, and work with. At the same time, their inflexibility is offset by their ability to scale infinitely. NoSQL databases can support vast volumes of data and high read/write throughput, making them the titans of web-scale databases.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;But is there a database that can deliver versatility and incredible scale?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Our encounter with Spanner suggests that perhaps we can have our cake and eat it too.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-aside"&gt;&lt;dl&gt;
    &lt;dt&gt;aside_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;title&amp;#x27;, &amp;#x27;$300 in free credit to try Google Cloud databases&amp;#x27;), (&amp;#x27;body&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa40489f0a0&amp;gt;), (&amp;#x27;btn_text&amp;#x27;, &amp;#x27;Start building for free&amp;#x27;), (&amp;#x27;href&amp;#x27;, &amp;#x27;http://console.cloud.google.com/freetrial?redirectPath=/products?#databases&amp;#x27;), (&amp;#x27;image&amp;#x27;, None)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Why Spanner’s PostgreSQL interface?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;At &lt;/span&gt;&lt;a href="https://prefab.cloud/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Prefab&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, we help developers ship apps faster with feature flags, dynamic logging, and secrets management. We use Spanner as a datastore for our customers’ configurations, feature flags, and generated client telemetry, which lets us build critical features, such as evaluation charts, that help us operate, scale, and make our product better.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Here are some of the key capabilities that drew us to Spanner: &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;99.99% uptime by default (multi-availability zone) or up to 99.999% uptime if you run in multi-region&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Strong ACID transactions&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Horizontal scaling — even for writes&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: disc; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;PostgreSQL schemas, queries, and clients&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In other words, Spanner promises the resilience and uptime of a Google-scale, massively-replicated database with the simplicity and portability that makes PostgreSQL so appealing.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;How Prefab uses Spanner&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Prefab’s architecture is split into two parts, so it was very reasonable for us to have a different database for each side, allowing us to choose the best tool for the job. &lt;/span&gt;&lt;span style="vertical-align: baseline;"&gt;Here are the two sides of our architecture: &lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;Our core Prefab APIs that developers can use to serve their own customers via our software development kits (SDKs).&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li aria-level="1" style="list-style-type: decimal; vertical-align: baseline;"&gt;
&lt;p role="presentation"&gt;&lt;span style="vertical-align: baseline;"&gt;A web application, which our customers use to manage their configurations and monitor their apps.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Our feature flag services need to be able to scale to meet the demands of the downstream customers of the developers while also delivering extremely low latency. Java and the Java virtual machine (JVM), backed by Spanner, are the right choice for this high throughput, low latency, and high scalability domain. Our application’s user interface (UI) also needs to let us move quickly to ship features to our customers, but it has significantly lower throughput. For this part of our architecture, we use Ruby on Rails, React, and PostgreSQL.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--medium
      
      
        h-c-grid__col
        
        h-c-grid__col--4 h-c-grid__col--offset-4
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Prefab_1.max-1000x1000.jpg"
        
          alt="Prefab 1"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Spanner in action&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;One feature that uses Spanner today is the backend for the volume tracking of our dynamic logging. Our SDK sees log requests in our customer applications and sends the volume for each log level and logger to Spanner. We then use this data to help users figure out how many log statements will output to their log aggregator if they turn on logging at various levels using the Prefab UI.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/original_images/prefab_2.gif"
        
          alt="prefab 2"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;To enable this capture, we have a table of the following shape:&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-code"&gt;&lt;dl&gt;
    &lt;dt&gt;code_block&lt;/dt&gt;
    &lt;dd&gt;&amp;lt;ListValue: [StructValue([(&amp;#x27;code&amp;#x27;, &amp;#x27;CREATE TABLE logger_rollup\r\n(\r\n    id                  varchar(36)            NOT NULL,\r\n    start_at            timestamptz            NOT NULL,\r\n    end_at              timestamptz            NOT NULL,\r\n    project_id          bigint                 NOT NULL,\r\n    project_env_id      bigint                 NOT NULL,\r\n    logger_name         text                   NOT NULL,\r\n    trace_count         bigint                 NOT NULL,\r\n    debug_count         bigint                 NOT NULL,\r\n    info_count          bigint                 NOT NULL,\r\n    warn_count          bigint                 NOT NULL,\r\n    error_count         bigint                 NOT NULL,\r\n    fatal_count         bigint                 NOT NULL,\r\n    created_at          spanner.commit_timestamp,\r\n    client_id           bigint,\r\n    api_key_id          bigint,\r\n    PRIMARY KEY (project_env_id, logger_name, id)\r\n);&amp;#x27;), (&amp;#x27;language&amp;#x27;, &amp;#x27;&amp;#x27;), (&amp;#x27;caption&amp;#x27;, &amp;lt;wagtail.rich_text.RichText object at 0x7fa404c66940&amp;gt;)])]&amp;gt;&lt;/dd&gt;
&lt;/dl&gt;&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;This table scales pretty quickly and unpredictably as clients report back the telemetry for our dynamic logging. Yes, you could also do this in a time series database or some smart things with windowing and removing old data. For the purposes of this post, though, this is an easy way to demonstrate how Spanner helps manage performance for a table that has a bunch of data.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;So does it scale?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;This example table is not a perfect benchmark here, but it does give you an idea of what easy vertical scaling looks like. I ran the query &lt;/span&gt;&lt;code style="vertical-align: baseline;"&gt;select project_env_id, count(id) from logger_rollup group by 1&lt;/code&gt;&lt;span style="vertical-align: baseline;"&gt; over the table above, which had 37M rows and was around 11GB at the time.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;I did this for a varying amount of Processing Units (PUs), giving Spanner about 30 seconds or so to reflect the changes.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/Prefab_3.max-1000x1000.png"
        
          alt="Prefab 3"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;The real key here is that scaling this was extremely easy; you can change the number of PUs, from 100 to 500 or even 4000, and Spanner handles the rest — zero downtime and virtually instantaneous at this scale.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;100X more storage and no maintenance downtime for ⅓ of the cost&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;In production, we need to replicate Prefab’s database across multiple zones. Reliability is paramount for feature flags and dynamic configuration systems as they are single points of failure due to their very nature. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We take a belt and suspenders approach here, but multi-availability zone replication and Spanner’s uptime SLA ensures our “belt” is very strong. To achieve this with PostgreSQL on its own, you would need to triple the bill of a single instance. However, Spanner pricing includes replication and automatic failover out of the box. You also get a ton of storage capacity with each node — up to 10TB with Spanner’s &lt;/span&gt;&lt;a href="https://cloud.google.com/blog/products/databases/announcing-cloud-spanner-price-performance-updates"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;recent updates&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; — and you only pay for the bytes you actually use. For us, this makes the comparison look like this:&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/prefab_4.max-1000x1000.png"
        
          alt="prefab 4"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;At a small scale, the best practice of having a database instance per environment can start to be annoyingly expensive. When I first investigated Spanner a few years ago, this was a sticking point because the smallest instance size was one node, or 1,000 PUs. Since then, Spanner’s scale has evolved to scale down to less than a full node, making an easy choice an even easier decision for us. It also gives us the option to scale up whenever we need it, without downtime or expensive rearchitecture in our applications. &lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Recent improvements to Spanner and the Google Cloud ecosystem&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We initially had some bumps in the road using the &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/postgresql-interface"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;PostgreSQL interface&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; for Spanner. However, Google Cloud is constantly innovating and improving its products and services, so we’ve been super excited that most of the original things we encountered have been addressed.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Some of our favorite updates include: &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong style="vertical-align: baseline;"&gt;Query editor: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;It’s darn convenient to have a &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/tune-query-with-visualizer#a-tour-of-the-query-editor"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;query editor&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; right in the Google Cloud console, which allows us to investigate and tune any queries that exhibit poor performance.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/prefab_5.max-1000x1000.png"
        
          alt="prefab 5"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong style="vertical-align: baseline;"&gt;Key Visualizer: &lt;/strong&gt;&lt;span style="vertical-align: baseline;"&gt;If you’re looking at big volume NoSQL databases with HBase, row keys become pretty important to understand. The &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/tune-query-with-visualizer#a-tour-of-the-query-editor"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Key Visualizer&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; allows us to analyze Spanner data access patterns over time and diagnose common issues that cause hotspots. I’m excited to see that there are nice tools included to help understand key distribution.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
&lt;div class="block-image_full_width"&gt;






  
    &lt;div class="article-module h-c-page"&gt;
      &lt;div class="h-c-grid"&gt;
  

    &lt;figure class="article-image--large
      
      
        h-c-grid__col
        h-c-grid__col--6 h-c-grid__col--offset-3
        
        
      "
      &gt;

      
      
        
        &lt;img
            src="https://storage.googleapis.com/gweb-cloudblog-publish/images/prefab_6.max-1000x1000.png"
        
          alt="prefab 6"&gt;
        
        &lt;/a&gt;
      
    &lt;/figure&gt;

  
      &lt;/div&gt;
    &lt;/div&gt;
  




&lt;/div&gt;
&lt;div class="block-paragraph_advanced"&gt;&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Looking forward, we plan to explore how we can use Ruby on Rails directly on Spanner.  In particular, we believe Spanner could be an intriguing option for new projects,  especially those with tables likely to scale significantly — like audit logs or histories — Spanner could be an intriguing option.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Summary&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;We have a lot of previous experience using HBase and PostgreSQL, but we’re pretty excited about our decision to adopt Spanner as the horizontally scalable operational database of choice for Prefab. We’ve found it to be easy to use for our needs, delivering all the same scaling properties as HBase, without the headaches of doing it ourselves. Fewer points of potential failure and fewer things to manage save us time and money.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;If you have some big tables that scare you, but you haven’t looked beyond PostgreSQL, you might consider expanding your horizons. Spanner’s PostgreSQL interface gives you the portability and ease-of-use of PostgreSQL with the proven reliability and scale of Spanner and Google Cloud.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;Plus &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/true-time-external-consistency"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;atomic clocks&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;! How cool is that?&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;strong style="vertical-align: baseline;"&gt;Get Started&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style="vertical-align: baseline;"&gt;You can get started with &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner?e=48754805&amp;amp;hl=en"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Spanner&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; today for &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner/docs/free-trial-quickstart"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;free for 90 days&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; or as little as &lt;/span&gt;&lt;a href="https://cloud.google.com/spanner?e=48754805&amp;amp;hl=en#pricing"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;$65/month&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; after that. We’d also be happy to connect with you and love it if you’d explore the product we’ve built on top of Spanner by learning more about our &lt;/span&gt;&lt;a href="https://prefab.cloud/features/feature-flags/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Feature Flags&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;, &lt;/span&gt;&lt;a href="https://prefab.cloud/features/log-levels/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt;Dynamic Logging&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt; and&lt;/span&gt;&lt;a href="https://prefab.cloud/features/secret-management/" rel="noopener" target="_blank"&gt;&lt;span style="text-decoration: underline; vertical-align: baseline;"&gt; Secret Management&lt;/span&gt;&lt;/a&gt;&lt;span style="vertical-align: baseline;"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><pubDate>Wed, 23 Oct 2024 16:00:00 +0000</pubDate><guid>https://cloud.google.com/blog/products/databases/how-prefab-scales-with-spanners-postrgesql-interface/</guid><category>Spanner</category><category>Customers</category><category>Databases</category><og xmlns:og="http://ogp.me/ns#"><type>article</type><title>Spanner and PostgreSQL at Prefab: Flexible, reliable, and cost-effective at any size</title><description></description><site_name>Google</site_name><url>https://cloud.google.com/blog/products/databases/how-prefab-scales-with-spanners-postrgesql-interface/</url></og><author xmlns:author="http://www.w3.org/2005/Atom"><name>Jeff Dwyer</name><title>Founder &amp; CEO Prefab</title><department></department><company></company></author></item></channel></rss>