Bienvenue sur DokuPedia, wiki universitaire consacré à la documentation. Vous êtes invités a créer un compte et à contribuer, en ajoutant un nouvel article ou en modifiant celui-ci.
Vous pouvez également utiliser le moteur ou l'améliorer
Google Custom Search

Clustering

Un article de DokuPedia.


Le CLUSTERING est la limitation du nombre de pages issues du même site dans les pages de résultats d'un Moteur de recherche. Il est un principe utilisé par certains moteurs de recherche et consiste à limiter le nombre de résultats issus d'un même site, afin d' éviter qu'un même site occupe la ou les premières pages de résultats. La technologie du clustering ou "mise en grappe" est une technologie assez récente (1994) qui vise à faire travailler en équipe des ordinateurs reliés entre eux via un réseau, éventuellement de haute performance. Cette technologie permet de grandement réduire les coûts d’accès à la puissance de calcul informatique : désormais, il est inutile d’acheter de très coûteux super-ordinateurs réalisés sur mesure ou presque, il suffit d’assembler ensemble des ordinateurs de type PC et de déployer les logiciels nécessaires.


Sommaire

Description de Clustering

Fonctionnalité d'un moteur de recherche qui n'affiche, dans ses résultats, qu'une seule page par site.


Première signification avec l'exemple de Google

Première signification avec l'exemple de Google Le moteur va, pour un site donné, fournir deux pages maximum dans ses résultats, même si plus de documents répondent à la requête. Image:recherche.png
La première page est présentée de façon "normale", la seconde est affichée en dessous, décalée vers la droite. Tous les moteurs majeurs pratiquent le clustering de cette façon, pour éviter qu'un même site truste toutes les places sur une page de résultats. Google limite à deux résultats par site. On trouve ensuite un lien permettant de trouver plus de pages du site en question. Il faut dire que Google limite à 2 résultats par sous-domaine et non par site. En effet, Google n'affiche jamais plus de 2 sites persos hébergés chez Wanadoo puisque les URL des sites sont du type http://perso.wanadoo.fr/login/. Inversement, il n'y a pas de limite pour les pages hébergées chez Free, qui sont du type http://login.free.fr.

Deuxième signification

Le fait de "ranger" en dossiers thématiques les résultats de recherche d'un moteur. Les résultats identifiés par le moteur sont ensuite "rangés" dans des thématiques. Cliquer sur une des catégories fait apparaître uniquement les résultats de cette thématique. Les technologies les plus connues dans ce domaine sont celles de Vivismo et d'Exalead en France. MSN met un point dans ce domaine également.

Pourquoi le Clustering?

La technologie de clustering permet une haute disponibilité des ressources publiées. On l'utilise pour avoir une disponibilité et une stabilité des ressources proche de 100 %.


Formation d'un réseau

Le clustering est une technique permettant de mettre en parallèle plusieurs systèmes d'exploitation. Un ensemble de machines en réseau destiné à un fonctionnement en parallèle (gérant des ressources stockées sur des disques partagés) constitue un cluster. Dans ce cluster, chaque machine sera un Noeud ("node" en anglais). Tous les noeuds sont des stations de travail dans le sens où elles possèdent un ou plusieurs processeurs en opposition aux terminaux. Le réseau ainsi formé est un NOW (Network Of Workstation - réseau de stations de travail).


Gagner du temps et de l'espace

Le clustering permet de diviser les temps d'exécution d'un programme entre plusieurs machines réparties sur un réseau. Le principe utilisé consiste à diminuer le temps d'exécution d'une tâche en la fractionnant sur plusieurs machines. Une tâche répartie sur N machines arrivera N fois plus vite à terme que sur une seule.


les différentes techniques du Clustering

Image:clustering.jpg


Shared Nothing Model Chaque noeud gère son propre disque et est le seul habilité à écrire et lire sur les ressources du disque qui lui est attribué. Chaque noeud se voit attribuer ses propres ressources matérielles à gérer.


Shared Everything Model

Permet aux 2 noeuds de faire des entrées/sorties et lecture/écriture sur tous les disques partagés. Il y a un partage des ressources matérielles.


Shared Nothing Model

Chaque noeud gère son propre disque et est le seul habilité à écrire et lire sur les ressources du disque qui lui est attribué. Chaque noeud se voit attribuer ses propres ressources matérielles à gérer.


