| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
    Comment construire un index inversé avec MapReduce
    MapReduce est un modèle de programmation parallèle développé dans Google pour les ensembles de données volumineux. Il traite les données en morceaux plutôt que dans l'ordre. Pour ce faire , il s'appuie sur une cartographie des fonctions d'entrée appariés ( touches) et les valeurs qu'il met ensuite à travers la fonction reduce - donc , son nom - pour rendre les données pour comprendre . Au lieu de fournir la fonction de carte avec une clé et une valeur , un index inversé paires mots et les documents de texte de recherche. Vous pouvez utiliser des index inversés dans MapReduce pour créer un index pour une recherche par mot clé , par exemple. Instructions
    1

    Tapez le code suivant pour la fonction de carte :

    publique InvertedIndexerMapper de classe statique s'étend MapReduceBaseimplements Mapper { mot du texte statique finale privée = new text () ; emplacement du texte statique finale privée = new Text ();

    plan public void (touche LongWritable , texte val, OutputCollector , journaliste de Reporter ) throws IOException { FileSplit FileSplit = ( FileSplit ) reporter.getInputSplit (); string filename = fileSplit.getPath () getName (); location.set ( fileName ) ;
    ligne Chaîne de

    - val.toString (); . ITR StringTokenizer = new StringTokenizer ( ligne. toLowerCase ()); while ( itr.hasMoreTokens ()) { word.set ( itr.nextToken ()); output.collect (word, emplacement ) ;}}}
    2

    Tapez la commande suivante code de la fonction réduire :

    publique InvertedIndexerReducer de classe statique s'étend MapReduceBaseimplements Réducteur { public void réduire ( clé du texte , les valeurs Iterator , OutputCollector , journaliste de Reporter ) throws IOException { booléen première = true; StringBuilder toReturn = new StringBuilder (); while ( values.hasNext () ) {if ( premier ) toReturn.append ( ",") ; ! première = false; toReturn . append ( . values.next () toString () );} output.collect (clé, un nouveau texte ( toReturn.toString ()) );}}
    3

    Tapez le code suivant pour compléter l' index inversé : Photos

    public static void main ( string [] args ) throws IOException {if ( args.length < 2) { System.outprintln ( "Usage: InvertedIndex < ; chemin de sortie > "); System.exit (1 );} JobConf conf = new JobConf ( InvertedIndex.class ) ; conf.setJobName ( " InvertedIndex ");

    conf.setOutputKeyClass ( Text.class ) ; conf.setOutputValueClass ( Text.class ) ;

    conf.setMapperClass ( InvertedIndexerMapper.class ) ; conf.setReducerClass ( InvertedIndexerReducer.class ) ;

    FileInputFormat.setInputPaths ( conf, nouveau chemin ( args [0] ) ) ; FileOutputFormat.setOutputPath ( conf, nouveau chemin (args [1] ) ) ; try { JobClient.runJob ( conf) ; } catch (Exception e) { e.pringStackTrace ();} }

    Previous :

    next :
      articles connexes
    ·Plan de projet pour le développement de logiciels 
    ·Les utilisations des logarithmes dans Informatique 
    ·Comment créer un Rollover image à l'aide HTML Program…
    ·Comment ajouter un nouveau nœud à un cluster SQL 
    ·Comment utiliser un dbLink pour Oracle Verrouillage Ser…
    ·Comment faire des bannières d'horreur gratuites 
    ·Comment appliquer une texture sur texte dans XNA 
    ·Comment faire pour utiliser une souris dans QBasic 
    ·Comment faire pour utiliser un service Web dans un flux…
    ·Comment modifier une page HTML après qu'il a été sau…
      articles en vedette
    ·Comment faire pour utiliser des algorithmes de chiffrem…
    ·La différence de Python et Django 
    ·Comment créer un dictionnaire Python 
    ·Comment créer un tableau Word dans MIPS 
    ·Comment changer le mot de passe administrateur local da…
    ·Comment réparer l' erreur de syntaxe 1087 avec le mouv…
    ·Comment insérer des zones de texte avec le code VBA da…
    ·Comment apprendre le langage SQL et PL /SQL 
    ·Comment définir la taille d'un formulaire en VB 
    ·Comment savoir si MySQL est de 32 - ou 64-bit 
    Copyright © Connaissances Informatiques http://fr.wingwit.com