15
Metode de paralelizare/distribuire a modulului de indexare Discut ¸ii Bibliografie Reg˘ asirea Informat ¸iilor pe WEB Curs 04: Indexare (3) ¸ s.l. dr. ing. Alexandru ARCHIP [email protected] Facultatea de Automatic˘ si Calculatoare, Ia¸ si an universitar: 2014 – 2015 RIWeb 2014 – 2015/C04: Indexare 3 1/ 15

Curs nr. 04 - Indexare (3).pdf

Embed Size (px)

Citation preview

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Regasirea Informatiilor pe WEBCurs 04: Indexare (3)

    s.l. dr. ing. Alexandru [email protected]

    Facultatea de Automatica si Calculatoare, Iasi

    an universitar: 2014 2015

    RIWeb 2014 2015/C04: Indexare 3 1/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Cuprins

    1 Metode de paralelizare/distribuire a modulului de indexareConcepte generaleModelul MapReduceMapReduce n paralelizarea indexer-ului

    2 Discutii

    RIWeb 2014 2015/C04: Indexare 3 2/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Concepte generale

    Fundamente

    Scop

    Sa faciliteze construirea unui index pentru colectii foarte mari de documente.

    Sa faciliteze cautarea rapida a documentelor sau a indecsilor, fapt ce implican sine minimizarea comunicatiilor.

    Abordari uzuale

    Partitionarea dupa termenii pe baza carora se construieste indexarea indexare globala.

    Partitionarea dupa documentele ce construiesc obiectul indexului indexarelocala

    RIWeb 2014 2015/C04: Indexare 3 3/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Concepte generale

    Fundamente (2)

    Partitionarea dupa termeni [1]

    Principiul de baza este de a partitiona vocabularul de baza ntre nodurile delucru.

    Astfel, un nod de lucru va contine n final indexul invers asociat fiecaruitermen din subsetul local.

    Mecanismul de partitionare trebuie atent corelat cu vocabularul de lucru si cuincidenta termenilor n cadrul colectiei de documente.

    Avantajul acestei metode este ca ofera suport mai bun pentru cautariconcurente.

    Dezavantajele metodei deriva din complexitatea functiei de partitionare sidin faptul ca induce dificultati considerabile n ceea ce priveste mentenantabazei de indecsi.

    RIWeb 2014 2015/C04: Indexare 3 4/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Concepte generale

    Fundamente (3)

    Partitionarea dupa documente [1]

    Acest model presupune ca, n final, fiecare nod de lucru va indexa un subsetdin setul initial de documente.

    Partitionarea documentelor pentru indexare se poate face tinand cont dedomeniul de care apartin documentele respective.

    ce se ntelege prin domeniul de care apartine un document??

    Avantajul imediat al acestei abordari este acela ca sunt reduse considerabilcomunicatiile ntre nodurile responsabile de indexare.

    Dezavantajul metodei este acela ca statisticile globale sunt obtinute prinmecanisme ce favorizeaza cresterea comunicatiilor ntre noduri.

    RIWeb 2014 2015/C04: Indexare 3 5/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Modelul MapReduce

    Modelul MapReduce

    Concepte generale [2]

    MapReduce reprezinta un model de dezvoltare de aplicatii distribuitedestinat procesarii volumelor de date de mari dimensiuni.

    Problemele adresate de acest model au solutii ce se exprima, n general,n perechi de forma cheie/valoare.

    API-urile existente, asociate acestui model, urmaresc sa ascunda detaliilelegate de paralelizari complexe, toleranta la defecte, echilibrarea ncarcarii,etc., si sa permita exprimarea task-urilor computationale n termeni deselectie de date si calcul de rezultat.

    Arhitectura subsidiara este una de tip coordonator(i)/workeri.

    RIWeb 2014 2015/C04: Indexare 3 6/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Modelul MapReduce

    Modelul MapReduce (2)

    Concepte generale etape [3]

    etapa de mapare

    nodul cu rol de coordonator mparte problema ,,originala n subprobleme si le distribuie catre workeri pentru procesare;

    trebuie retinut faptul ca aceasta divizare a problemei de lucru (adatelor de procesat) se realizeaza ntr-o maniera similaradivide-et-impera n unele cazuri nodurile worker pot divide larandul lor sub-problema primita si pot trimite aceste subdiviziunicatre alti worker -i; rezulta n acest caz o arhitectura arborescenta;

    divizarea caracteristica acestei etape nu trebuie sa coreleze efectivdimensiunea datelor de intrare cu numarul de worker-i din sistem;un worker poate primi mai multe sub-probleme de rezolvat.

    RIWeb 2014 2015/C04: Indexare 3 7/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Modelul MapReduce

    Modelul MapReduce (3)

    Concepte generale etape (2) [3]

    etapa de reducere

    nodul cu rol de coordonator (sau un set de noduri cu rol de woker,,desemnat de coordonator) colecteaza solutiile sub-problemelor sile combina pentru a obtine rezultatul final al procesarii dorite;

    nici n acest caz nu exista o corelare efectiva a dimensiunii datelorde lucru cu numarul de worker-i din sistem; un worker poate primimai multe sub-probleme de rezolvat (similar fazei de mapare).

    RIWeb 2014 2015/C04: Indexare 3 8/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Modelul MapReduce

    Modelul MapReduce (4)

    Concepte generale etape (3)

    Figura 1: Modelul MapReduce (preluare din [2])

    RIWeb 2014 2015/C04: Indexare 3 9/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Modelul MapReduce

    Modelul MapReduce (5)

    Concepte generale etape (4)

    Michael Kleber (Google Inc.) rafineaza n [4] etapele implicate de paradigmaMapReduce dupa cum urmeaza:

    1 pre-procesare datele sunt pregatite pentru functia de mapare;

    2 mapare stabilirea datelor de interes;

    3 amestecare si sortare datele pot fi organizate astfel ncat sa fie optimizataetapa de reducere;

    4 reducere determinarea rezultatului;

    5 stocare rezultat.

    RIWeb 2014 2015/C04: Indexare 3 10/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Modelul MapReduce

    Modelul MapReduce (6)

    Exemple de probleme solutionabile prin MapReduce [2]

    determinarea numarului de aparitii ale cuvintelor n text

    mapare:

    reducere:

    determinarea referintelor catre o anumita pagina tinta

    mapare:

    reducere:

    indexarea inversa

    mapare:

    reducere:

    RIWeb 2014 2015/C04: Indexare 3 11/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    MapReduce n paralelizarea indexer-ului

    Paralelizarea/distribuirea modulului de indexare utilizandMapReduce

    Exemplu de aplicare: partitionarea dupa termeni

    Figura 2: MapReduce: modelul de distribuire dupa termeni (preluare din [1])

    RIWeb 2014 2015/C04: Indexare 3 12/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    MapReduce n paralelizarea indexer-ului

    Paralelizarea/distribuirea modulului de indexare utilizandMapReduce (2)

    Exemplu de aplicare: partitionarea dupa termeni detalii [1]

    mapare componenta cheie: parser-ul caracteristic algoritmilor BSBI sauSPIMI;

    rezultatele intermediare sunt scrise n fisiere intermediare numitefisiere segment;

    reducere componenta cheie: inverter-ul (exemplu: metoda similaraBSBI-Invert);

    fiecare modul de tip inverter va primi, la un anumit moment detimp, un singur fisier segment.

    RIWeb 2014 2015/C04: Indexare 3 13/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Discutii

    Probleme

    1 Incercati sa detaliati un posibil pseudo-cod pentru modelul MpaReduce.

    2 Cum se poate paraleliza/distribui utilizand MapReduce un modul ceconstruieste un index direct pozitional?

    RIWeb 2014 2015/C04: Indexare 3 14/ 15

  • Metode de paralelizare/distribuire a modulului de indexare Discutii Bibliografie

    Bibliografie

    1 Christopher D. Manning, Prabhakar Raghavan and Hinrich Schutze,Introduction to Information Retrieval, Cambridge University Press. 2008

    2 Jeffrey Dean, Sanjay Ghemawat, MapReduce: Simplified Data Processing onLarge Clusters, Google Inc.

    3 Wikipedia: MapReduce, noiembrie 2013

    4 Michael Kleber, The MapReduce Paradigm, ianuarie 2008

    RIWeb 2014 2015/C04: Indexare 3 15/ 15

    Metode de paralelizare/distribuire a modulului de indexareConcepte generaleModelul MapReduceMapReduce n paralelizarea indexer-ului

    Discutii