Por que a nova chave inglesa do Google pode ser o banco de dados do seu futuro

Por que a nova chave inglesa do Google pode ser o banco de dados do seu futuro
Author

Bernard Golden

Last updated June 16, 2017


  • 2040 Views

O Google tem uma má reputação no mundo da computação em nuvem. Por muito tempo, seu compromisso com o mercado parecia incerto, embora isso tenha mudado dramaticamente desde a chegada de Diane Greene.

Mas mesmo quando as pessoas questionaram o compromisso do Google com a computação em nuvem, todos reconheceram que a empresa é uma potência tecnológica.

A criação de serviços, como a Pesquisa, o AdWords, o YouTube e afins, exige recursos técnicos de nível internacional. Como são acessados ​​por meio de um navegador, é fácil ignorar a quantidade de software inteligente pendurado na parte de trás da conexão entre um usuário do Google e um serviço. Mas confie em mim; há funcionalidades inacreditáveis ​​dentro dos data centers do Google.

A empresa acaba de anunciar uma oferta na nuvem que reflete a herança de inovação em computação do Google: o Spanner . A Spanner indica que o Google é muito mais do que um imitador de última hora - na verdade, a Spanner só pode levar o Google à frente da concorrência no armazenamento.

O que é a chave inglesa? Em poucas palavras, é um banco de dados SQL globalmente consistente. Parece simples, certo? Não se engane, no entanto. Spanner é uma oferta incrível que esconde uma tonelada de tecnologia por trás de uma interface SQL padrão.

Por que a Spanner é tão importante? Para entender isso, vamos analisar os maiores desafios que as organizações enfrentam na criação de aplicativos amplamente distribuídos.

O principal desafio desses tipos de aplicativos sempre manteve os dados consistentes em grandes áreas geográficas. Sempre que alguém quiser acessar um determinado dado, sua precisão é questionada. Alguém o atualizou na Argentina, mas essa mudança não chegou à Alemanha onde alguém está acessando?

Na prática, isso torna muito difícil construir sistemas distribuídos globalmente, especialmente sistemas nos quais a integridade dos dados é crítica, por exemplo, sistemas de transação. Mas a Spanner tem o potencial de permitir que os usuários resolvam uma classe de problemas para os quais anteriormente não havia solução satisfatória.

O Google faz isso usando o GPS e mantendo os relógios atômicos em cada um de seus datacenters, conforme descrito neste artigo da Wired . (Se você quiser saber mais sobre Spanner, aqui está um link para o white paper do Google descrevendo seu funcionamento interno; esteja prevenido, não é para os fracos de coração). Os registros de data e hora da chave de boca atualizam e usam esses registros de data e hora para avaliar se os dados de uma determinada localização estão atualizados quando são acessados.

Por trás da cena, o processo de atualização de dados se baseia em um procedimento de duas fases:

  1. Quando um elemento de dados é atualizado em algum lugar, o Spanner envia uma notificação da atualização para todos os locais onde esses dados estão armazenados, marcando-os como atualizados e exibindo o registro de data e hora do Spanner e o local dos dados atualizados. Se uma solicitação for recebida para os dados de um local diferente daquele em que reside a versão atualizada, o Spanner não a veiculará a partir desse local, mas a recuperará do local em que reside a versão atualizada mais recente.

  2. Os dados alterados reais, em seguida, fluem pela rede Spanner, atualizando cada local à medida que é recebido (o que varia de acordo com a distância do local de dados alterados original). Quando um determinado local recebe e atualiza a cópia local dos dados, ele é marcado como atualizado e qualquer solicitação subsequente dos dados é servida a partir desse local.

A magnitude dessa realização não pode ser exagerada. Em um dos meus trabalhos que executei como parte da engenharia de um fornecedor de banco de dados, gastamos uma quantidade infinita de tempo de desenvolvedor para lidar com dados consistência. Nós nunca realmente resolvemos isso para sistemas distribuídos que residiam em diferentes data centers.

Então, além de Spanner ser uma conquista técnica louvável do Google, o que isso torna possível para os usuários?

Aqui estão três casos de uso que são candidatos ideais para o Spanner:

1. Sites de comércio eletrônico global. O comércio eletrônico é a própria definição de sistemas transacionais - fazer pedidos de mercadorias, receber pagamentos e atualizar o estoque. Muitos sites de comércio eletrônico têm grandes pegadas nacionais ou internacionais. Tornar os bancos de dados transacionais globalmente consistentes é um grande benefício, pois garante a integridade dos dados - sem mencionar a redução da necessidade de engenharia de software inteligente para solucionar problemas de consistência de dados.

2. Sites dinâmicos baseados em dados com usuários dispersos regionalmente. Sites dinâmicos constroem páginas dinamicamente com base na identidade do usuário, histórico anterior, cliques da sessão atual e muito mais. Eles são altamente dependentes de dados e os dados que eles usam para construir uma página são altamente erráticos. Isso pode incluir notícias de última hora para uma página e, em seguida, um minuto depois, pode servir uma página substituindo os locais do restaurante de sushi ao mesmo usuário, dependendo do conteúdo com o qual o usuário está interagindo. Ser capaz de desenhar dados de um sistema, não importa onde o usuário reside, seria extremamente útil para esses sites.

3. Recuperação de desastres (DR). O DR é importante, mas extremamente difícil de implementar, particularmente se você seguir as melhores práticas de usar locais remotos geográficos de DR para proteger contra desastres regionais. Na prática, muitas organizações de TI fazem backups e rezam para que nunca precisem usá-las. A chave inglesa oferece um caminho real para o DR. Em vez de recuperar um aplicativo, reconstruindo-o com dados recuperados de uma fita de backup, basta replicar os dados em um banco de dados do Spanner para um local remoto. Se o site principal ficar disponível, crie novos recursos de computação em um novo local e os tenha conectar-se ao sistema de banco de dados Spanner secundário. Isso simplifica o DR e o coloca ao alcance de muitos outros grupos de TI.

Spanner é uma oferta verdadeiramente notável e representa bem as impressionantes capacidades técnicas do Google. Se o Google continuar a lançar essas ofertas inovadoras, sairá da categoria de nuvem também para a posição de concorrente.

About the Author

Bernard Golden is the CEO of Navica & serves as advisor for CIO magazine. As the author of 4 books on virtualization and cloud computing, Bernard is a highly-regarded speaker and has keynoted cloud conferences around the world. Bernard is also among the ten most influential persons in cloud computing according to Wired.com

Recommended articles for you

The Importance of Machine Learning for Data Scientists

Article

Expert Talk: Data Science vs. Data Analytics vs. Machine Lea...

Article

Airbnb offers World Class service – Thanks to Big data and...

Article