Rozlo enie z a e pri top k fazetovom vyh ad van
Sponsored Links
This presentation is the property of its rightful owner.
1 / 23

Rozloženie záťaže pri top-k fazetovom vyhľadávaní PowerPoint PPT Presentation


  • 61 Views
  • Uploaded on
  • Presentation posted in: General

Rozloženie záťaže pri top-k fazetovom vyhľadávaní. Vedúci práce RNDr. Peter Gurský, PhD. Riešiteľ práce Bc. Juraj Bobák. Use Case. request. S i 1. D i 1. click. response. S i 2. read. D i 2. S i 3. D i 3. S i j. D i j. Charakteristika problému.

Download Presentation

Rozloženie záťaže pri top-k fazetovom vyhľadávaní

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Rozloženie záťaže pri top-k fazetovom vyhľadávaní

Vedúci práce

RNDr. Peter Gurský, PhD.

Riešiteľ práce

Bc. Juraj Bobák


Use Case

request

Si1

Di1

click

response

Si2

read

Di2

Si3

Di3

Sij

Dij


Charakteristika problému

  • motiváciou pre prácu bolo vytvoriť systém narozloženie záťaže pri top-k fazetovomvyhľadávaní

  • atribútom rozloženia záťaže je taktiež počet používateľov vytvárajúcich dopyty pri vyhľadávaní

  • pri takomto vyhľadávaní sa vykonávajú rozdielne zložité dopyty, ktoré je potrebné rozdeľovať medzi rôzne výkonné servery pri zohľadnení ich vyťaženia

  • projekt Kapsa (Katalóg produktov s anotáciou)


Ciele

  • Požiadavky na Load Balancer

    • Fail-Over – reagovať na nedostupnosť serveru

    • Scalability – rozšírenie clusteru o server zvýši výkon clusteru

    • Rozdeľovanie záťaže na základe vyťaženia serverov a zložitosti dopytov

    • Analýza náročnosti dopytov


Vyťaženie serveru

  • Na základe výkonu, vyťaženosti CPU a operačnej pamäte spočítať vyťaženosť serveru

  • Rozposielať správy o vyťaženosti po sieti obežníkmi (broadcast)


Aplikácia na zistenie vyťaženia serveru a rozposielanie obežníkov

  • Dve časti: Messenger a Listener

  • Platforma Node.js (JavaScript na serveri)

  • Messenger.js

    • zisťuje a odosiela dáta obežníkmi po sieti o vytaženosti CPU, pamäte a siete

    • každý typ dát odosiela v inom čase a asynchrónne

  • Listener.js

    • počúva na sieti obežníky a prijímané dáta o každom stroji ukladá

    • na požiadanie vráti aktuálny stav serverov (HTTP req.)


Príklady odoslaného/prijatého objektu (JSON formát)

{

name: ‘cpu’,

value: ‘0.25’,

caption: ‘CPU Load’,

speed: ‘1583’

}

{

name: ‘memory’,

  • value: ‘524288000’,

  • caption: ‘Freememory’

  • }


Náročnosť dopytov

  • zisťovanie náročnosť dopytov

  • uloženie konfigurácie náročnosti dopytov do konfiguračného súboru, ktorý obsahuje náročnosť na:

    • pamäť serveru

    • procesor stroja

    • sieť (tá by mala byť top-k)

  • záleží tiež na použitom úložisku

    • je rozdiel v náročnosti na operačnú pamäť pri databáze MySQLa Indexe


Zisťovanie náročnosti dopytov

  • dopyty pre projekt „Kapsa“

  • zatiaľ len jeden typ dopytu– fullscan domény

  • testovacie dáta

    • aktuálne dáta

    • náhodne vygenerované dáta


Testovanie dopytov

  • test dopytu na 17-ich doménach

  • 6 rovnakých databáz, z ktorých každá mala postupne o polovicu menšiu mohutnosť domény (o polovicu menej záznamov)

  • 100 dopytov pre každú doménu v každej zo šiestich databáz na troch rôznych serveroch

  • časové testy

  • pamäťové testy


Konfigurácia použitých serverov

  • na testovanie dopytov sme použili len servery s id = 1,2 a 4


Výsledná konfigurácia domén


Algoritmy pre Load Balancer

  • Load Balancer - dva varianty algoritmu

  • 1. algoritmus zohľadňuje len vyťaženie CPU a dostatok voľnej operačnej pamäte na výpočet dopytu

  • 2. algoritmus pracuje s premenlivými váhami na základe vyťaženia CPU a voľnej operačnej pamäte pre n dopytov s najvyššou spotrebou operačnej pamäte


Testovanie Load Balancerov

  • mod_proxy v základnom nastavení - mod_proxy

  • mod_proxy s nastavenými váhami serverov – mod_proxy_ver2

  • mod_jk v základnom nastavení – mod_jk_ver1

  • mod_jk s nastavenými váhami serverov – mod_jk_ver2

  • kapsa Load Balancer – algoritmus I – kapsa_lb_ver2

  • kapsa Load Balancer – algoritmus II – kapsa_lb_ver3


Testovanie Load Balancerov

  • test na 4 rôznych počítačoch

  • meranie času odpovede

  • meranie vyťaženia CPU a voľnej operačnej pamäte počas testov


Výsledky testovania


Výsledky testovania


Výsledky testovania


Výsledky testovania


Výsledky testovania


Výsledky testovania


Výsledky testovania


Ďakujem za pozornosť


  • Login