Como o Google funciona | Ram Rajagopal | Digestivo Cultural

busca | avançada
69348 visitas/dia
2,5 milhões/mês
Mais Recentes
>>> IA 'revive' Carlos Drummond de Andrade em campanha do Rio Memórias
>>> mulheres.gráfica.política
>>> Eudóxia de Barros
>>> 100 anos de Orlando Silveira
>>> Panorama Do Choro
* clique para encaminhar
Mais Recentes
>>> Mario Vargas Llosa (1936-2025)
>>> A vida, a morte e a burocracia
>>> O nome da Roza
>>> Dinamite Pura, vinil de Bernardo Pellegrini
>>> Do lumpemproletariado ao jet set almofadinha...
>>> A Espada da Justiça, de Kleiton Ferreira
>>> Left Lovers, de Pedro Castilho: poesia-melancolia
>>> Por que não perguntei antes ao CatPt?
>>> Marcelo Mirisola e o açougue virtual do Tinder
>>> A pulsão Oblómov
Colunistas
Últimos Posts
>>> Pondé mostra sua biblioteca
>>> Daniel Ades sobre o fim de uma era (2025)
>>> Vargas Llosa mostra sua biblioteca
>>> El País homenageia Vargas Llosa
>>> William Waack sobre Vargas Llosa
>>> O Agent Development Kit (ADK) do Google
>>> 'Não poderia ser mais estúpido' (Galloway, Scott)
>>> Scott Galloway sobre as tarifas (2025)
>>> All-In sobre as tarifas
>>> Paul Krugman on tariffs (2025)
Últimos Posts
>>> O Drama
>>> Encontro em Ipanema (e outras histórias)
>>> Jurado número 2, quando a incerteza é a lei
>>> Nosferatu, a sombra que não esconde mais
>>> Teatro: Jacó Timbau no Redemunho da Terra
>>> Teatro: O Pequeno Senhor do Tempo, em Campinas
>>> PoloAC lança campanha da Visibilidade Trans
>>> O Poeta do Cordel: comédia chega a Campinas
>>> Estágios da Solidão estreia em Campinas
>>> Transforme histórias em experiências lucrativas
Blogueiros
Mais Recentes
>>> A aquisição do Whatsapp, pelo Facebook, por 19 bilhões de dólares
>>> Qual é, afinal, a melhor idade?
>>> Caí na besteira de ler Nietzsche
>>> BBB, Zé Ramalho, Pitty, Iron Maiden e Nietzsche
>>> Great power, great responsibility
>>> A mulher madura
>>> As influências imorais
>>> Duas escritoras contemporâneas
>>> Dinamite Pura, vinil de Bernardo Pellegrini
>>> BarCamp, Florianópolis - II
Mais Recentes
>>> Bem do seu tamanho (2ª edição - 27ª impressão - edição especial) de Ana Maria Machado pela Salamandra (2003)
>>> Filó e o arco-íris de Monse Fransoy pela Sm
>>> "Não fui eu!" aprendendo sobre honestidade - coleção valores de Brian Moses; Mike Gordon pela Scipione (2002)
>>> A vida intima de Laura de Clarice Lispector pela Nova Fronteira (1983)
>>> Por Enquanto Eu Sou Pequeno (3º Edição especial - com projeto de leitura) de Pedro Bandeira; Attilio pela Moderna (2009)
>>> O Pequeno Dragão (2º edição especial - com projeto de leitura) de Pedro Bandeira, Carlos Edgard Herrero pela Moderna (2009)
>>> Temperos Do Brasil / Spices Of Brazil de Claudia Fonseca pela Editora Brasileira (2015)
>>> A sombra do Batman 20 - os novos 52! (lacrado no plastico) de DC Comics pela Panini Comics (2014)
>>> Vida de Jesus Para Crianças de Jane Carruth pela Paulinas (2016)
>>> A Corujinha Preguiçosa de Patricia Silva pela Paulinas (1984)
>>> Adoro de Sig Bergamin pela Arx (2003)
>>> Origami Para Crianças de Ciranda Cultural pela Ciranda Cultural (2021)
>>> O Forte de Copacabana Livro 1 Visitando o Forte de Irles Carvalho pela Maco (2005)
>>> O Forte de Copacabana Livro 1 Visitando o Forte de Irles Carvalho pela Maco (2005)
>>> Dorme Menino Dorme de Laura Herrera pela Livros da Matriz (2015)
>>> Dorme Menino Dorme de Laura Herrera pela Livros da Matriz (2015)
>>> Livro de Receitas do Menino Maluquinho de Ziraldo pela Melhoramentos (2007)
>>> Surpresa de Páscoa de Telma Guimarães pela Atual (2010)
>>> Uma Escola Assim Eu Quero Pra Mim de Elias José pela Ftd (2007)
>>> Uma Família Parecida Com a da Gente de Rosa Amanda Strausz pela Ática (2006)
>>> Piadinhas Infames de Ana Maria Machado pela Salamandra (2015)
>>> Piadinhas Infames de Ana Maria Machado pela Salamandra (2015)
>>> Eulálio o Espantalho de Wagner Costa pela Moderna (2014)
>>> O Anel da Tartaruga de César Obeid pela Ftd (2014)
>>> Anita Bocadura de Mariângela Bueno pela Callis (2010)
COLUNAS >>> Especial Google

