Computing n-Gram Statistics in MapReduce Klaus Berberich, Srikanta Bedathur EDBT/ICDT 2013 Joint Conference.

Slides:



Advertisements
Hasonló előadás
A Szállítási feladat megoldása
Advertisements

ROMBUSZ TÉGLALAP NÉGYZET.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
Programozási tételek, és „négyzetes” rendezések
Programozási feladatok az érettségin
Microsoft Access V. Készítette: Rummel Szabolcs Elérhetőség:
Szárnyas Gábor október 11.
PhD beszámoló 2002/2003 II. félév Készítette: Iváncsy Renáta Konzulens: Dr. Vajk István.
INFOÉRA Dinamikus programozás (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Juhász István-Zsakó László: Informatikai képzések.
Copyright, 2009 © Szlávi Péter A kupac és a prioritási sor típuskonstrukciók Szlávi Péter ELTE IK Média- és Oktatásinformatikai Tanszék
HADOOP Korszerű Adatbázisok Elérés, Belépés Elérés: eszakigrid109.inf.elte.hu Belépés: felhasználó/jelszó: neptun-kód Manager oldalak:
Gubicza József (GUJQAAI.ELTE)
Gráfok szélességi bejárása
Programozási alapismeretek 8. előadás. ELTE 2/  További programozási tételek További programozási tételek 
Információ feldolgozása
Permutáció, variáció, kombináció
az MSAccess programmal
1 Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat 1. Bevezetés Miskolc, 2004.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
A digitális számítás elmélete
Trajectori Adatok feldolgozása DirectionPreserving Trajectory Simplification (Cheng Long, Raymond ChiWing Wong, H. V. Jagadish) Forrás: Készítette: Béleczki.
Hadoop Gyakorlat 2 Korszerű adatbázisok Parancsok Listázás – hadoop fs –ls Kiírja egy fájl tartalmát – hadoop fs –cat Betöltés – hadoop fs –put.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
Microsoft Excel Függvények VI..
MSACCESS Bevezetés. Üzemeltetés Hozzáférés Jogosultságok Karbantartás Mentés Stb. Felhasználói felület Űrlapok Jelentések Menük Stb. Adatnézetek, funkcionalitás.
Excel Hivatkozások, függvények használata
Gráf szélességi bejárása
Előrendezéses edényrendezés – RADIX „vissza”
Betűk rendezésétől egy valós számokat tartalmazó vektor rendezéséig Kiss László főiskolai docens OE RKK MKI augusztus 25.
Készítette: Gergó Márton Konzulens: Engedy István 2009/2010 tavasz.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék R és MapReduce „Big Data” elemzési módszerek Kocsis Imre.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Bin-summarise-smooth: ‚bigvis’ „Big Data” elemzési módszerek.
Összetett adattípusok a Pascal nyelvben
Rendezési algoritmusok
Karakterláncok Páll Boglárka. Karakterláncok Karakterlánc olyan karakterek sorozata amelyek az ASCII táblázatban találhatók. Maximális hossza rögzített,
Rendezések és szövegkezelő függvények
Gráf Szélességi bejárás/keresés algoritmusa
Nevezetes algoritmusok: Fa megvalósítása Készítette: Várkonyi Tibor Zoltán.
Adatbázisok tervezése, megvalósítása és menedzselése
Témazáró dolgozat Kiegészítések.
Információ- és hírközléselmélet '991 Információ- és Hírközléselmélet Vassányi István, Információelmélet –forráskódolás –csatornakódolás.
A legrövidebb útkeresés relációs megközelítése nagyméretű gráfokban
Minuet: A Scalable Distributed Multiversion B-Tree Írta: Benjamin Sowell, Wojciech Golab, Mehul A. Shah Feldolgozta: Fokin Miklós, Hodosy Gábor, Tóth Tamás.
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
C Programozási alapok.
Programozási alapismeretek 8. előadás. ELTE Szlávi-Zsakó: Programozási alapismeretek 8.2/  További programozási.
Gombos GergőKorszerű Adatbázis 2012/13 tavasz 2 Kik használják?
Bucket sort avagy lineáris idejű rendezés. Pszeudo kód n hosszú L listára for i = 1..n If B[L[i]] != üres Akkor [L[i] Beszúrásos rendezéssel B[L[i]]-be.
Diszjunkt halmazok adatszerkezete A diszjunkt halmaz adatszerkezet diszjunkt dinamikus halmazok S={S 1,…,S n } halmaza. Egy halmazt egy képviselője azonosít.
1.  Szerzői:  Panagiotis Bouros (University of Hong Kong),  Shen Ge (University of Hong Kong),  Nikos Mamoulis (University of Hong Kong)  Esemény:
Kutatási beszámoló 2002/2003 I. félév Iváncsy Renáta.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék MapReduce alapok „Big Data” elemzési módszerek Kocsis Imre,
Automatikus fizikai tervezési javaslatok XML adatbázisokhoz Balogh Bernadett Kresz Marcell Cseh Tamás.
Fájlszervezés Adatbázisok tervezése, megvalósítása és menedzselése.
Hadoop Gyakorlat 1 Korszerű adatbázisok.
PhD beszámoló 2003/2004 I. félév Készítette: Iváncsy Renáta Konzulens: Dr. Vajk István.
KÉSZÍTETTE: KOVÁCSICS KRISZTIÁN
Huffman kód.
Mediánok és rendezett minták
Párhuzamos primitívek
Algoritmusok és Adatszerkezetek I.
A maximum kiválasztás algoritmusa
GPGPU – CUDA 2..
1. Írja fel bináris, hexadecimális és BCD alakban a decimális 111-et
SZAKKÉPZÉSI ÖNÉRTÉKELÉSI MODELL ÖNÉRTÉKELÉSI SZINTEK
LL(1)-elemzés az LL(1)-elemzők már jobbak az előzőeknél, bár nem fedik le a programozási nyelvek szükségleteit alapötlet: a levezetés következő lépéséhez.
„Big Data” elemzési módszerek
Adatbázis-kezelés 2. Relációs adatbázisok.
Algoritmusok és Adatszerkezetek I.
Algoritmusok és Adatszerkezetek I.
Előadás másolata:

Computing n-Gram Statistics in MapReduce Klaus Berberich, Srikanta Bedathur EDBT/ICDT 2013 Joint Conference

Csóka Győző (cikk feldolgozás) Polgár Ákos (prezentáció) Zvara Zoltán (bemutató program)

Bevezetés n-gramok előfordulásának gyakorisága elosztott adatfeldolgozási módszerrel végzett n-gram statisztikák

Probléma fontossága Google & Microsoft legfeljebb 5 szó hosszú n-gramok

Cél Hadoop MapReduce implementációjával több algoritmust is adaptáltak teljesítmény lényegesen javítható

Alapfogalmak Prefix Szuffix r az s részsorozata(r ◊ s) Pl: ax ◊ caxb r s-beli gyakorisága

MapReduce nagy adathalmazok feldolgozása párhuzamosan, egy szerverfürtön elosztottan Mapper Reducer

Word count

Példa τ = 3 és σ = 3 d1 = d2 = d3 =

Példa τ = 3 és σ = 3 d1 = d2 = d3 = : 3 : 5 : 7 : 3 : 4 : 3

Naiv algoritmus Map kiválasztja az összes legfeljebb σ hosszúságú n-gramot Reduce elhagyja azokat, amik τ-nál kevesebbszer szerepelnek

Eredmények Hadoop teszt MongoDB implementáció – Körülményes megvalósítás – Reduce függvény algebrai tulajdonságai

Példa d1 =

Példa d1 =

Műveletigény Ο(|d| 2 ) kulcs-érték pár (σ > |d|) páronként Ο(|d|) hosszú Ο(|d| 3 ) byte transzfer

Apriori scan Ötlet: Részsorozatból

Apriori scan Szöveget többször olvassuk Lista k. olvasás-> legalább τ-szor szerepelt k-gramok Felhasználjuk előző (k-1) gramokat

Apriori scan Mapper: kiszűrés Reduceren nem változtatunk

Példa az apriori scanre 3. olvasásra már csak marad Pl -et elhagyjuk, mert túl ritka τ = 3 és σ = 3 d1 = d2 = d3 =

Műveletigény legfeljebb σ olvasás Nem javítottunk a transzfereken

Apriori index Mapper#1 Reducer#1 Létrehoz egy indexet az összes gyakori, legfeljebb K hosszú n-gram pozíciójához Mapper#2 Reducer#2 K-gram meghatározásához (k-1) gramok összefűzése, kulcs-érték párokkal

Példa az apriori indexre : τ = 3 és σ = 3 K = 2 d1 = d2 = d3 =

Műveletigény Bajok: - a címkelisták száma és mérete - listákat bufferelni kell Nem javítottunk a transzfereken

Suffix- σ Ötlet Az alábbi 3 n-gram kiválasztása (,, ) pazarló. Elsőből meghatározható a másik kettő, mint prefixek Elég kiválasztani a szöveg minden pozíciójához egyetlen kulcs-érték párt a pozíciótól kezdődő szuffixet használva kulcsként

Suffix- σ Probléma n-gramot egy még nem látott beérkező szuffix is reprezentálhat, nem tudjuk elég korán kiválasztani az előfordulási gyakoriságával Sok memória

Suffix- σ Ötlet kulcs-érték párok rendezési sorrendje, amiben a reducerek megkapják őket, befolyásolható

Suffix- σ Egy reducerhez az azonos kulcsú key value-k kerülnek Partícionálás kezdőbetűvel Reducernek sortolva küld Reverse lexiografikusan

Példa τ = 3 és σ = 3 d1 = d2 = d3 = :

Suffix- σ stack termscounts b 0 :

Suffix- σ stack x 0 b 0 :

Suffix- σ stack x 1 x 0 b 0 :

Suffix- σ stack x b 0 :

Suffix- σ stack b 2 :

Suffix- σ stack a 0 b 2 :

Suffix- σ stack x 2 a 0 b 2 :

Suffix- σ stack a 2 b 2 :

Suffix- σ stack b 4 :

Műveletigény Ο(|d|) kulcs-érték pár (σ > |d|) páronként Ο(|d|) hosszú Ο(|d| 2 ) byte transzfer => Javítottunk

Eredmények Hadoop teszt – A szavak hasítva elegánsan (hálózati költségek) MongoDB implementáció – Nincs saját rendező a fázisok között – Nincs partícionáló függvény (finalize) – Reducer algebrai tulajdonságai

Teljes futás / Byte transzfer

Futási idő

Byte transzfer

Kulcs-érték párok