Articulo de referencia

Spanner (base de datos)

Stand de Cloud Spanner en la Cumbre de Google Cloud Spanner es un servicio distribuido de gestión y almacenamiento de bases de datos SQL desarrollado por Google . [ 1 ] Ofrece f...

Stand de Cloud Spanner en la Cumbre de Google Cloud

Spanner es un servicio distribuido de gestión y almacenamiento de bases de datos SQL desarrollado por Google . [ 1 ] Ofrece funcionalidades como transacciones globales, lecturas con consistencia fuerte y replicación y conmutación por error automáticas en múltiples sitios. Spanner se utiliza en Google F1 , la base de datos de su negocio publicitario Google Ads , así como en Gmail y Google Fotos. [ 2 ] [ 3 ]

Características

Spanner almacena grandes cantidades de datos estructurados mutables. Spanner permite a los usuarios realizar consultas arbitrarias mediante SQL con datos relacionales, manteniendo una fuerte consistencia y alta disponibilidad para esos datos gracias a la replicación síncrona.

Características principales de Spanner:

  • Las transacciones se pueden aplicar a través de filas, columnas, tablas y bases de datos dentro de un universo Spanner.
  • Los clientes pueden controlar la replicación y la ubicación de los datos mediante la replicación automática en múltiples sitios y la conmutación por error.
  • La replicación es síncrona y altamente consistente.
  • Las lecturas son altamente consistentes y los datos están versionados para permitir lecturas obsoletas: los clientes pueden leer versiones anteriores de los datos, sujetas a las ventanas de recolección de basura.
  • Admite una interfaz SQL nativa para la lectura y escritura de datos.
  • Soporte para el lenguaje de consulta de grafos [ 4 ]

Historia

Spanner se describió por primera vez en 2012 para los centros de datos internos de Google . [ 5 ]

La capacidad SQL de Spanner se agregó en 2017 y se documentó en un documento de SIGMOD 2017. [ 6 ] Estuvo disponible como parte de Google Cloud Platform en 2017, bajo el nombre "Cloud Spanner". [ 7 ]

Arquitectura

Spanner utiliza el algoritmo Paxos como parte de su operación para fragmentar (particionar) datos en hasta cientos de servidores. [ 1 ] Hace un uso intensivo de la sincronización de reloj asistida por hardware mediante relojes GPS y relojes atómicos para garantizar la consistencia global . [ 1 ] TrueTime es la marca comercial de la infraestructura de nube distribuida de Google, que proporciona a Spanner la capacidad de generar marcas de tiempo que aumentan monótonamente en centros de datos de todo el mundo. [ 8 ]

El sistema de gestión de bases de datos (DBMS) F1 SQL de Google está construido sobre Spanner, [ 2 ] reemplazando la variante MySQL personalizada de Google . [ 9 ]

Referencias

  1. 1 2 3 Corbett et al. 2012 .
  2. 1 2 Shute et al. 2012 .
  3. "Anuncio de actualizaciones de rendimiento y precio de Cloud Spanner" .
  4. Saqib Ali (4 de diciembre de 2024). "Google Spanner ahora admite GQL" . GQL . Consultado el 4 de marzo de 2026 .
  5. Clark, Jack (18 de septiembre de 2012). "Google revela Spanner, la tecnología de base de datos que puede abarcar todo el planeta" . ZDNet . Consultado el 4 de agosto de 2021 .
  6. Spanner: Cómo convertirse en un sistema SQL . 9 de mayo de 2017. págs. 331–343 . doi : 10.1145/3035918.3056103 . ISBN  9781450341974. S2CID 3055672 . 
  7. Srivastava, Deepti (14 de febrero de 2017). "Presentamos Cloud Spanner: un servicio de base de datos global para aplicaciones de misión crítica" . Blog de Google Cloud . Consultado el 4 de agosto de 2021 .
  8. "Cloud Spanner: TrueTime y consistencia externa" . Google Cloud . Consultado el 24 de noviembre de 2020 .
  9. Shute et al. 2012 , p. 19: 'Resumen: Hemos migrado un conjunto de aplicaciones grandes y críticas de MySQL a F1.'

Bibliografía

  • Corbett, James C; Dean, Jeffrey ; Epstein, Michael; Fikes, Andrew; Frost, Christopher; Furman, JJ; Ghemawat, Sanjay ; Gubarev, Andrey; Heiser, Christopher; Hochschild, Peter; Hsieh, Wilson; Kanthak, Sebastian; Kogan, Eugene; Li, Hongyi; Lloyd, Alexander; Melnik, Sergey; Mwaura, David; Nagle, David; Quinlan, Sean; Rao, Rajesh; Rolig, Lindsay; Saito, Yasushi; Szymaniak, Michal; Taylor, Christopher; Wang, Ruth; Woodford, Dale (2012). Spanner: Base de datos distribuida globalmente de Google (PDF) . 10.º Simposio USENIX sobre diseño e implementación de sistemas operativos (OSDI'12). Hollywood, CA. Recuperado el 18 de septiembre de 2012 .{{cite conference}}: CS1 mantenimiento: referencia duplica predeterminado ( enlace ) .
  • Date, Christopher 'Chris' J (2004), "6. Relaciones, Parte II. El modelo relacional", Introducción a los sistemas de bases de datos (8.ª  ed.), Addison Wesley, ISBN 978-0-32119784-9.
  • Shute, Jeffrey 'Jeff'; Oancea, Mircea; Ellner, Stephan; Handy, Benjamin 'Ben'; Rollins, Eric; Samwel, Bart; Vingralek, Radek; Whipkey, Chad; Chen, Xin; Jegerlehner, Beat; Littlefield, Kyle; Tong, Phoenix (2012), "F1: el sistema de gestión de bases de datos relacionales distribuidas tolerante a fallos que da soporte al negocio publicitario de Google", Investigación (presentación), SIGMOD{{citation}}: CS1 mantenimiento: falta el editor de ubicación ( enlace ) .
  • Shute, Jeffrey 'Jeff'; Oancea, Mircea; Ellner, Stephan; Handy, Benjamin 'Ben'; Rollins, Eric; Samwel, Bart; Vingralek, Radek; Whipkey, Chad; Rae, Ian; Apte, Himani; Littlefield, Kyle; Cieslewicz, John (2013), "F1: Una base de datos SQL distribuida que se escala", Investigación (presentación), Conferencia Internacional sobre Bases de Datos Muy Grandes{{citation}}: CS1 mantenimiento: falta el editor de ubicación ( enlace ) .

Lecturas adicionales

  • Clark, Jack (30 de agosto de 2013). "Google regresa al futuro con la base de datos SQL F1" . www.theregister.com .