Terça-feira, 14/3/2006
Como o Google funciona
Ram Rajagopal
+ de 25800 Acessos
+ 1 Comentário(s)

Muitos amigos meus, leigos em ciência da computação, me pediram uma explicação sucinta e sem jargões de como o Google funciona. Qual a receita mágica que determina as páginas que o Google deve responder quando você faz a sua busca? Em primeiro lugar, vale esclarecer que o Google não é dono de nenhum grande mistério tecnológico. Mas, certamente, desenvolveram uma tecnologia interessante, e que vamos entender um pouco melhor a seguir.

O Google é basicamente um banco de dados inteligente. Se você já usou o fichário da biblioteca do seu colégio, então sabe já como um banco de dados funciona. Os dados são agrupados em tabelas (as gavetas do fichário), e ordenados de acordo com palavras-chave, como autor ou título. A vantagem do banco de dados sobre o fichário é que o ordenamento pode ser por um número imensamente maior de características. Já imaginou se sua biblioteca tivesse que ter trinta tipos de fichários, um para ordernar por autor, outra por título de livros, outra por ano de publicação, outra por editora, e assim por diante.

Pois bem, o que o Google faz é acumular cada página da Web num banco de dados. O endereço da página, o nome, e as palavras mais frequentes e suas respectivas frequências são todas incluídas na ficha daquela página (cada página é como um livro a ser catalogado). O mais importante, todas as outras páginas para as quais a página linca também são guardadas. Quando você digita a sua busca na caixinha do Google, o software traz todas as fichas cujo conteúdo casam com sua busca.

Para fazer isto de forma eficiente, um dicionário global é criado (o famoso dicionário reverso ou índice reverso), onde cada palavra que existe na Web aparece uma vez. E na ficha de cada palavra são colocados códigos que se relacionam com as páginas que contém aquela palavra. Uma maneira de entender isso é que cada palavra tem uma lista com os endereços das páginas que a contêm. Quando você digita uma palavra e clica em buscar, tudo que precisa ser feito é imprimir na tela as listas de endereços de todas as palavras que você pediu.

Mas então onde está o segredo do Google? Até aí não há nada demais. Na verdade o que foi citado já é feito há anos por bancos de dados não estruturados. O segredo do Google, e na verdade de qualquer buscador, está em duas coisas: como ele faz para encontrar todas páginas da Grande Rede e como ele decide a ordem em que vai listar os resultados. Os nomes técnicos para estas duas atividades são crawling e scoring. Um bom buscador é bastante abrangente, e ao mesmo tempo lista as respostas na ordem que o maior número de pessoas espera. E responde à busca rápido.

Por exemplo, se você procurar por "Ronaldo" no Google Brasil, você espera que os primeiros linques que apareçam sejam sobre o Ronaldinho Gaúcho ou sobre Ronaldo Fenômeno. Não que a primeira página seja a de Ronaldo, seu vizinho, e a resposta de posição 1,233,233 seja a primeira com Ronaldo, o jogador de futebol. Ao mesmo tempo, se você coloca "World Champion 2002", quer que algo relacionado ao assunto apareça e provavelmente ficará decepcionado se não aparecer. E além disso tudo, sua paciência não aguenta esperar duas horas para uma busca ser respondida.

