O equipamento do Google

Em 1998, o equipamento do Google era relativamente modesto. Os co-fundadores Larry Page e Sergey Brin utilizaram equipamento de Stanford e máquinas doadas para rodar as tarefas do sistema de busca do Google. O equipamento incluí:

  • dois servidores Dual Pentium II de 300 megahertz (MHz) com 512 megabytes (MB) de memória;
  • um computador F50 IBM RS6000 com quatro processadores e 512 MB de memória;
  • um computador Sun Ultra II com dois processadores e 256 MB de memória;
  • vários discos rígidos (alguns deles eram armazenados em uma caixa coberta com blocos LEGO) variando entre quatro e nove gigabytes (GB), totalizando mais de 350 GB de espaço de armazenamento [fonte: Google Stanford Hardware (em inglês)].

Hoje o Google usa milhares de servidores para oferecer serviços a seus usuários. A estratégia do Google é usar máquinas relativamente baratas rodando em um sistema operacional personalizado baseado no Linux. Um programa chamado Google File System gerencia os dados nos servidores do Google [fonte: Google Cluster Architecture (em inglês)].

Você foi servido

Quantos servidores tem o Google? A companhia mantém segredo sobre o assunto, mas estimativas variam de 200 mil a mais de 450 mil máquinas.

O Google utiliza servidores para diferentes tarefas. Os servidores Web do Google recebem e processam as consultas dos usuários, enviando o pedido para o próximo servidor apropriado. Os servidores de índice armazenam as listas do Google e os resultados das buscas. O Google utiliza servidores de documentos para armazenar resumos, informações de usuários, gmail e arquivos do Google Docs. Servidores de anúncios armazenam os
anúncios exibidos pelo Google nas páginas de buscas.

O Google divide as informações de cada servidor de índice em blocos de 64 MB. Existem três cópias de cada bloco de dados e cada cópia é armazenada em um servidor diferente rodando em uma faixa de energia separada. Os blocos de dados são distribuídos semi-randômicamente para que não existam dois servidores com exatamente as mesmas combinações de blocos de dados. Dessa forma, caso ocorra algum problema com um dos servidores, as informações ainda estarão disponíveis em outras máquinas. A utilização de várias cópias dos dados para evitar uma interrupção no serviço é chamada de redundância.

Um computador principal gerencia cada grupo de servidores. A função do computador principal é manter o controle de quais servidores armazenam determinados blocos de dados no caso de uma catástrofe. Se um dos servidores falha, o computador principal redireciona todo o tráfego para os outros servidores contendo a mesma informação.

Google e a largura de banda

Alguns webmasters acreditam que os spiders do Google utilizam muita banda por mês. Quando um spider segue o link para uma página da Web, ele utiliza largura de banda. A maioria dos serviços de hospedagem cobra os webmasters pelo consumo de banda. Se o webmaster sentir que os spiders do Google são uma desvantagem, ele pode criar um arquivo robot.txt no diretório raíz da página que dirá aos spiders que ignorem o site.

Na próxima seção veremos mais sobre a cultura corporativa do Google.