Index de diffusion Google

Gary Illyes, Martin Splitt et l’invitée spéciale de cette semaine Mariya Moeva – ils ont parlé du SiteKit de Google, puis de l’index de diffusion. Gary a donné un résumé du fonctionnement de l’index de diffusion de Google.En bref, Gary a déclaré qu’il avait parlé pour la dernière fois des niveaux d’indexation et du stockage de Google et qu’il souhaitait maintenant expliquer comment les résultats de l’index sont servis aux chercheurs, c’est-à-dire l’indexation de la diffusion. Gary a déclaré que « l’index de diffusion est en fait ce qui se trouve dans nos centres de données et d’où les gens obtiennent leurs résultats de recherche sur leurs écrans. » L’index de diffusion, selon lui, est « essentiellement un grand nombre de fragments d’index qui ont été poussés par Caffeine dans nos centres de données de service. .  » Gary a expliqué que « Chacun de ces centres de données obtiendrait entre 10 et 15 quelque part. Chacun de ces centres de données recevrait les fragments d’index. Chacun de ces fragments d’index contiendrait les documents que nous avons indexés. » Que contiennent ces documents ? « Ces documents ne sont pas les éléments que nous avons récupérés à partir d’une URL. Ils sont décomposés en jetons. Fondamentalement, nous les tokenisons parce que nous n’avons pas besoin de tous les éléments fournis avec le HTML », a expliqué Gary. « Par exemple, les balises de script. Pourquoi voudrions-nous indexer ces jetons, ces mots-clés ou des phrases clés à partir de pages ? Nous n’en avons tout simplement pas besoin. Certains éléments HTML dont nous avons besoin pour des raisons que je ne dirai pas. » « Alors ces fragments d’index sont répartis entre les centres de données « , a déclaré Gary. « Chaque centre de données aura un double des fragments parce que c’est ainsi que cela devrait être, de sorte que chaque centre de données peut servir relativement les mêmes documents que les résultats, si nécessaire. » Il entre dans beaucoup de détails sur leur fonctionnement, voici la vidéo intégrée où il en parle plus en détail. Cela commence à 14:29 dans la conférence: Voici la transcription:[00:14:26] Gary Illyes: Oh. D’accord, alors je parlerai. Un des derniers épisodes que nous avons eu, je parlais d’indexation, et nous parlions. Nous avons différents types de stockages que nous utilisons en fonction de la fréquence à laquelle nous pensons que les documents indexant ces niveaux seraient servis.

[00:14:45] Mais nous n’avons pas parlé de l’index de diffusion, qui est légèrement moins abstrait que ce dont nous parlions dans un épisode précédent. L’index de diffusion est en fait ce qui se trouve dans nos centres de données et d’où les gens obtiennent leurs résultats de recherche sur leurs écrans.

[00:15:05] Je pense que ce n’est pas vraiment un sujet intéressant. C’est juste que je veux le couvrir avant que nous passions réellement au service parce que j’ai le sentiment que si je ne le fais pas, les gens pourraient mal comprendre les choses, ce qui ne se produirait jamais sur Internet.

[00:15:23] L’index de service, c’est essentiellement un grand nombre de fragments d’index qui ont été poussés par Caffeine dans nos centres de données de service. Je ne me souviens pas du nombre exact de centres de données dont nous disposons pour la recherche sur le Web – la recherche en général – mais c’est plus de dix.

[00:15:43] Chacun de ces centres de données aurait entre 10 et 15 quelque part. Chacun de ces centres de données obtiendrait les fragments d’index. Chacun de ces fragments d’index contiendrait les documents que nous avons indexés.

[00:16:00] Ces documents ne sont pas les choses que nous avons récupérées à partir d’une URL. Ils sont décomposés en jetons. Fondamentalement, nous les tokenisons parce que nous n’avons pas besoin de tous les éléments fournis avec le HTML.

[00:16:16] Par exemple, les balises de script. Pourquoi voudrions-nous indexer ces jetons, ces mots clés ou des phrases clés à partir de pages ? Nous n’en avons tout simplement pas besoin. Certains éléments HTML dont nous avons besoin pour des raisons que je ne dirai pas.

[00:16:32] John Mueller: Emojis, non ? Nous en avons également besoin.

[00:16:34] Gary Illyes: Oui, nous en avons besoin. Celles-ci sont vraiment très importantes.

