O Google Cloud Spanner é um serviço de banco de dados relacional distribuído que é executado no Google Cloud . Ele é projetado para suportar implementações globais de processamento de transações on-line , semântica SQL, dimensionamento horizontal altamente disponível e consistência transacional.
O interesse no Google Cloud Spanner centra-se na capacidade da base de dados em nuvem para fornecer disponibilidade e consistência. Esses traços são geralmente considerados em desacordo um com o outro, com os designers de dados normalmente fazendo concessões para enfatizar a disponibilidade ou a consistência. O trade-off foi descrito de forma mais vívida no teorema CAP , que sustentou uma mudança geral para bancos de dados NoSQL para disponibilidade e escalabilidade em sistemas web e de nuvem. Ao buscar a disponibilidade do sistema e a consistência dos dados, o Google Cloud Spanner combina os recursos SQL e NoSQL.
Raízes do Google Cloud Spanner
O Google Cloud Spanner apareceu pela primeira vez como um armazenamento NoSQL de valor-chave, mas, com o tempo, passou a incluir também um esquema fortemente tipado e um processador de consultas SQL. O trabalho no core do processador NoSQL e na interface SQL foi parcialmente informado pelos esforços do NoSQL e SQL realizados pelos engenheiros do Google como parte do sistema F1 interno da empresa para gerenciar os dados do Google AdWords. O Google Cloud Spanner tornou-se geralmente disponível para os clientes do Google Cloud em maio de 2017.
O Google Cloud Spanner suporta consultas SQL distribuídas, assim como a consulta é reiniciada em resposta a falhas. Ele emprega um dialeto de SQL que o Google padronizou internamente. O Google Cloud Spanner usa o TrueTime, um serviço de sincronização de relógio do Google Cloud que usa uma combinação de relógios atômicos e tecnologia GPS .
Outros bancos de dados em nuvem
Como um banco de dados relacional gerenciado em nuvem, o Google Cloud Spanner é uma alternativa aos bancos de dados relacionais em nuvem, incluindo Azure SQL, Amazon Aurora , IBM DB2 hospedado e Oracle Database Cloud Service, bem como bancos de dados de aplicativos de nuvem e de código-fonte aberto, como MySQL e PostgreSQL. . Como o Google Cloud Spanner combina os recursos NoSQL e SQL, ele também pode ser classificado como um banco de dados NewSQL . Ele se compara competitivamente com CrateDB, NuoDB , o gerenciamento de banco de dados em memóriasistema MemSQL, CockroachDB e outros. O suporte do Google Cloud Spanner para as abordagens NoSQL e SQL também o coloca na categoria de banco de dados multimodel, um tipo emergente que inclui bancos de dados como o Microsoft Azure Cosmos DB e o MarkLogic.
Preços do Google Cloud Spanner
O preço do Google Cloud Spanner é baseado em três componentes de infraestrutura: nós, armazenamento e rede.
O preço do Cloud Spanner para nós (ou processamento) é definido de hora em hora, com base no número máximo de nós usados em qualquer hora em um projeto. O preço do armazenamento do Cloud Spanner é definido por mês, com base na quantidade média de dados nas tabelas do Cloud Spanner e nos índices secundários durante esse mês. O preço do Google Cloud Spanner para a largura de banda da rede é definido por mês, com base na quantia usada durante esse mês.