Todo buscador, do Google ao MSN Search, passando pelo Yahoo, pelo Ask Jeeves e até o Cadê, procura atender a esses três requisitos. Mas como falei do Google, vamos entender melhor como ele funciona. O crawling do Google, assim como o da maioria dos buscadores é feito através de programas de computador que vão seguindo todos os linques de uma página, e acumulando as informações das páginas visitadas, a partir de uma página inicial. Uma boa página inicial é a de um índice como o Yahoo (www.yahoo.com) . A coisa toda é feita de forma organizada, de maneira que ao final do processo, um componente desconectado da Web inteira foi explorada. Outra página inicial deve ser fornecida para explorar outros componentes desconectados. Por exemplo, é pouco usual um índice em inglês levar a descobrir páginas em alfabetos não ocidentais. Portanto o crawler, programa que faz o engatinhamento, tem que ser reinciado com uma página em japônes.

Para cada página visitada, o Google cria uma ficha de biblioteca. As palavras da página que estão no dicionário global tem suas frequências contadas, o endereço da página é anotado na ficha, e o endereço de todas as páginas para as quais a página linca são anotados. Finalmente, o próprio dicionário global é emendado caso alguma palavra nova seja encontrada.

Ao fim do processo de crawling - que há uns dez anos atrás demorava cerca de uma semana para visitar a Web inteira, e hoje demora bem mais que um mês - o Google tem um gigantesco banco de dados com informações concisas da página. Uma enxugada no dicionário global é feita, para remover palavras frequentes demais, como por exemplo preposições, e para remover palavras infreqüentes demais, como um erro de tipografia exdrúxulo. Por isso, se seu nome for muito incomum (muito mesmo), você não será indexado pelo Google. Se seu nome for muito incomum, mas você cometer um ato que te põe nas capas de vários jornais, a frequência do seu nome aumenta, e o Google vai te indexar.

O próximo passo é então como o scoring do Google é feito. Uma maneira natural de ordenar as páginas, quando uma busca é feita, é simplesmente pela frequência com que a palavra buscada aparece na página. Por exemplo, se você busca por "mágica", uma página que contenha a palavra mil vezes, é provavelmente mais importante do que uma que contem a palavra somente dez vezes. Infelizmente, um esquema simplista como este pode ser facilmente burlado, com indivíduos criando páginas que tenham milhões de vezes a palavra "mágica", mesmo sem ser relacionado ao assunto ou para vender um livro específico de mágica.

Cada buscador tem então a sua receita mágica para contrabalançar este tipo de problema. O Google usa uma idéia de pontos por autoridade (relevance scoring). Talvez tenha sido a grande sacada da dupla Brin & Page ao projetar seu buscador. A pontuação do Google soma aos pontos tradicionais (como frequência da palavra, importância da palavra num contexto dado por alguma fórmula simples pré-programada, etc.), uma pontuação dada por reputação.

Como medir reputação? A idéia é simples: se páginas com muita reputação apontam para você, então você tem muita reputação. É uma propriedade hereditária. Matematicamente isto é feito usando teoria dos grafos, a mesma que você usa para colorir mapas-múndi com o mínimo de cores possíveis. Mas como medir a reputação de uma página na Web, se você não sabe a reputação de ninguém a priori?

Um jeito simples, solução de engenheiro, é montar um usuário aleatório (um random browser ou monkey browser). A maneira como este usuário funciona é a seguinte: ele começa de uma página inicial e escolhe aleatoriamente um linque a ser clicado. Ele segue para a página clicada e repete o processo. O processo é feito indefinidamente. Após muito longo tempo (provavelmente após centenas de bilhões de cliques) você pode calcular a reputação de cada página com uma fórmula simples: conte o número de vezes que a página foi visitada pelo monkey browser. Para normalizar a pontuação, o melhor é calcular a fração do total de páginas visitadas que cada página aparece. Só para deixar a coisa mais simples, suponha que a Web tem só 3 páginas, A, B e C. Suponha que o monkey browser viajou por cem páginas usando o método aleatório e visitou A trinta vezes. Então a reputação de A é simplesmente 30/100 (ou seja, 0.3 de 1.0).

Uma interpretação bacana do seu score de relevância normalizado desta forma é que ele é simplesmente a chance de um monkey browser ir parar na sua página. Se a probabilidade é alta, então sua página é importante. Tudo isto já era conhecido em teoria dos grafos, e o que os dois jovens de Stanford fizeram com a ajuda de seus professores foi incorporar isto a busca na Web.