[00:16:38] Nous conserverons certains éléments HTML. Nous conserverons les mots réels qui apparaissent sur la page et leur position sur la page, car c’est également important, comme nous l’avons déjà dit à plusieurs reprises.

[00:16:53] Ensuite, ces fragments d’index sont répartis entre les centres de données. Chaque centre de données aura un double des fragments, car c’est ainsi que cela devrait être, de sorte que chaque centre de données peut servir relativement les mêmes documents que les résultats, si nécessaire.

[00:17:09] Bien sûr, cela ne se produit pas toujours. Parfois, certains fragments peuvent être à la traîne dans un centre de données, puis des choses intéressantes peuvent se produire. Comme, vous recherchez quelque chose, disons, des cookies, puis Martin recherche également des cookies, et ils obtiennent des résultats complètement différents.

[00:17:27] C’est parfois parce que nous interrogeons différents centres de données. Par conséquent, les fragments d’index sont différents entre les centres de données que nous interrogeons.

[00:17:37] Les fragments d’index sont – j’aime les considérer comme des fichiers de pièce RAR, comme un fichier de pièce empaqueté. Je n’arrête pas de parler de cela, mais dans les années 90, par exemple, lorsque nous installions Doom, Quake ou Age of Empires, par exemple, nous avons obtenu ces disquettes. Je me souviens que…

[00:17:58] Martin Splitt: Oui, Martin, disquette ! Whoo Hoo !

[00:18:01] Gary Illyes: Non, Martin, asseyez-vous.

[00:18:04] Par exemple, Age of Empires est venu sur des disquettes de 30 quelque chose, Doom est venu, je pense, 12 ans, puis Diablo I qui est arrivé sur 50 quelque chose. Vous deviez insérer chaque disquette dans votre lecteur de disquette, copier les fichiers que vous y trouviez, les unir, puis vous auriez le dernier exécutable que vous utiliseriez pour exécuter votre jeu.

[00:18:31] Les fragments d’index ne sont pas si différents de cela, conceptuellement. Ils font essentiellement partie de l’index, formant ensemble l’intégralité de l’index.

[00:18:44] Nous avons de nombreux fragments d’index dans de nombreux centres de données. Je ne connais pas le nombre, mais l’ordre des milliers, voire des dizaines de milliers. Cela pose un défi. Le défi est que vous devez trouver de vastes documents dans ces fragments d’index.

[00:19:01] Si vous y réfléchissez, lorsque vous recherchez quelque chose, vous obtenez les résultats en moins d’une seconde. Si vous devez rechercher toutes les partitions d’index pour chaque requête, vous n’allez pas fournir de résultats en moins d’une seconde car même les plus petites partitions d’index auront une taille de plusieurs mégaoctets. Passer en revue tous les enregistrements que vous avez dans un fragment prendra du temps.

[00:19:27] Pour aider à identifier le fragment d’index qui doit être interrogé, nous avons quelque chose appelé « index de partition », qui identifie les fragments pour certaines requêtes, qui est essentiellement une carte entre les mots-clés que nous avons rencontrés, ou un jeton que nous avons rencontré sur les pages, mappé sur le numéro ou l’identificateur de la partition d’index.

[00:19:55] Mais cela ne suffira pas à chercher à l’intérieur du fragment d’index. Pour cela, nous avons besoin d’une nouvelle carte, ce que nous appelons « la liste des publications ». Cela identifie l’ID de document qui contient un certain mot-clé, par exemple.

[00:20:14] Par exemple, si vous recherchez « biscuits à l’avoine », par exemple, la liste des publications nous indique que le mot « farine d’avoine » apparaît dans les documents 1, 2, 3, 4, 5, 6, 7 et « cookies » apparaissent dans 5, 6, 7, 8, 9, 10. Ensuite, nous enverrions l’intersection des deux jusqu’à servir.

[00:20:43] Ceci est simplifié à l’extrême. Il existe d’autres processus qui ont lieu, par exemple, la tokenisation elle-même, qui peut être un défi dans certaines langues. Mais, conceptuellement, c’est ainsi que nous construisons notre index de diffusion.[00:20:57] John Mueller: Tellement cool. C’est donc un peu comme l’index au dos d’un livre où vous voyez le numéro de page. Ensuite, sur cette page, avec la liste des messages, vous découvrez: « Oh, c’est la ligne 17 » ou quelque chose comme ça.[00:21:09] Gary Illyes: Ouais, c’est littéralement ce que c’est. Si je me souviens bien, c’est de là que vient l’idée, en fait. Discussion sur Twitter.