Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

Google muestra a F1

Google ha mostrado detalles de su base de datos híbrida, bautizada como F1, que busca reemplazar a MySQL en las funciones del esquema de AdWords....

google-f1

Google ha mostrado detalles de su base de datos híbrida, bautizada como F1, que busca reemplazar a MySQL en las funciones del esquema de AdWords. Este último es un sistema masivo que involucra cientos de aplicaciones, miles de usuarios, todos usando una base de datos compartida de más de 1000 Terabytes de tamaño. En su presentación en la conferencia Very Large Database Conference (VLDB), Google dijo que lo usuarios generan cientos de miles de peticiones por segundo, y que la base de datos corre peticiones SQL que se escanean diez trillones de filas de datos por día.

Una base de datos híbrida, como F1, combina la alta disponiblidad, la escalabilidad de NoSQL como BigTable y la consistencia y facilidad de uso de las bases de datos tradicionales SQL. F1 está construida sobre Spanner, la base de datos de Google más grande del planeta. Spanner se diseñó para ser escalable sobre millones de servidores alrededor de todo el mundo, aunque todos la ven como una sola entidad. El almacenamiento de Spanner y el sistema de cómputo llega a todos los centros de datos de Google. F1 se desarrolló al mismo tiempo y en cercana colaboración con Spanner. Esta última maneja los niveles bajos de almacenamiento como persistencia, replicación, tolerancia a errores, etcétera.

El uso de Spanner da a F1 replicación cruzada sincronizada con los centros de datos, así como una fuerte consistencia. En el artículo técnico que presentaron sobre F1 en la conferencia VLDB, el equipo de Google dice que la replicación síncrona implica un alto compromiso con la latencia, pero que éste puede parcialmente corregirse usando un modelo jerárquico con datos estructurados. F1 incluye un motor de peticiones SQL, además de todo lo anteriormente dicho.

F1 es tolerante a errores, globalmente distribuida y soporta OLTP y OLAP. Fue diseñada para reemplazar MySQL que no puede mantenerse con las necesidades de Google en escalabilidad y confiabilidad. El artículo indica que MySQL es difícil de escalar y aún más difícil de rebalancear. Los usuarios necesitan peticiones y consultas complejas. F1 busca ser escalable trivialmente y transparente con sólo añadir recursos. En términos de disponibilidad del sistema, éste nunca debe bloquearse o apagarse por ninguna razón. El sistema guarda los datos nucleares de los negocios de Google, por lo que el detener esta base de datos tiene siempre un impacto en las utilidades.

La consistencia es la tercera meta: F1 tiene que soportar transacciones ACID y debe siempre presentar las aplicaciones con consistencia y con la información correcta, desde luego: “Disenar aplicaciones que lidien con las anomalías de la concurrencia en los datos es muy susceptible a los errores, se lleva mucho tiempo y en última instancia no se percibe ningún beneficio en el desempeño”, de acuerdo con Google.

La meta final es la facilidad de uso. F1 tiene que dar soporte a las peticiones SQL: “Características como índices y consultas ad hoc no solamente es lindo tenerlas, sino que son absolutamente requerimientos para nuestro negocio”, indican los investigadores. “F1 muestra que es posible tener una base de datos distribuida, altamente escalable que pueda dar todas las garantías y las conveniencias de las bases de datos relacionales tradicionales”, concluyen los Googleros.

Referencias:

F1: A Distributed SQL Database That Scales

Comentarios