Mirrored Servers

Chaque noeud gère son propre disque et est le seul habilité à écrire et lire sur les ressources du disque qui lui est attribué. Chaque noeud se voit attribuer ses propres ressources matérielles à gérer.

Vocabulaire

Partitionnement

Le partitionnement de données (data clustering en anglais) est une méthode statistique d'analyse de données qui regroupe un ensemble de données en différents paquets homogènes, de fait les données de chaque sous-ensemble partagent des caractéristiques communes, et correspondent à des critères de proximité qui sont définis lorsqu'on introduit des mesures de distance. Pour cela il faut minimiser l'inertie intra-classe pour obtenir des grappes (cluster en anglais) les plus homogènes possibles; et maximiser l'inertie inter-classe afin d'obtenir des sous-ensembles bien différenciés.


Grappe de serveur

Grappe de serveurs ou de ferme de calcul (cluster en anglais) désigne des techniques consistant à regrouper plusieurs ordinateurs indépendants (appelés nœuds, node en anglais) afin de permettre une gestion globale et de dépasser les limitations d'un ordinateur pour : augmenter la disponibilité faciliter la montée en charge permettre une répartition de la charge faciliter la gestion des ressources (CPU, mémoire, disques, bande passante réseau)


Clusters Microsoft

Depuis la version NT4 de son système d'exploitation Windows, Microsoft propose de mettre en place un cluster constitué de serveurs Microsoft pour répondre aux besoins croissants des entreprises en terme de messagerie électronique, de base de données et depuis quelques années de serveurs WEB ou FTP. Le clustering à répartition de charge. Microsoft garantit une répartition de charge réseau sur des flux IP à travers un cluster constitué de 32 nodes au maximum. Typiquement, il s'agit de répartir les charges réseaux d'un serveur WEB, d'un serveur de média,...


Clustering à répartition de charge

Réaliser des clusters d'application et de rendu de service. Microsoft propose un cluster de Haute Disponibilité, à tolérance aux fautes. Il permet de fournir une garantie et une qualité de service aux utilisateurs d'applications comme Microsft SQL Server™. A travers ses solutions, Microsoft vise les entreprises désireuses d'améliorer leur production, en proposant des systèmes permettant d'améliorer et d'accélérer le travail quotidien des employés, mais aussi permettant de réaliser du commerce (comme le e-business) avec un plus grand nombre de clients. Toutefois, il existe encore quelques freins dans l'utilisation de tels systèmes. En effet, les clusters Microsoft ne fonctionnent que sur de l'architecture Microsoft. De plus, les systèmes d'exploitations proposés subissent trop souvent des correctifs pour en faire des systèmes fiables et stables.


Clustering de service

Réaliser des clusters d'application et de rendu de service. Microsoft propose un cluster de Haute Disponibilité, à tolérance aux fautes. Il permet de fournir une garantie et une qualité de service aux utilisateurs d'applications comme Microsft SQL Server™. A travers ses solutions, Microsoft vise les entreprises désireuses d'améliorer leur production, en proposant des systèmes permettant d'améliorer et d'accélérer le travail quotidien des employés, mais aussi permettant de réaliser du commerce (comme le e-business) avec un plus grand nombre de clients. Toutefois, il existe encore quelques freins dans l'utilisation de tels systèmes. En effet, les clusters Microsoft ne fonctionnent que sur de l'architecture Microsoft. De plus, les systèmes d'exploitations proposés subissent trop souvent des correctifs pour en faire des systèmes fiables et stables.


L'alternative: Clusters Linux

Il suffit de posséder des PC, une distribution Linux et quelques logiciels qui aident à réaliser la parallélisation entre les nodes du système. Il est important de savoir que de nombreuses personnes ont déjà effectué des recherches et mises en oeuvres des clusters en développant des applications Open Source et donc disponibles sur le réseau en version gratuite. En fait, le caractère quasi gratuit de ce type de clustering réside dans le fait que le système n'est pas livré clé en main et nécessite donc un investissement humain important pour le mettre en place. En outre, la mise en oeuvre de ce type de solution n'est pas aisée et demande de bonnes compétences en informatique et réseaux, et de bonnes connaissances du monde Linux, mais surtout un travail de patience et de passionné. Enfin, il faut trouver le meilleur support et le meilleur emplacement qui mettront en valeur le système réalisé. Pour l'administrateur, il s'agira de trouver le meilleur matériel et de placer son système là où il est le plus attendu.


