1 / 23

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

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.

hugh
Télécharger la présentation

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. Use Case request Si1 Di1 click response Si2 read Di2 Si3 Di3 Sij Dij

  3. 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)

  4. 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

  5. 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)

  6. 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.)

  7. 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’ • }

  8. 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

  9. 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

  10. 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

  11. Konfigurácia použitých serverov • na testovanie dopytov sme použili len servery s id = 1,2 a 4

  12. Výsledná konfigurácia domén

  13. 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

  14. 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

  15. 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

  16. Výsledky testovania

  17. Výsledky testovania

  18. Výsledky testovania

  19. Výsledky testovania

  20. Výsledky testovania

  21. Výsledky testovania

  22. Výsledky testovania

  23. Ďakujem za pozornosť

More Related