Önszerveződő adatbázisok
High Speed Networks Laboratory
1/40
Önszerveződő adatbázisok Hosszu Éva
Önszerveződő adatbázisok 1.
Paradigmaváltás az adatbázisokban • Megtervezett adatbázis → Evolúció alkotta adatbázis
2. 3.
Önszerveződő adatbázis: struktúra, lekérdezés Struktúra: a hálózatot meghatározó jellemzők • Méret, átmérő • Kisvilág tulajdonság • Skálafüggetlen hálózatok • Preferenciális kapcsolódás
4.
Lekérdezés • Lekérdezés önszerveződő adatbázisokban • Internetes keresőmotorok működésének alapjai
2/40
Önszerveződő adatbázisok Hosszu Éva
Paradigmaváltás az adatbázisokban • Mennyi zenét tárolsz a
számítógépeden? • Régen: rengeteg zene a
számítógépen • Hatalmas adatbázisban • Viszonylag struktúrálva • Most: Kevés zene a gépen, csak
amire azonnal szükség van • Túlnyomó részben: YouTube & Google • Egy struktúrálatlan halmazból keressük ki 3/40
Önszerveződő adatbázisok Hosszu Éva
Paradigmaváltás az adatbázisokban • Eddig • Relációs adatbázis • Elosztott adatbázis • Lekérdezés: erősen megnövelte a
kommunikációs költségek részarányát az adatbázis-kezelés költségein belül • Ötlet: próbáljuk meg az adatokat a felhasználás közelében elhelyezni. • Osztott adatbázisok. • Az osztott adatbázis egy fizikailag
megosztott, de logikailag egységes adatbázis.
4/40
Önszerveződő adatbázisok Hosszu Éva
Amerre mozdul a világ: • Megtervezett adatbázis → evolúció alkotta adatbázis • Elosztott adatbázisok: • A kommunikációs költségek csökkenése. • Mindenki a számára ismerős adatokat gondozza. • Egy-egy csomópont kiesése esetén a többi adatai továbbra is
elérhetőek. • Lehetséges a moduláris tervezés, a rugalmas konfigurálás. • Rugalmasabb adatstruktúra kell
• Önszerveződő adatbázisok: • A kapcsolódást nem egy központi egység határozza meg • A csomópontok saját maguk döntik el, hova kapcsolódnak 5/40
Önszerveződő adatbázisok Hosszu Éva
Önszerveződő adatbázisok 1.
Paradigmaváltás az adatbázisokban • Megtervezett adatbázis → Evolúció alkotta adatbázis
2. 3.
Önszerveződő adatbázis: struktúra, lekérdezés Struktúra: a hálózatot meghatározó jellemzők • Méret, átmérő • Kisvilág tulajdonság • Skálafüggetlen hálózatok • Preferenciális kapcsolódás
4.
Lekérdezés • Lekérdezés önszerveződő adatbázisokban • Internetes keresőmotorok működésének alapjai
6/40
Önszerveződő adatbázisok Hosszu Éva
Mit az önszerveződő adatbázis? • A szó tág értelmében • Önszerveződő adatbázis = (struktúra,lekérdezés) • Az adatbázis önszerevződő jellege meghatározza a kialakuló topológiát • A topológia meghatározza, milyen a hatékony keresés • Önszerveződő adatbázis példák: • Internet • Blogok • Google Fordító • Szocális hálózat • P2P hálózat • Folding@home
7/40
Önszerveződő adatbázisok Hosszu Éva
Önszerveződő hálózat: Az Internet • Általános értelemben: Nagy bonyolult hálózatok • Hálózat komplexitása • Sok csomópont • Sok kapcsolat • Heterogén csomópont típusok és kapcsolattípusok • Tisztán kivehető tendencia: kommunikációs hálózatok egyre
bonyolultabbakká válnak • Az Internet fejlődési trendek • • • •
Felhasználók számának drámai növekedése Kicsi mobil eszközök Szerteágazó szabványok, sok gyártó Heterogén eszközök Virtuális hálózatok fizikai hálózakon – VPNs, virtual ISPs
• Milyen struktúra lakozik a komplexitás mögött?
8/40
Önszerveződő adatbázisok Hosszu Éva
Pillanatfelvételek • A hálózatok dinamikusak • Még jó, annyira gyorsan változnak az igények • Jelenleg nincs lehetőség a dinamizmus vizsgálatára nagy
léptékben • Legtöbb adatbázis csak a pillanatnyi állapotot tárolja • Ezért egy-egy elemzés csak egy pillanatfelvétel • Előfordulnak statisztikai hibák • Néha később módosított eredmények
9/40
Önszerveződő adatbázisok Hosszu Éva
Önszerveződő adatbázisok 1.
Paradigmaváltás az adatbázisokban • Megtervezett adatbázis → Evolúció alkotta adatbázis
2. 3.
Önszerveződő adatbázis : struktúra, lekérdezés Struktúra: a hálózatot meghatározó jellemzők • Méret, átmérő • Kisvilág tulajdonság • Skálafüggetlen hálózatok • Preferenciális kapcsolódás
4.
Lekérdezés • Lekérdezés önszerveződő adatbázisokban • Internetes keresőmotorok működésének alapjai
10/40
Önszerveződő adatbázisok Hosszu Éva
Számunkra jelenleg lényeges paraméterek 1. Hálózat méret: Csomópontok száma • Ezres, milliós, esetleg milliárdos méretek esetén lehet statisztikai adatokkal jól jellemezni egy hálózatot 2. Klaszterezettség: “Csoportosulás” mértéke • A szomszéd node-jaim kapcsolódnak-e egymáshoz? Ha 1 akkor mindig, ha 0 akkor soha! 3. Átmérő: Kis átmérő, rövid utak, “kisvilág” jelleg • Egy rácsban igen nagy átmérők lehetnek, míg pl. a teljes gráf átmérője 1. 4. Hasonlósági paraméter (γ): Mennyire hasonló a
szerepük? (skálafüggetlen szerkezet) •
Ha a szám magas, akkor az egyének nagyon hasonlítanak, ha alacsony akkor (~ 2) akkor erősen eltérő szerepek vannak
5. Fokszámeloszlás: a csúcsok mekkora hányadának k a
fokszáma? • Egyenletes? Binomiális? Valami más?
11/40
Önszerveződő adatbázisok Hosszu Éva
Méret és átmérő • Mekkora egy önszerveződő adatbázis? • Csomópontok száma: néhány tíz – milliárdok • Mekkora az adatbázis átmérője? • 1929: Karinthy Frigyes – Láncszemek • Hat lépés távolság • 1967: Milgram—kísérlet (a másik) • Levélküldés nagy távolságra (szociológiai, földrajzi), véletlenszerűen választott emberek • Információk a célszemélyről • Személyes ismeretség esetén azonnal a célhoz • Egyébként olyanhoz aki valószínűleg személyesen ismeri+levél a Harvardra
12/40
Önszerveződő adatbázisok Hosszu Éva
Milgram kísérlete (további részletek) • • •
Néha 1-2 lépés elég volt néha kilenc kellett 296 levélből 232 nem ért célba A maradékból az átlagos távolság 5.5-nek adódott (ellentmondott a tapasztalatokkal, és várakozásokkal)
• Az utolsó személy igen sokszor ugyanaz • Legtöbbször gyorsan földrajzi közelbe értek, ahol köröztek, amíg rést nem találtak a célszemély belső köreibe • Problémák • Kevés célbeérkező levél • Emiatt hosszabb láncok kevésbé vannak jelen (alábecslés)
• Többször ismételték •
2002-ben e-mail verzió
•
2008, Microsoft .NET Messenger Service: 6.6
• Hatlépésnyi távolság
13/40
Önszerveződő adatbázisok Hosszu Éva
Átmérő
• Példa: Rubik-kocka állapotai
14/40
Önszerveződő adatbázisok Hosszu Éva
Átmérő •
15/40
Önszerveződő adatbázisok Hosszu Éva
The Anatomy of the Facebook Social Graph • Ugander, Karrer, Backstrom, Marlow • arXiv: 1111.4503v1 [cs.SI] • 2011. májusi állapot elemzése • Aktív felhasználók: 1. Bejelentkezett a vizsgálatot megelőző 28 napban 2. Van legalább 1 ismerőse • 721 millió aktív felhasználó (a Föld
lakossága akkor 6.9 milliárd) • 68.7 milliárd kapcsolat • átlagosan 190 ismerős
16/40
Önszerveződő adatbázisok Hosszu Éva
Felhasználók közti átlagos távolság • 4.7 lépés távolság • USÁ-n belül: 4.3
• Független
tanulmány: átmérő ~40 • Az átmérő
önmagában megtévesztő
17/40
Önszerveződő adatbázisok Hosszu Éva
Csoportosulás mértéke • A weboldalak jellemzően szoktak egymásra mutatni • Minél több közös oldalra mutatnak, annál nagyobb valószínűséggel
egymásra is • Melyik tűnik hihetőbbnek mint weboldalak hálózata? Miért?
18/40
Önszerveződő adatbázisok Hosszu Éva
Klaszterezettségi együttható • Globális: • 𝐶=
ℎá𝑟𝑜𝑚𝑠𝑧ö𝑔𝑒𝑘 𝑠𝑧á𝑚𝑎 𝑡𝑟𝑖𝑝𝑙𝑒𝑡𝑒𝑘 𝑠𝑧á𝑚𝑎
• a háromszögek
számának aránya ahhoz képest, hogy mennyi lehetne
C=1
• Lokális:
a kék csúcsra vonatkozóan ckék=1 • 𝐶𝑖 =
2∗𝑠𝑧𝑜𝑚𝑠𝑧é𝑑𝑜𝑘 𝑘ö𝑧ö𝑡𝑡𝑖 é𝑙𝑒𝑘 , 𝑁 𝑖 ∗(𝑁 𝑖 −1)
ckék=1/3
ckék=0
ahol N(i) = #{i szomszédai} 19/40
Önszerveződő adatbázisok Hosszu Éva
Egy adatbázisban
20/40
Önszerveződő adatbázisok Hosszu Éva
Kisvilág-tulajdonság •
21/40
Önszerveződő adatbázisok Hosszu Éva
Fokszámeloszlás • A csúcsok mekkora hányadának k a fokszáma • nk = hány k fokszámú csúcs van 𝑛 • P(k) = k, n a csúcsok száma 𝑛
• hisztogram
22/40
Önszerveződő adatbázisok Hosszu Éva
Fokszámeloszlás • Binomiális
𝑛
• 𝑃 𝑘 = 𝑘 𝑝𝑘 (1 − 𝑝)𝑛−𝑘 • Véletlen hálózat • Nyerőgép
• Hatványfüggvény • 𝑃 𝑘 ~ 𝑘 −γ • γ: Hasonlósági paraméter • Önszerveződő hálózatok
23/40
Önszerveződő adatbázisok Hosszu Éva
Skálafüggetlenség • A fokszámeloszlás hatványfüggvényt követ
24/40
Önszerveződő adatbázisok Hosszu Éva
Skálafüggetlenség szemléletesen 1.
A hálózatra rázoomolva önhasonló szerkezet • Pont így van a természetben is
2.
Nem heterogén szerepű csomópontok • Néhány központ, sok kis node
25/40
Önszerveződő adatbázisok Hosszu Éva
Valós hálózatok
26/40
Önszerveződő adatbázisok Hosszu Éva
Hogyan kapcsolódnak új pontok az adatbázishoz? • Egy már meglévő adatbázis melyik
pontjához fogunk kapcsolódni? • P2P hálózatban melyik fájlt töltöd le? • Egy nemzetségen belül melyik fajok szaporodnak el? • Minél népszerűbb • Népszerűség ~ minél több
kapcsolata van eddig
27/40
Önszerveződő adatbázisok Hosszu Éva
Preferenciális kapcsolódás • Preferenciális kapcsolódás A kapcsolódáshoz a jelölt esélye arányos a fokszámmal Nagyobb fokszámú csúcshoz nagyobb eséllyel kapcsolódik i csúcsra: 𝑝𝑖 =
𝑓𝑜𝑘𝑠𝑧á𝑚 2∗é𝑙𝑒𝑘 𝑠𝑧á𝑚𝑎
• A gazdag egyre gazdagabb
lesz • Növekedéssel együtt: skálafüggetlen hálózat
28/40
Önszerveződő adatbázisok Hosszu Éva
Szűkebb értelemben vett önszerveződő hálózatok
• Speciális értelemben 1. Nem véletlenszerű kapcsolatok, “csoportosuló” 2. Kis átmérő, rövid utak, kisvilág 3. Skálafüggetlen szerkezet: erősen változó szerepek a hálózatban
29/40
Önszerveződő adatbázisok Hosszu Éva
Önszerveződő adatbázisok 1.
Paradigmaváltás az adatbázisokban • Megtervezett adatbázis → Evolúció alkotta adatbázis
2. 3.
Önszerveződő adatbázis : struktúra, lekérdezés Struktúra: a hálózatot meghatározó jellemzők • Méret, átmérő • Kisvilág tulajdonság • Skálafüggetlen hálózatok • Preferenciális kapcsolódás
4.
Lekérdezés • Lekérdezés önszerveződő adatbázisokban • Internetes keresőmotorok működésének alapjai
30/40
Önszerveződő adatbázisok Hosszu Éva
Hogyan működnek a keresőmotorok?
31/40
Önszerveződő adatbázisok Hosszu Éva
Internetes keresőmotorok • A keresőmotorok két fő funciója 1. Crawling és az oldalak térképének felépítése 2. Válasz a lekérdezésre
1.
Crawling & Indexing • A weben levő dokumentumok, fájlok, oldalak bejárása és indexelése • Indexelés ~ tárgymutató egy könyv végén
2. Válaszadás a felhasználói lekérdezésre • Releváns oldalak listája • Sorrend
32/40
Önszerveződő adatbázisok Hosszu Éva
Honnan tud a keresőmotor egy oldalról? 1.
Megmondjuk, hogy létezik • Home page URL-je • www.google.com/addurl • search.yahoo.com/info/submit.html • search.live.com/docs/submit.aspx • XML oldaltérkép
2.
Ha egy másik oldal mutat rá: keresőrobotok beindexelik • Struktúra miatt működik • A kapcsolatok mentén a keresőmotor bejárja = crawling • Ha találnak egy új oldalt: részleteket tárolnak
33/40
Önszerveződő adatbázisok Hosszu Éva
Egy Google keresés
34/40
Önszerveződő adatbázisok Hosszu Éva
Adjunk választ! • A keresőmotor egy válaszadó gép • Háromféle keresés: • "Do" Tranzakciós keresés – valami végrehajtása: repülőjegy vásárlás, zenehallgatás • "Know" Információs keresés – egy zenekar neve, a város legjobb étterme • "Go" Navigációs keresés – Kifejezetten egy weblap keresése: menj a Facebook-ra, az NFL homepage-re
• Csak az a válasz érdekel, ami relevéns • Hasznosság remélt sorrendjében • A relevancia több, mint hogy “tartalmazza a jó szavakat” • A keresőmotorok első napjaiban ennyi volt • Nem is működött jól • AltaVista → Google 35/40
Önszerveződő adatbázisok Hosszu Éva
Search Engine Optimization • Egy weboldal láthatóságának befolyásolása egy keresőmotor találati
listájában • Nem a keresőmotorok kijátszása • Jó felhasználói élmény
• Az oldal szándékainak közvetítése, hogy a releváns kereséseknél
ajánlhassák • robots.txt: amit a keresőrobotok ne járjanak be • Bejelentkezés után látható oldalak • Személyes információt tartalmazó oldalak: vásárlás • Oldalon belüli keresési eredmények • Korai algoritmusok: • Szerepelnek-e a megadott szavak • Kulcsszó-sűrűség • Keyword meta-tag • Könnyű volt kijátszani 36/40
Önszerveződő adatbázisok Hosszu Éva
Mennyire fontos egy oldal? • A legtöbb keresőmotornál: fontosság = népszerűség • Minél népszerűbb egy oldal, annál fontosabb kell legyen az infó, ami rajta van • Algoritmusokkal szűrik és rangsorolják az oldalakat relevancia és népszerűség alapján
• Ranking faktorok • Tartalom: Az oldal szövege, címek, ismertetők. • Teljesitmény: Milyen gyors? Jól működik? • Megbizhatóság: Elég jó a tartalom ahhoz, hogy más oldalak ide mutassanak? Más oldalak megjelölik referenciaként? • Felhasználói élmény: Hogy néz ki? Könnyű eligazodni? Magas a bounce rate?
37/40
Önszerveződő adatbázisok Hosszu Éva
SEO Success Factors
38/40
Önszerveződő adatbázisok Hosszu Éva
Search Engine Optimization • Oda-vissza ható folyamat • Algoritmus → helyezést javító trükkök → új algoritmus → új trükkök → … • Hogy pontosan hogy működik, azt a tapsztalat alapján sejteni lehet
• On-the-page SEO Ami az oldal szerzőjének befolyása alá tartozik • Tartalom • HTML • Felépítés • Off-the-page SEO Az olvasókon, látogatókon és a többi oldal szerzőjén múlik • Linkek • Megbízhatóság • Közösségi média • Személyes paraméterek 39/40
Önszerveződő adatbázisok Hosszu Éva
Search Engine Optimization • White Hat technikák • A felhasználónak szóljon az oldal, ne a keresőnek • A weboldal struktúráját tagolttá kell tenni, megfelelő header használattal. • •A
taget megfelelően kell kitölteni. • •Az oldalon elhelyezett szövegeket is érdemes optimalizálni. • •Helyezzünk el olyan linkeket, amik egyéb aloldalakra mutatnak. • Hosszú távú eredmény
• Black Hat technikák • Hogyan tévesszük meg a keresőt • Láthatatlan tartalom • Más oldal megjelenítése, ha a kereső kéri = cloaking • Gyors eredmény, de: ha a kereső rájön: büntetés
40/40