Points forts et points faibles

  • Points forts:
    • Haute disponibilité
    • Sécurité
    • Redondance
    • Rapidité
  • Points faible:
    • Coût important
    • Nécessite de solides connaissances informatiques
    • Technique gourmande en bande passante et en temps.

Evaluation

De fait, le clustering est une solution d'alternative pour les personnes et/ou les entreprises qui n'ont pas les moyens de posséder un super-calculateur. Car, le coût d'une architecture en clusters reste toutefois très inférieur à celui des supers-ordinateurs. Dans un cluster, l'administrateur étend la puissance de son système sans trop de difficultés dans le cas où cette mise à jour ne nécessite qu'à rajouter un node dans l'architecture et à le déclarer auprès des autres acteurs du cluster (surtout le node server, le "chef d'orchestre" du cluster). Néammoins, les systèmes en clustering les plus puissants et les plus performants restent des solutions basées sur du matériel et des Unix propriétaires, et apparaissent comme des solutions très chères et dès lors réservées au grandes structures.


Liens

Quelques définitions

AllTheWeb
Alltheweb est un moteur de recherche.
Bruit
Résultats fournis par un outil de recherche et ne répondant pas à la demande initiale de l'internaute (ensemble de résultats non pertinents).
Froogle
Moteur de recherche de comparaison de prix de Google.
Google News
Service de la société Google permettant de rechercher des informations dans l'actualité en temps réel.
Googler
verbe intransitif. Néologisme décrié par la société Google elle-même pour des questions de propriété intellectuelle.
Acte de rechercher une information sur une personne (ou simplemet effectuer une recherche) sur le moteur de recherche Google.
Matt Cutts
Ingénieur chez Google depuis 2000, il a élaboré le filtre parental et travaille maintenant sur la qualité des résultats du moteur de recherche.
Moteur de recherche
De façon complémentaire aux annuaires qui travaillent à recenser les sites, les moteurs de recherche effectuent, quant à eux, un travail approfondi pour répertorier les pages à l'intérieur de ces sites.
Outil de recherche
Annuaire, moteur de recherche ou portail qui affiche notamment les résultats ("liens promotionnels") fournis par le prestataire dans ses pages, lors de la requête d'un internaute. Exemples : Google, Yahoo!, Earthlink, Club-Internet, Altavista, Free, etc.
Outil mixte
La tendance sur le Web actuel est de mixer annuaire et moteur pour devenir des "outils de recherche mixtes" qui proposent de dégrossir une recherche dans un premier temps sur l'annuaire pour proposer des sources d'information, puis, dans un second temps, d'effectuer une investigation sur un moteur de recherche, en texte intégral, de façon plus fine. Exemple : L'annuaire Yahoo!, quand il n'a pas trouvé de réponse dans ses propres bases de données, passait la main, il y a encore quelques mois de cela, à un moteur (Google). Une tendance forte à l'heure actuelle consiste à ne plus obligatoirement proposer les résultats "annuaire" PUIS, de façon séquentielle, ceux du moteur, mais de mixer les deux au sein de la liste-réponse (cas de Google, Yahoo!, Voila, etc.).
Positionnement naturel
Le positionnement naturel caractérise le positionnement d'un lien dans les pages de résultats des outils de recherche, sans avoir eu recours au préalable à une offre financière de positionnement.
Seekbot
Robot d'indexation du moteur de recherche européen Seekport
Spamdexing
Tentative de spam spécifiquement orientée vers les moteurs de recherche. Exemple : tenter de positionner dans les premières positions des résultats d'un moteur des pages non pertinentes par rapport au mot clé choisi.
To google
Effectuer une recherche sur le Web à l'aide d'un moteur de recherche, en particulier de Google.
WOSE
Moteur de recherche d'objets, indexation non pas des pages mais des objets, basé sur une technologie d'extraction d'attributs. La version actuelle d'essai est spécialisée dans les annonces de l'immobilier.
Yahoo! Slurp
Slurp est le nom du robot d'indexation du moteur de recherche Yahoo (initialement Inktomi).
DokuPedia sémantique