Para concluir, um último detalhe: se o Google realmente precisasse lançar macacos aleatórios para calcular a pontuação, provavelmente iriam levar anos para se concluir o cálculo, afinal precisariam fazer bilhões de visitas para se ter um número confiável (a Web tem bilhões de páginas). Felizmente, existe uma maneira eficiente de calcular estas probabilidades sem fazer visita alguma. Você só precisa saber a estrutura de linques do conjunto de páginas (que página liga com quem). O algoritmo é bastante antigo, tem mais de 100 anos. E uma das suas aplicações anteriores foi resolver problemas como calcular as frequências de vibração na corda do seu violão ou a chance de se ganhar em pôquer.

O que destacou o Google das outras máquinas de busca existentes foi a idéia de fazer um crawling mais completo que todo mundo, numa época em que ninguém se dispunha a fazer isso, e a receita da reputação entrando como parte da pontuação da página. Portanto agora você já sabe os principais segredos do Google, e pode seguir para descobrir truques para aparecer no topo da lista.


Ram Rajagopal
Berkeley, 14/3/2006

Quem leu este, também leu esse(s):
01. Gerald Thomas: cidadão do mundo (parte final) de Jardel Dias Cavalcanti
02. Almoços com C.S. Lewis de Celso A. Uequed Pitol
03. Retrato do Leitor enquanto Anotação de Duanne Ribeiro
04. Indignação, de Philip Roth de Rafael Rodrigues
05. Por que eu moro em São Paulo de Eduardo Carvalho


Mais Ram Rajagopal
Mais Acessadas de Ram Rajagopal em 2006
01. Sobre responsabilidade pessoal - 1/5/2006
02. Como o Google funciona - 14/3/2006
03. Como começar uma carreira em qualquer coisa - 24/4/2006
04. Reflexão para eleitores - 4/9/2006
05. Música é coração, computadores, não? - 28/2/2006


Mais Especial Google
* esta seção é livre, não refletindo necessariamente a opinião do site

ENVIAR POR E-MAIL
E-mail:
Observações:
COMENTÁRIO(S) DOS LEITORES
16/3/2006
09h04min
Adorei seu texto, me lembrei de uma tarde inteira que você pacientemente passou me explicando como a Google funciona. Não é porque é meu irmão não, mas o texto está uma maravilha!!! Saudades, Beijos, Lakshmi
[Leia outros Comentários de Lakshmi ]
COMENTE ESTE TEXTO
Nome:
E-mail:
Blog/Twitter:
* o Digestivo Cultural se reserva o direito de ignorar Comentários que se utilizem de linguagem chula, difamatória ou ilegal;

** mensagens com tamanho superior a 1000 toques, sem identificação ou postadas por e-mails inválidos serão igualmente descartadas;

*** tampouco serão admitidos os 10 tipos de Comentador de Forum.




Digestivo Cultural
Histórico
Quem faz

Conteúdo
Quer publicar no site?
Quer sugerir uma pauta?

Comercial
Quer anunciar no site?
Quer vender pelo site?

Newsletter | Disparo
* Twitter e Facebook
LIVROS




Querido John
Nicholas Sparks
Arqueiro
(2017)



Gata Em Teto de Zinco Quente
Elizabeth Taylor/ Paul Newman
Folha de S. Paulo



Crer Ou Não Crer
Pe. Fábio de Melo e Leandro Karnal
Planeta
(2017)



Princesas de Maquiavel
Juliana Fratini, Org
Matrix
(2022)



Enciclopédia Pratica da Mágica e do Ilusionismo/vol. 1 de 2
Nicholas Einhor
Escala
(2010)



A função do currículo no contexto escolar
Michelle Fernandes Claudia Maria P. Luciana Ribeiro
Intersaberes
(2012)



Texto Básico de Neuroanatomia
Malcolm B. Carpenter
El Ateneo do Brasil
(1978)



Tomie Ohtake
Lígia Rego
Moderna
(2002)



Manchu
Robert S. Elegant
Círculo do livro
(1986)



Entrelaçar de Historias
Valderez Marina do Rosario Lima
Appris
(2016)





busca | avançada
69348 visitas/dia
2,5 milhões/mês