Abrir a página inicial do Google,
digitar um termo e aguardar pelos resultados da busca é uma das tarefas
mais simples que você pode fazer na internet. O serviço da gigante de
Mountain View conquistou boa parte de sua fama aliando simplicidade no
uso com um eficiente algoritmo, capaz de encontrar até mesmo as opções
mais remotas de sites na web.
Contudo, o que você não percebe é que por trás desse processo simples
existe uma grande necessidade de recursos sendo consumidos. No exato
momento em que você faz as suas buscas, milhões de outras pessoas em
todo o planeta também estão fazendo o mesmo. Então, como é que não
acontece uma pane no sistema e o site permanece no ar, apesar do tráfego
de dados cada vez maior a que é submetido?
(Fonte da imagem: Ars Technica)
Aguentando tudo
O sistema de armazenamento de backups do motor de busca precisa ser
capaz de atender a milhões de requisições simultaneamente. Além disso, o
tamanho do espaço precisa crescer continuamente para acomodar as novas
páginas da web. No total, esses processos consomem mais de 20 petabytes
por dia.
A mesma situação vale para outros gigantes da rede mundial, como o Facebook
e a Amazon. Apesar das arquiteturas tradicionais mais eficientes
existentes, ainda há o risco de que um número expressivo de internautas
acessando um determinado serviço ao mesmo tempo gere um gargalo no
desempenho do fluxo de dados.
Milhões de acessos simulatâneos. (Fonte da imagem: Reprodução/Google)
Para conseguir dar vazão a uma quantidade de dados em constante crescimento, empresas como Google, Microsoft
e Facebook adotaram um tipo diferente de solução de armazenamento:
trata-se de um sistema de arquivos distribuídos tendo como parâmetro um
objeto-base de armazenamento.
Em outras palavras, a arquitetura de nuvens das grandes empresas
separa os metadados (dados referentes a um conteúdo específico) a partir
do conteúdo em si. Ou seja, ao acessar uma foto, por exemplo, você tem
acesso primeiro às informações sobre a imagem (dados) para somente
depois reunir os dados e acessar a imagem propriamente dita. Essa
técnica reduz consideravelmente os volumes de leitura e escrita de
conteúdo.
Google File System
A Google foi a primeira das grandes empresas a enfrentar o problema
do crescimento da informação em larga escala. Em 2003, os engenheiros da
empresa criaram o Google File System (GFS), centro estratégico de
armazenamento de dados da companhia e base para quase todos os serviços
da empresa.
(Fonte da imagem: Reprodução/Google)
A empresa tende a armazenar os dados para as suas aplicações em
arquivos enormes que funcionam como uma espécie de “poupa-tempo”.
Centenas de máquinas coletam esses dados e aplicativos específicos
analisam e combinam as informações, muitas vezes quando os dados ainda
estão sendo gerados.
Detalhes técnicos de como funciona o GFS são guardados a sete chaves
pela empresa. Para a Google, é muito mais importante ter velocidade no
acesso às informações do que qualquer outra coisa. Além disso, é
importante que o sistema possa trabalhar com uma margem capaz de suprir
eventuais falhas.
Contudo, alguns detalhes adicionais já são de conhecimento do
público. A GFS é composta por três camadas: um cliente GFS que lida com
solicitações de dados de aplicativos, um servidor-mestre, que usa um
índice de memória para rastrear os nomes dos arquivos, e os servidores
em si. Cada servidor-mestre é capaz de lidar com 100 milhões de
arquivos.
Nenhum comentário