Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> Computer Programmeringsspråk >> Content
    Hvordan bygge en Inverted Index Med MapReduce
    MapReduce er en parallell programmering modell utviklet i Google for store datasett . Den behandler data i porsjoner i stedet for i sekvensiell rekkefølge . Ved å gjøre det , det er avhengig av et kart over sammenkoblede inngangsfunksjoner ( keys ) og verdier som det da setter gjennom Reduser funksjon - dermed sitt navn - for å gjøre dataene lettere å forstå. I stedet for å gi kartfunksjon med en nøkkel og verdi , en invertert indeks par ord og dokumenter for å søke tekst . Du kan bruke inverterte indekser i MapReduce å opprette en indeks for et søkeord , for eksempel. Instruksjoner
    en

    Skriv inn følgende kode for kartfunksjon : en

    public static class InvertedIndexerMapper strekker MapReduceBaseimplements Mapper {private final statisk tekst ordet = new tekst (); private endelige statisk tekst location = ny tekst ( ) ;

    public void kart ( LongWritable nøkkel , Tekst val , OutputCollector utgang , Reporter reporter ) kaster IOException { FileSplit FileSplit = ( FileSplit ) reporter.getInputSplit (); String filnavn = fileSplit.getPath ( ) getName (); location.set (filnavn ) ;

    String line - val.toString (); . StringTokenizer itr = new StringTokenizer ( line. toLowerCase ( )); while ( itr.hasMoreTokens ( ) ) { word.set ( itr.nextToken ( )); output.collect (word , plassering) ;} } }
    2

    Skriv inn følgende koden for å redusere funksjon : en

    public static class InvertedIndexerReducer strekker MapReduceBaseimplements Redusering { public void redusere ( Tekst nøkkel, iterator verdier , OutputCollector utgang, reporter reporter ) kaster IOException { boolean første = true; StringBuilder toReturn = new StringBuilder ( ) , mens ( values.hasNext ( ) ) {if (første ) toReturn.append ( " , "); ! første = false; toReturn . append ( . values.next ( ) toString ( ) ) ;} output.collect (key , ny tekst ( toReturn.toString ( ) ) ); } }
    3

    Skriv inn følgende kode å fullføre inverterte indeksen :

    public static void main ( String [] args ) throws IOException { if ( args.length < 2 ) { System.outprintln ( "Bruk: InvertedIndex < ; utgang banen > "); 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 , ny bane ( args [ 0 ] )); FileOutputFormat.setOutputPath ( conf , ny bane ( args [ 1 ] )); try { JobClient.runJob ( conf ) ;} catch ( Exception e ) { e.pringStackTrace (); } }

    früher :

     Weiter:
      Relatert Artike
    ·Slik konfigurerer RADIUS-autentisering 
    ·Hvordan lage en liste i GridView 
    ·Hvordan å korrigere feil i programmer 
    ·Hvordan skjøte en kodelinje 
    ·Hvordan lage et blogginnlegg Tittel Into en H1 Tag for …
    ·Hvordan lage PHP /API og koble Med Dreamweaver 
    ·Sette inn variabler inn i en struktur for ColdFusion 
    ·PLS-programmering Instruksjoner 
    ·Hvordan bruke Sjekksum Logg inn 
    ·Hva er syntaks og String i datakode 
      Anbefalte artikler
    ·Hvordan få verdier i en nedtrekksliste i Javascript på…
    ·Tips og triks for Frontpage 2003 
    ·Hvordan lage hjemmeside Excel-filer i Asp.Net 
    ·Hvordan du skriver en Overstrike 
    ·Slik formaterer desimaler i Visual Basic 
    ·Hvordan lage en Binary File Fra C # 
    ·Hvordan endre navn på filer med en VBS 
    ·Slik Kombiner en listevisning Med en Trevisning 
    ·Hvordan beregne Modulus 
    ·Hvordan legge til en ny metode i NetBeans 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/