Quelles technologies de base de données les grands moteurs de recherche utilisent-ils? [fermé]

32

Est-ce que quelqu'un sait comment Google ou Yahoo effectuent des recherches de mots-clés contre de très grandes quantités de données? Quel type de base de données ou de technologies utilisent-ils pour cela?

Cela prend quelques millisecondes, mais ils ont plus d'un milliard de pages indexées.

rkosegi
la source
Il y a une question similaire sur Stack Overflow: stackoverflow.com/questions/362956/…
splattne

Réponses:

21

Je suis sûr qu'il y a une combinaison de choses:

  • matériel sérieux
  • beaucoup - les données sont distribuées et répliquées sur de nombreux nœuds et différents centres de données

    • (en fait, dans le cas de Google, au moins, je pense qu'ils ont des milliers et des milliers de serveurs vraiment bas de gamme)
  • beaucoup de résultats de requêtes courantes sont mis en cache, remarquez comment ils pré-remplissent les recherches potentielles de choses que vous savez n'avoir jamais recherchées auparavant; ils prédisent ce que vous pourriez rechercher et espèrent avoir déjà votre résultat précalculé et mis en cache quelque part. Dans de nombreux cas, ce n'est pas le cas - il n'y a pas beaucoup de recherches que vous pourriez faire sur Google aujourd'hui et qui n'ont pas été demandées par quelqu'un avant vous. Lorsqu'ils obtiennent une nouvelle phrase de recherche, ils utilisent probablement quelque chose comme une recherche en texte libre - et je m'attendrais à ce que les mots-clés soient extraits sémantiquement lorsqu'une page est explorée pour la première fois plutôt que d'essayer de trouver des mots-clés dans le document après les avoir recherchés. . Bien sûr, ils doivent invalider périodiquement ces caches, recalculant le classement de la page,
Aaron Bertrand
la source
34

Pigeons .

Le cœur de la technologie de recherche de Google est PigeonRank ™ , un système de classement des pages Web développé par les fondateurs de Google, Larry Page et Sergey Brin de l'Université de Stanford:

entrez la description de l'image ici

S'appuyant sur les travaux novateurs de BF Skinner, Page et Brin ont estimé que les grappes de pigeons (PC) peu coûteuses pourraient être utilisées pour calculer la valeur relative des pages Web plus rapidement que les éditeurs humains ou les algorithmes basés sur une machine. Et bien que des dizaines d’ingénieurs travaillent à améliorer chaque jour notre service, PigeonRank continue de fournir la base de tous nos outils de recherche Web.

Pourquoi le système breveté PigeonRank ™ de Google fonctionne-t-il si bien?

Le succès de PigeonRank repose principalement sur l' entraînement supérieur du pigeon domestique (Columba livia) et sur sa capacité unique à reconnaître des objets quelle que soit leur orientation spatiale. Le pigeon gris commun peut facilement distinguer les éléments affichant uniquement les différences les plus infimes, ce qui lui permet de sélectionner des sites Web pertinents parmi des milliers de pages similaires.

En rassemblant des groupes de pigeons en grappes denses, Google est en mesure de traiter les requêtes de recherche à une vitesse supérieure à celle des moteurs de recherche traditionnels, qui reposent généralement sur des oiseaux de proie, des poules couveuses ou des oiseaux aquatiques lents pour faire leur classement par pertinence.

Lorsqu'une requête de recherche est soumise à Google, elle est acheminée vers une coopérative de données où les moniteurs clignotent à une vitesse fulgurante . Lorsque l'un des pigeons de la grappe observe un résultat pertinent , il frappe une barre d'acier recouverte de caoutchouc avec son bec, ce qui attribue à la page une valeur PigeonRank de un. Le PigeonRank augmente à chaque fois . Les pages recevant le plus de picotements sont renvoyées en haut de la page de résultats de l'utilisateur, les autres résultats étant affichés par ordre de piquetage.

ypercubeᵀᴹ
la source
6
Note: Cette page a été publiée pour le jour du
poisson
19

Il est important de garder à l'esprit quelques points à propos de Google:

  • Leur DB est le propriétaire BigTable - il a été conçu sur GOOGLE pour répondre exactement à leurs besoins

  • Leur base de données propriétaire est construite sur le système de fichiers propriétaire, le système de fichiers Google, qui a été conçu, une fois encore , par GOOGLE , de manière à pouvoir être facilement étendu à l’aide de matériel standard. Comme Aaron l'a mentionné dans sa réponse, ils ont un grand nombre de serveurs moyens au lieu d'un petit nombre de serveurs très puissants.

Ils stockent des tables individuelles sur plusieurs machines afin de rendre l'accès plus rapide: leur logiciel sait quelles données se trouvent sur quelle machine. Au lieu de parcourir un disque pour le localiser, il peut accéder directement au serveur avec les informations appropriées.

JNK
la source
11

Google n'utilise pas la technologie de base de données relationnelle traditionnelle. Il a développé sa propre technologie, grande table et carte réduite. Les documents de recherche originaux se trouvent ici: Big Table et Map / Reduce . La table SSTable, triée, est également intéressante .

Une technologie similaire est maintenant utilisée dans les bases de données hadoop et NoSQL .

NimChimpsky
la source
9

Lisez Steven Levy " Dans le plex: comment Google pense, travaille et façonne nos vies ". Ce livre est une lecture fascinante sur tout ce qui concerne Google. Il traite en détail de la technologie et de l’ingénierie qui sous-tendent la recherche. Aaron résume très bien sa réponse et le livre de Levy vous donnera plus de détails sur la façon dont ils le font.

Todd Everett
la source