Hrms: Dynm Prttonn or Dstrut Sol Ntwork Grph Dtss Dnl Nor Unvrsty o Wtrloo nl.nor@ml.om Shhn Kml Unvrsty o Wtrloo s3kml@uwtrloo. Khuzm Duj Unvrsty o Wtrloo kuj@uwtrloo. L Chn HKUST lhn@s.ust.hk ABSTRACT Sol ntworks r lr rphs tht rqur multpl rph ts srvrs to stor n mn thm. Eh ts srvr hosts rph prtton wth th ojtvs o lnn srvr los, run rmot trvrsls (-uts), n ptn th prttonn to hns n th strutur o th rph n th o hnn worklos. To hv ths ojtvs, ynm rprttonn lorthm s rqur to moy n xstn prttonn to mntn oo qulty prttons whl not mposn snnt ovrh to th systm. In ths ppr, w ntrou lhtwht rprttonr, whh ynmlly mos prttonn usn smll mount o rsours. In ontrst to th xstn rprttonn lorthms, our lhtwht rprttonr s nt, mkn t sutl or us n rl systm. W ntrt our lhtwht rprttonr nto Hrms, whh w sn s n xtnson o th opn sour No4j rph ts systm, to support worklos ovr prtton rph t strut ovr multpl srvrs. Usn rl-worl sol ntwork t, w show tht Hrms lvrs th lhtwht rprttonr to mntn hh qulty prttons n provs to 3 tms prormn mprovmnt ovr th -to stnr rnom hsh-s prttonn.. INTRODUCTION Lr sl rphs, n prtulr sol ntworks, prmt our lvs. Th sl o ths ntworks, otn n mllons o vrts or mor, mns tht t s otn nsl to stor, qury n mn thm on snl rph ts srvr. Thus, thr s n to prtton, or shr, th rph ross multpl ts srvrs, llown th lo n onurrnt prossn to strut ovr ths srvrs to prov oo prormn n nrs vllty. Sol ntworks xht hh r o orrlton or sss o rtn roups o rors, or xmpl throuh rtonlss shrn [5]. Also, ths ntworks hv hvy-tl struton or populrty o vrts. To hv oo prttonn whh mprovs th ovrll prormn, th ollown o 05, Copyrht s wth th uthors. Pulsh n Pro. 8th Intrntonl Conrn on Extnn Dts Thnoloy (EDBT), Mrh 3-7, 05, Brussls, Blum: ISBN 978-3-8938-067-7, on OpnProns.or. Dstruton o ths ppr s prmtt unr th trms o th Crtv Commons lns CC-y-n-n 4.0. jtvs n to mt: Th prttonn shoul ln. Eh vrtx o th rph hs wht tht nts th populrty o th vrtx (.., n trms o th rquny o qurs to tht vrtx). In sol ntworks, smll numr o usrs (.., lrts, poltns) r xtrmly populr whl lr numr o usrs r muh lss populr. Ths srpny rvls th mportn o hvn ln prttonn n whh ll prttons hv lmost qul rt wht n s th totl wht o vrts n th prtton. Th prttonn shoul mnmz th numr o -uts. An -ut s n y n onntn vrts n two rnt prttons n nvolvs qurs tht n to trnston rom prtton on on srvr to prtton on nothr srvr. Ths rsults n shtn lol trvrsl to rmot trvrsl, thry nurrn snnt ntwork ltny. In sol ntworks, t s rtl to mnmz uts sn most oprtons r on on th no tht rprsnts usr n ts mmt nhors. Sn ths - hop trvrsl oprtons r so prvlnt n ths ntworks, mnmzn -uts s nloous to kpn ommunts ntt. Ths ls to hhly lol qurs smlr to thos n SPAR [7] n mnmzs th ntwork lo, llown or ttr sllty y run ntwork IO. Th prttonn shoul nrmntl. Sol ntworks r ynm n th sns tht usrs n thr rltons r lwys hnn,.., nw usr mht, two usrs mht t onnt, or n ornry usr mht om populr. Althouh th hns n th sol rph n muh slowr whn ompr to th r tr [8], oo prttonn soluton shoul ynmlly pt ts prttonn to ths hns. Consrn th sz o th rph, t s nsl to rt prttonn rom srth; hn, rprttonn soluton, rprttonr, s n to mprov on n xstn prttonn. Ths usully nvolvs mrtn som vrts rom on prtton to nothr. Th rprttonn lorthm shoul prorm wll n trms o tm n mmory rqurmnts. To hv ths - ny, t s srl to prorm rprttonn lolly y ssn smll mount o normton out th strutur o th rph. From prtl pont o vw, ths rqurmnt s rtl n prvnts us rom pplyn xstn pprohs,.., [8, 30, 3, 6] or th rprttonn prolm. Th ous o ths ppr s on th sn n provson o prtl prtton sol rph t mnmnt systm tht n support rmot trvrsls whl provn n 5 0.544/00/t.05.04
tv mtho to ynmlly rprtton th rph usn only lol vws. Th strut prttonn ms to olot vrts o th rph on-th-ly so s to stsy th ov rqurmnts. Th unmntl ontruton o ths ppr s ynm prttonn lorthm, rrr to s lhtwht rprttonr, tht n nty whh prts o rph t n nt rom o-loton. Th lorthm ms to nrmntlly mprov n xstn prttonn y rsn -uts whl mntnn lmost ln prttons. Th mn vnt o th lorthm s tht t rls on only smll mount o knowl on th rph strutur rrr to s uxlry t. Sn th uxlry t s smll n sy to upt, our rprttonn lorthm s prormnt n trms o tm n mmory whl mntnn hh-qulty prttonns n trms o -ut n lo ln. W ult Hrms s n xtnson o th No4j opn sour rph ts systm y norportn nto t our lorthm to prov th untonlty to mov t on-th-ly to hv t lolty n ru th ost o rmot trvrsls or rph t. Our xprmntl vluton o Hrms usn rl-worl sol ntwork rphs shows tht our thnqus r tv n proun prormn ns n work lmost s wll s th populr Mts prttonn lorthms [8, 30, 6] tht prorms stt o n prttonn y rlyn on lol vw o th rph. Th rst o th ppr s strutur s ollows. Ston srs th prolm rss n th ppr n rvws lssl pprohs n thr shortomns. Ston 3 ntrous n nlyzs th lhtwht rprttonr. Ston 4 prsnts n ovrvw o th Hrms systm. Ston 5 prsnts prormn vluton o th systm. Ston 6 ovrs rlt work, n Ston 7 onlus th ppr.. PROBLEM DEFINITION In ths ston w ormlly n th prttonn prolm n rvw som o th rlt rsults. In wht ollows, th trm rph rrs to n unrt rph wth whts on vrts.. Grph Prttonn In th lssl (, )-rph prttonn prolm [0], th ol s to prtton vn rph nto vrtx-sjont surphs. Th wht o prtton s th totl wht o vrts n tht prtton. In vl soluton, th wht o h prtton s t most tor wy rom th vr wht o prttons. Mor prsly, or prtton P o rph G, w n to hv!(p ) ppl P!(v)/. Hr, vv (G)!(P ) n!(v) not th wht o prtton P n vrtx v, rsptvly. Prmtr s ll th mln lo tor n ns how mln th prttons r llow to. Prtlly, s n rn [, ]. Hr, = mpls tht prttons r rqur to ompltly ln (ll hv th sm rt whts), whl = llows th wht o on prtton to up to tw th vr wht o ll prttons. Th ol o th mnmzton prolm s to hv vl soluton n whh th numr o -uts s mnmz. Th prttonn prolm s NP-hr [3]. Morovr, thr s no pproxmton lorthm wth onstnt pproxm- No4j s n us y ustomrs suh s Ao n HP [3]. ton rto unlss P=NP [7]. Hn, t s not possl to ntrou lorthms whh prov worst-s urnts on th qulty o solutons, n t mks mor sns to stuy th typl hvor o lorthms. Consquntly, th prolm s mostly pproh throuh hursts [0] [] whh r m to mprov th vr-s prormn. Rrlss, th tm omplxty o ths hursts (n 3 ) whh mks thm unsutl n prt. To mprov th tm omplxty, lss o mult-lvl lorthms wr ntrou. In h lvl o ths lorthms, th nput rph s orsn to rprsnttv rph o smllr sz; whn th rprsnttv rph s smll nouh, prttonn lorthm lk tht o Krnhn-Ln [0] s ppl to t, n th rsultn prttons r mpp k (unorsn) to th ornl rph. Mny lorthms t n ths nrl rmwork o mult-lvl lorthms; wly us xmpl s th mly o Mts lorthms [9, 30, 6]. Th mult-lvl lorthms r lol n th sns tht thy n to know th whol strutur o th rph n th orsnn phs, n th orsn rph n h st shoul stor or th unorsnn st. Ths prolm s prtlly solv y ntroun strut vrsons o ths lorthms n whh th prttonn lorthm s prorm n prlll or h prtton [4]. In ths lorthms, n ton to th lol normton (strutur o th prtton), or h vrtx, th lst o th jnt vrts n othr prttons s rqur n th orsnn phs. Th ollown thorm stlshs tht n th worst s, qurn ths mount o t s los to hvn lol knowl o rph (th proo n oun n [5]). Thorm. Consr th (, )-rph prttonn prolm whr <. Thr r nstns o th prolm or whh th numr o -uts n ny vl soluton s symptotlly qul to th numr o s n th nput rph. Hn, th vr mount o t rqur n th orsnn phs o mult-lvl lorthms n onstnt rton o ll s. Th rphs us n th proo o th ov thorm lon to th mly o powr-lw rphs whh r otn us to mol sol ntworks. Consquntly, vn th strut vrsons o mult-lvl lorthms n th worst s rqur lmost lol normton on th strutur o th rph (prtulrly whn us or prttonn sol ntworks). Ths rvls th mportn o provn prtl prttonn lorthms whh n only smll mount o knowl out th strutur o th rph tht n sly mntn n mmory. Th lhtwht rprttonr ntrou n ths ppr hs ths proprty,.., t mntns only smll mount o t, rrr to s uxlry t, to prorm rprttonn.. Rprttonn A vrty o prttonn mthos n us to rt n ntl, stt, prttonn. Ths shoul ollow y rprttonn strty to mntn oo prttonn tht n pt to hns n th rph. On soluton s to prolly run n lorthm on th whol rph to t nw prttons. Howvr, runnn n lorthm to t nw prttons rom srth s ostly n trms o tm n sp. Hn, n nrmntl prttonn lorthm ns to pt th xstn prttons to hns n th rph strutur. It s srl to hv lhtwht rprttonr tht mntns only smll mount o uxlry t to prorm 6
rprttonn. Sn suh lorthm rrs only to ths uxlry t, whh s snntly smllr thn th tul t rqur or storn th rph, th rprttonn lorthm s not systm prormn ottlnk. Th uxlry t mntn t h mhn (prtton) onssts o th lst o umult wht o vrts n h prtton, s wll s th numr o nhors o h host vrtx n h prtton. Not tht mntnn th numr o nhors s r hpr tht mntnn th lst o nhors n othr prttons. In wht ollows, th mn s hn our lhtwht rprttonr r ntrou throuh n xmpl. Exmpl: Consr th prttonn prolm on th rph shown n Fur. Assum thr r = prttons n th systm n th mln tor s =.,.., n vl soluton, th rt wht o prtton s t most. tms mor thn th vr wht o prttons. Assum th numrs on vrts not thr wht. Durn norml oprton n sol ntworks, usrs wll rqust rnt ps o normton. In ths sns, th wht o vrtx s th numr o r rqusts to tht vrtx. Fur shows prttonn o th rph nto two prttons, whr thr s only on -ut n th prttons r wll ln,.., th wht o oth prttons s qul to th vr wht. Assumn usr s populr wlor who posts post, th rqust tr or vrtx wll nrs s ts nhors poll or upts, ln to n mln n lo on th rst prtton (s Fur ). Hr, th rto twn rt wht o prtton (.., 5) n th vr wht o prttons (.., 3) s mor thn. Ths mns tht th rspons tm n rqust rts nrs y mor thn th ptl skw lmt, n th rprttonn ns to trr to rln th lo ross prttons (whl kpn th numr o -uts s smll s possl). Th uxlry t o th lhtwht rprttonr vll to h prtton nlus th wht o h o th two prttons, s wll s th numr o nhors o h vrtx v host n th prtton. Prov wth ths uxlry t, prtton n trmn whthr lo mlns xst n th xtnt o th mln n th systm (to ompr t wth ). I thr s lo mln, rprttonr ns to nt whr to mrt t to rstor lo ln. Mrton s n trtv pross whh wll nty vrts tht whn mov wll ln los (r- Prtton 3 Prtton 3 j h () Bln prtton rph Prtton 6 3 Prtton 6 Prtton 3 ω=3 ω=3 h 3 ω=5 Prtton 3 j h () Skw rph j () Rprtton rph Fur : Grph voluton n ts o rprttonn n rspons to mlns. t whts) whl kpn th numr o -uts s smll s possl. For xmpl, whn th rprttonr strts rom th stt n Fur, on prtton, vrts throuh r poor nts or mrton us thr nhors r n th sm prtton. Vrtx, howvr, hs splt ss pttrn twn prttons n. Sn vrtx hs th wst nhors n prtton on, t wll mrt to prtton. On prtton, th sm pross s prorm n prlll; howvr, vrtx wll not mrt sn prtton hs hhr rt wht. On vrtx s mrt, th lo (rt whts) oms ln, thus ny rmnn trtons wll not rsult n ny mrtons (s Fur ). Th ov xmpl s smpl s to llustrt how th lhtwht rprttonr works. Svrl ssus r lt out o th xmpl,.., two hhly onnt lustrs o vrts my rptly xhn thr lustrs to rs -ut. Ths rsults n n osllton whh s suss n tl n Ston 3. 3. PARTITIONING ALGORITHM Unlk No4j whh s ntrlz, Hrms n pply hshs or Mts lorthm to prtton rph n strut th prttons to multpl srvrs. Thus, th systm strts wth n ntl prttonn n nrmntlly ppls th lhtwht rprttonr to mntn prttonn wth oo prormn n th ynm nvronmnt. In ths ston, w ntrou th lhtwht rprttonr lorthm hn Hrms. Emn th ntl prttonn lorthm n th lhtwht rprttonr nto No4j rqur moton o No4j omponnts. To nrs qury lolty n rs qury rspons tms, th ntl prttonn ns to optmz n trms o hvn lmost ln strutons (vl solutons) wth smll numr o -uts. W us Mts to otn th ntl t prttonn, whh s stt, o n, pross tht s orthoonl to th ynm, on-th-ly, prttonn tht Hrms prorms. 3. Lhtwht Rprttonr Whn nw nos jon th ntwork or th tr pttrns (whts) o nos hn, th lhtwht rprttonr s trr to rln vrtx whts whl rsn ut throuh n trtv pross. Th lorthm mks us o rt vrtx wht normton s ts uxlry t. Assumn thr r prttons, or h vrtx v, th uxlry t nlus ntrs ntn th numr o nhors o v n h o th prttons. Ths uxlry t s nsnnt ompr to th physl t ssot wth th vrtx whh nlu jny lst n othr normton rrr to s proprts o th vrtx (.., pturs post y usr n sol ntwork). Th rprttonn uxlry t s ollt n upt s on xuton o usr rqusts,.., whn nw s, th uxlry t o th prttonn(s) nlun th nponts o th t upt (two ntrs r nrmnt). Hn, th ost nvolv n mntnn o uxlry t s proportonl to th rt o hns n th rph. As mnton rlr, sol ntworks hn qut slowly (whn ompr to th r tr ); hn, th mntnn o uxlry t s not systm ottlnk. Eh prtton ollts n stors rt vrtx normton rlvnt to only th lol vrts. Morovr, th uxlry t nlus th totl wht 7
o ll prttons,.., n on rprttonn, h srvr knows th totl wht o ll othr prttons. Th rprttonn pross hs two phss. In h trton o th rst phs, h srvr runs th rprttonr lorthm usn th uxlry t to nt som vrts n ts prtton tht shoul mrt to othr prttons. Bor th nxt trton, ths vrts r lolly mov to thr trt prttons. Lol movmnt o vrtx mns tht only th uxlry t ssot wth th vrtx s snt to th othr prtton. Ths pross ontnus up to pont (trton) n whh no urthr vrts r hosn or mrton. At ths pont th son phs s prorm n whh th physl t s mov s on th rsult o rst phs. Th lorthm s splt nto two phss us orr vrts r lkly to hn prttons mor thn on (ths wll suss ltr) n uxlry t rors r lhtwht ompr to th physl t rors, llown th lorthm to nsh str. In wht ollows, w sr how vrts r slt or mrton n n trton o th rprttonr. Consr prtton P s (sour prtton) s runnn th rprttonr lorthm. Lt v vrtx n prtton P s. Th n o movn v rom P s to nothr prtton P t (trt prtton) s n s th rn twn th numr o nhors o v n P t n P s, rsptvly,.., n(v) = v(t) v(s) ( v(k) nots th numr o nhors o v n prtton k). Intutvly, th n rprsnts th rs o th numr o -uts whn mrtn v rom P s to P t (ssumn tht no othr vrtx mrts). Not tht th n n ntv, mnn tht t s ttr, n trms o -uts, to kp v n P s rthr thn movn t to P t. In h trton n on h prtton, th rprttonr slts or mrton nt vrts tht wll v th mxmum n whn mov rom th prtton. Howvr, to vo osllton n nsur vl pkn n trm o lo ln, th lorthm nors st o ruls n mrtn vrts. Frst, t ns two sts n h trton. In th rst st, th mrton o vrts s llow only rom prttons wth lowr ID to hhr ID, whl th son st llows th mrton only n th oppost rton,.., rom prttons wth hhr ID to thos wth lowr ID. Hr, prtton ID ns x orrn o prttons (n n rpl y ny othr x orrn). Mrtn vrts n on-rton n two sts prvnt th lorthm rom osllton. Osllton hppns whn thr s lr numr o s twn two roup o vrts host n two rnt prttons (s Fur ). I th lorthm llows two-wy mrton o vrts, th vrts n h roup mrt to th prtton o th othr roup, whl th -ut os not mprov (Fur ). In on-wy mrton, howvr, th vrts n on roup rmn n thr prttons whl th othr roup jons thm n tht prtton (Fur ). In ton to prvntn osllton, th rprttonr lorthm mnmzs lo mln s ollows. A vrtx v on prtton P s s nt or mrton to prtton P t th ollown ontons hol: P s n P t ulll th ov on-wy mrton rul. Movn v rom P s to P t os not us P t to ovrlo nor P s to unrlo. Rll rom Ston. tht th mln rto o prtton s th rto twn th wht o th prtton (th totl wht o vrts t s hostn) n th vr wht o ll th prttons. A prtton s ovrlo ts mln lo s mor thn n unrlo ts wht s lss thn tms th vr prtton wht. Hr, s th mxmum llow mln tor ( < <); th ult vlu o n Hrms s st to.,.., prtton s lo s rqur to n rn (0.9,.) o th vr prtton wht. Ths s so tht mlns o not t too hh or rprttonn trrs. Ethr P s s ovrlo OR thr s postv n n movn v rom P s to P t. Whn prtton s ovrlo, t s oo to onsr ll vrts s nts or mrton to ny othr prtton s lon s thy o not us n ovrlo on th trt prtton. Whn th prtton s not ovrlo, t s oo to mov only vrts whh hv postv wht so s to mprov th -ut. Whn vrtx v s nt or mrton to mor thn on prtton, th prtton wth mxmum n s slt s th trt prtton o th vrtx. Ths s llustrt n Alorthm. Not tht ttn whthr vrtx v s nt or mrton n sltn ts trt prtton s prorm usn only th uxlry t. Prsly, or ttn unrlo n ovrlo prttons (Lns, 5 n ), th lorthm uss th wht o th vrtx n th umult whts o ll prttons; ths r nlu n th uxlry t. Smlrly, or lultn th n o movn v rom prtton P s to prtton P t (Ln 0), t uss th numr o nhors o v n ny o th prttons, whh Prtton h Prtton () Intl rph, or th rst trton. Prtton Prtton () Th rsultn rph tr th rst st. h Prtton h Prtton () Th rsult rph vrts mrt n th sm st (.., n two-wy mnnr). Prtton Prtton () Th nl rph tr th son st. Fur : An unsuprvs rprttonn mht rsult n osllton. Consr th prttonn pt n (). Th rprttonr on prtton tts tht mrtn,, to prtton mprovs -ut; smlrly, th rprttonr on prtton tns to mrt, h, to prtton. Whn th vrts mov ornly, s pt n (), th -ut os not mprov n th rprttonr ns to mov,, n h, n. To rsolv ths ssu, n th rst st o rprttonn o (), th vrts,, r mrt rom prtton (lowr ID) to prtton (hhr ID). Atr ths, s pt n (), th only vrtx to mrt n th son st s vrtx whh movs rom prtton (hhr ID) to mrton (). h 8
Alorthm Choosn trt prtton or mrton : prour t trt prt(vrtx v urrntly host n prtton P s, th urrnt st o th trton.) : mln tor(p s {v}) < thn 3: rturn (null, 0) 4: trt = null; mxgn =0; 5: mln tor(p s) > thn 6: mxgn = 7: or prtton P t prttonst o 8: (st =n P t.id >P s.id) or 9:. (st =n P t.id <P s.id) thn 0: n Gn(v, P s,p t) : mln tor(p t [{v}) < n :. n > mxgn thn 3: trt P t; mxgn = n 4: rturn (trt, mxgn) s lso nlu n th uxlry t. Rll tht th rprttonn lorthm runs on h prtton npnntly, proprty tht supports sllty. For h prtton P s, tr sltn th nt vrts or mrton n thr trt prttons, th lorthm slts k nt vrts whh hv th hhst ns mon ll vrts n pros y (lolly) mrtn ths top-k vrts to thr trt prttons. Hr, mrtn vrtx mns snn (n uptn) th uxlry t ssot wth th vrtx to ts trt stnton n uptn th uxlry t ssot wth prtton whts ornly. Th lorthm rstrts th numr o mrt vrts n h trton (to k) tovo mln prttonns. Not tht whn sltn th trt prtton or mrtn vrtx, th lorthm os not know th trt prtton o othr vrts; hn, thr s hn tht lr numr o vrts mrt to th sm prtton to mprov -ut. Sltn only k vrts nls th lorthm to ontrol th umultv wht o prttons y rstrtn th numr o mrtn vrts. W suss ltr how th vlu o k s slt. In nrl, tkn k s smll, x rton o n (sz o th rph) vs ststory rsults. Alorthm shows th tls o on trton o th rprttonr lorthm prorm on prtton P s. Th lorthm tts th nt vrts (Lns 4-8), slts th top-k nts (Ln 9), n movs thm to thr rsptv trt prttons. Not tht th mrton n Ln s lol. Atr h phs o h trton, th uxlry t ssot wth h mrt vrtx v s upt. Ths s us th nhors o v my lso mrt, whh woul mn tht th r o v n h prtton,.., uxlry t ssot wth v, hs hn. Th lorthm ontnus movn vrts untl thr s no nt vrtx or mrton,.., urthr movmnt o vrts os not mprov -ut. Exmpl: To monstrt th workns o th lhtwht rprttonr, w show two trtons o th rprttonn lorthm on th rph o Fur 3 n whh thr r =3 prttons n th vr wht o prttons s 0/3. Assum th vlu o s. 3. Hn, th rt wht o prtton ns to n rn [., 4. 4]; othrws th prttonn s ovrlo or unrlo. Fur 3 shows th Alorthm Lhtwht Rprttonr : prour rprttonn trton(prtton P s) : or st {, } o 3: nts {} 4: or Vrtx v VrtxSt(P s) o 5: trt(v) t trt prt(v,st) 6:. sttn trt(v) n n(v) 7: trt(v) 6= null thn 8: nts. (v) 9: top-k k nts wth mxmum ns 0: or Vrtx v top-k o : mrt(v, P S,trt(v)) : P s.upt uxlry t ntl stt o th rph. Th prttons r su-optml s 6 o th s shown r -uts. Consr th rst st o th rst trton o th lhtwht rprttonr. Sn th rst st rstrts vrtx mrtons rom lowr ID prttons to hhr ID only, vrts n r th mrton nts sn thy r th only ons tht n mprov -ut. Not tht th lorthm ws prorm n on st, vrts h n woul mrt to prtton usn th oslltn hvor suss prvously. At th n o th rst st o th rst trton, th stt o th rph s s prsnt n Fur 3. In th son st, th lorthm mrts only vrtx. Whl vrtx oul mrt to mprov -ut, th mrton rton os not llow ths (Fur 3). In ton, suh mrton woul us prtton to unrlo (ts lo wll whh s lss thn. ). In th son trton, vrtx s mrt to prtton. Th rsult o th rst st o trton s prsnt n Fur 3. At ths pont, th rph rhs n optml roupn, thus th son st o th son trton wll not prorm ny mrtons. In t urthr trtons woul not mrt nythn sn th rph hs n optml prttonn. 3. Physl Dt Mrton Physl t mrton s th nl stp o th rprttonr. Vrts n rltonshps tht wr mrk or mrton y th rprttonr r mov to th trt prttons usn two stp pross: () Copy mrk vrts n rltonshps (opy stp) () Rmov mrk vrts n rltonshps rom th host prttons (rmov stp). In th rst stp, lst o ll vrts slt or mrton to prtton r rv y tht prtton, whh wll rqust ths vrts n thm to ts own lol ts. At th n o th rst stp, ll mov vrts r rplt. Bus o th nsrton-only oprtons, th omplxty o th oprtons s lowr s ll oprtons n prorm lolly n h prtton, mnn lss ntwork ontnton n loks hl or shortr pros. Btwn th two stps thr s synhronzton pross twn ll prttons to nsur tht prttons hv omplt th opy pross or rmovn mrk vrts rom thr ornl prttons. Th synhronzton tsl s not xpnsv s no loks or systm rsours r hl, thouh prttons my n to wt untl n osonl strlr nshs opyn. In th rmov stp, ll mrk vrts wll ntr n unvll stt n whh ll qurs rrnn th vrtx wll xut s th vrtx s not prt 9
Prtton 4, 5 j h Prtton 3, 4 Prtton 3 3, 3 () Intl rph, or th rst trton Prtton 4, 3 j h 3, 3 Prtton 3 3, () Atr th son st o th rst trton Prtton 3, 4 Prtton 3, 3 h j Prtton 3 4, 3 () Atr th rst st o th rst trton Prtton 3, j h Prtton 4, Prtton 3 3, () Atr th rst st o th son trton Fur 3: Two trtons o th lhtwht rprttonr. Two mtrs r tth to vry prtton:! rprsntn th wht o th prtton n rprsntn th -ut. o th lol vrtx st. Ths llows prormn th trnstonl oprtons muh str s loks on unvll vrts nnot qur y ny stnr qurs. 3.3 Lhtwht Rprttonr Anlyss 3.3. Mmory n Tm Anlyss Rll tht th mn vnt o th lhtwht rprttonr ovr multlvl lorthms s tht t mks us o only uxlry t to prorm rprttonn. Auxlry t hs smll sz ompr to th sz o th rph. Ths s ormlz n th ollown two thorms, th proos o whh n oun n th xtn vrson o th ppr [5]. Thorm. Th mortz sz o uxlry t stor on h prtton to prorm rprttonn s n + ( ) on vr. Hr, n nots th numr o vrts n th nput rph n s th numr o prttons. Whn ompr to th multlvl lorthms, th mmory rqurmnt o th lhtwht rprttonr s r lss n n sly mntn wthout hrly ny mpt on prormn o th systm. Ths s xprmntlly vr n Ston 5.3. Thorm 3. Eh trton o th rprttonn lorthm tks O( n s) tm to omplt. Hr, nots th numr o prttons n n s s th numr o vrts n th prtton whh runs th rprttonn lorthm. Th ov thorm mpls tht h trton o th lorthm runs n lnr tm. Morovr, th lorthm onvrs to stl prttonn tr smll numr o trtons rltv to th numr o vrts,.., n our xprmnts, t onvrs tr lss thn 50 trtons, whl thr r mllons o vrts n th rph t sts. Th lhtwht rprttonr s sn or sllty n wth lttl ovrh to th ts nn. Th smplty o th lorthm supports prlllzton o oprtons n mxmzs sllty. In th rst phs, h trton s prorm n prlll on h srvr. Th uxlry t normton s ully lol to h srvr, thus lns 4 throuh 9 o Alorthm r xut npnntly on h srvr. In th son phs o th rprttonn lorthm, physl t mrton s prorm. As mnton n Ston., ths prt hs n ompos nto two stps or smplty n prormn. Bus normton s only op n th rst stp (n whh vrts r rplt), t llows or mxmum prlllzton wth lttl n to synhronz twn srvrs. 3.3. Alorthm Convrn Whn th lhtwht rprttonr trrs, th lorthm strts y mrtn vrts rom ovrlo prttons. Not tht no vrtx s nt or mrton to n ovrlo prtton. Hn, tr oun numr o trtons, th prttonn oms vl n trm o lo ln. Whn thr s no ovrlo prtton, th lorthm movs vrtx only thr s postv n n movn t rom th sour to th trt prtton. Ths s th mn hn th ollown proo or th onvrn o th lorthm. Thorm 4. Atr oun numr o trtons, th lhtwht rprttonr lorthm onvrs to stl prttonn n whh urthr mrton o vrts (s on y th lorthm) os not rsult n ttr prttonns. Proo. W show tht th lorthm onstntly rss th numr o -uts. For h vrtx v, lt x(v) not th numr o xtrnl nhors o v,.., numr o nhors o v n prttons othr thn tht o v. Wth ths nton, th numr o -uts n prtton s / whr P = n x(v). Rll tht th lorthm works n sts so v= tht n st mrton o vrts s llow rom on prtton to nothr, n th susqunt st th mrton s llow n th oppost rton. W show tht th vlu o rss n vry two susqunt sts; mor prsly, w show tht whn vrtx v mrts n st t, th vlu o x(v) thr rss t th n o th st t or t th n o th susqunt st t + (ompr to whn v os not mrt). Lt t k(v) not th numr o nhors o vrtx v n prtton k or st t. Assum tht vrtx v s mrt rom prtton to prtton j t st t (s Fur 4). Ths mpls tht th numr o nhors o v n prtton j s mor thn prtton. Hn, whn v movs to prtton j, th vlu o x(v) s xpt to rs. Howvr, n worst-s snro, som nhors o v n prtton j lso mov to othr prttons t th sm st (Fur 4). Lt x(v) not th numr o nhors o v n th trt prtton j whh mrt t st t; hn, t th n o th st, th vlu o x(v) rss y t lst t j(v) x(v) unts. Morovr, x(v) s nrs y t most t (v); ths s us th prvous ntrnl nhors (thos whh rmn t prtton ) wll om xtrnl tr th mrton o v. I t j(v) x(v) > t (v), th vlu o x(v) rss t th n o th st n w r on. Othrws, w sy mrton ourr. In ths ss, 30
' '' ' '' ' '' h ' '' ' '' h' h'' ' '' ' '' ' '' Prtton(=) Prtton (j=) Prtton 3 () Ornl rph Prtton ' '' ' '' '' ' ' h '' ' h'' '' h' ' '' ' '' '' ' Prtton Prtton Prtton 3 () Atr th rst st ' '' ' '' ' '' '' ' '' ' ' '' h '' ' Prtton Prtton Prtton 3 () Atr th son st h' ' h'' '' Fur 4: Th numr o -uts mht nrs n th rst st (n th worst s), ut t rss tr th son st. In ths xmpl, th numr o -uts s ntlly 8 (); ths nrss to tr th rst st (), n rss to 5 t th n o th son st (). ssumn k s su ntly lr, n th susqunt st t+, v mrts k to prtton sn thr s postv n n suh mrton (Fur 4), n ths rsults n rs o t+ (v) n n nrs o t most t j(v) x(v) n x(v). Consquntly, th nt nrs n x tr two sts s ( t (v) ( t j(v) x(v))) + ( t j(v) x(v) t+ (v)) = t (v) t+ (v). Not tht v os not mov t ll, x nrss t (v) t+ (v) unts tr two sts. Hn, n th worst s, th nt rs n x(v) s t lst 0 or ll mrt vrts (ompr to whn thy o not mov). In, w show tht thr r vrts or whh th rs n x s strtly mor thn 0 tr two onsutv sts. Assumn thr r prttons, ths r th vrts whh mrt to prtton [n sts whr vrts mov rom lowr ID to hhr ID prttons] or prtton [n sts whr vrts mov rom hhr ID to lowr ID prttons]. In ths ss, no vrtx n mov rom th trt prtton to nothr prtton; so th tul rs n x(v) s th sm s th lult n whn movn th vrtx n s mor thn 0. To summrz, or ll vrts, th vlu o x(v) os not nrs tr vry two sts, n or som vrts, t rss. For smllr vlus o k, tr mrton, vrtx v mht not rturn rom prtton j to ts ntl prttonn n th susqunt st (sn thr mht mor n n movn othr vrts); howvr, sn thr s postv n n movn v k to prtton, n susqunt sts, th lorthm movs v rom prtton j to nothr prtton ( or nothr prtton whh rsults n mor n). Th only xpton s whn mny nhors o v mov to prtton j so tht thr s no postv n n movn v. In oth ss, th vlu o x(v) rss wth th sm rumnt s ov. To onlu, s th lorthm runs, th umult vlus o x(v) (.., ), n onsquntly th numr o -uts, onstntly rs. Th rph strutur n sol ntworks os not volv qukly n ts voluton s towrs ommunty ormton. Hn, s our xprmnts onrm, tr smll numr o trtons, th lhtwht rprttonr onvrs to stl prttonn. Th sp o onvrn pns on th vlu o k (th numr o mrt vrts rom prtton n h trton). Lrr vlus o k rsult n str mprovmnt on th numr o -uts n susquntly hv prttonn wth lmost n optml numr o -uts. Howvr, s mnton rlr, lr vlus o k n r th ln tor o prttonn. Fnn th rht o vlu o k rqurs onsrn w prmtrs whh nlu th numr o prttons, th strutur o th rph (.., th vr sz o th lustrs orm y vrts), n th ntur o hnn worklo (whthr th hns r mostly on th wht or on th r o vrts). In prt, w osrv tht su-optml vlu o k os not r onvrn rt y mor thn w trtons; onsquntly th lorthm os not rqur n tunn or nn th st vlu o k. In our xprmnts, w st k s smll rton o th numr o vrts. 4. HERMES SYSTEM OVERVIEW In ths ston, w prov n ovrvw o Hrms, whh w sn s n xtnson o No4j Vrson.7.3 to hnl struton o rph t n ynm rprttonn. No4j s n opn sour ntrlz rph ts systm whh provs sk-s, trnstonl prsstn nn (ACID omplnt). Th mn quryn ntr to No4j s trvrsl s. Trvrsls us th rph strutur n rltonshps twn rors to nswr usr qurs. To nl struton, hns to svrl omponnts o No4j wr rqur s wll s ton o nw untonlty. Th motons n xtnsons wr on suh tht xstn No4j turs r prsrv. Fur 5 shows th omponnts o Hrms wth th omponnts o No4j tht wr mo to nl struton n lht lu shn whl th omponnts n rk lu shn r nwly. Dtl srptons o th rmnn hns r omtt s thy pos thnl hllns whh wr ovrom usn xstn thnqus. For xmpl, s th ntrlz loop tton lorthm us y No4j or lok tton os not sl wll, t ws rpl usn tmout-s tton shm s sr n [0]. Intrnlly, No4j stors normton n thr mn stors: no stor, rltonshp stor n proprty stor. Splttn t nto thr stors llows No4j to kp only s normton on nos n rltonshps n th rst two stors. Furthr, ths llows No4j to hv x sz no n rltonshp rors. No4j omns ths tur wth monotonlly nrsn ID nrtor suh tht ) ror o sts r omput n O() tm usn thr ID n ) ontuous ID lloton llows rors to s thtly pk s possl. Th proprty stor llows or ynm lnth rors. To stor th o sts, No4j uss two lyr rhttur whr x sz ror stor s us to stor th o sts n 3
Mtt Stor Grph Mss Rprttonn Stor Dspthr Mnr Lhtwht Rprttonr Dlok Dttor Lok Mnr Clnts Qurs Srvr DstNo4 Hrms j Srvr No4 j Instns No Mnr Trnston Mnr No4 j API Trvrsl API Gt Crt Dlt A Proprts... Trvrsl Fur 5: Hrms systm lyrs tothr wth mo n nw omponnts sn to mk t run n strut nvronmnt. ynm sz ror stor s us to hol th proprts. To shr t ross multpl nstns o Hrms, hns wr m to llow lol nos n rltonshps to onnt wth rmot ons. Hrms uss ouly-lnk lst ror mol whn kpn trk o rltonshps. Suh no n th rph ns to know only th rst rltonshp n th lst sn th rst n rtrv y ollown th lnks rom th rst. Du to tht oupln twn rltonshp rors, rrnn rmot no mns tht h prtton woul n to hol opy o th rltonshp. Sn rpltn n mntnn ll normton rlt to rltonshp woul nur snnt ovrh, th rltonshp n on prtton hs host l tth to t to onnt t wth ts rmot ountrprt. Rltonshps t y th host l o not hol ny normton rlt to th proprts o th rltonshp ut r mntn to kp th rph strutur vl. On vnt o ths s th omplt lolty n nn th jny lst o rph no. Ths s mportnt sn trvrsl oprtons ul on top o jny lst. Th stor ws lso mo to us tr-s nxn shm (B+Tr) rthr thn n o st-s nxn shm sn ror IDs n no lonr llot n smll nrmnts. In ton, t mrton woul mk o st s nxn mpossl s rors woul n to oth ompt n stll kp n o st s on thr ID. In Hrms, srvrs r onnt n pr-to-pr shon smlr to th on prsnt n Fur 6. A lnt n onnt to ny srvr n prorm qury. Gnrlly, usr qurs r n th orm o trvrsl. To sumt qury th lnt woul rst lookup th vrtx or th strtn pont o th qury, thn sn th trvrsl qury to th srvr hostn th ntl vrtx. Th qury s orwr to th srvr ontnn th vrtx suh tht t lolty s mxmz. On th srvr s, th trvrsl qury wll pross y trvrsn th vrtx s rltonshps. I th normton s not lol to th srvr, rmot trvrsls r xut usn th lnks twn srvrs. Whn th trvrsl omplts, th qury rsults wll rturn to th lnt. 5. PERFORMANCE EVALUATION In ths ston, w prsnt th vluton o th lhtwht rprttonr mplmnt nto Hrms. 5. Exprmntl Stup All xprmnts wr xut on lustr wth 6 srvr Rsults Rmot trvrsls Srvr 3 Srvr 4 Fur 6: Ovrvw o how Hrms srvrs ntrt wth lnts n wth h othr. mhns. Eh srvr hs th ollown hrwr onurton: AMD Optron 5 ( ors), 8 GB RAM n 60GB SATA HDD. Th srvrs r onnt usn G thrnt. In h xprmnt, on Hrms nstn runs on ts own srvr. Th xprmnts r ous on typl sol ntwork tr pttrns, whh s on prvous work [8, ], r -hop trvrsls n snl ror qurs. W lso onsr -hop qurs whh r us or nlytl qurs suh s s n rommntons. Gvn th smll mtrs o sol rphs (Tl ), qurs wth mor thn -hops r mor typl o th prossn rmworks rthr thn sol rphs whr quryn most or ll o th rph t s rqur. Th sumsson o trvrsl qurs ws sr n Ston 4. 5. Dtsts Thr rl-worl tsts, nmly Orkut, DBLP, n Twttr, r us to vlut th prormn o th lhtwht rprttonr. W onsr vr pth lnth, lustrn o nt, n powr lw o nt o ths rphs to hrtrz th tsts (Tl ). Avr pth lnth s th vr lnth o th shortst pth twn ll prs o vrts. Th lustrn o nt ( vlu twn 0 n ) msurs how thtly lustr vrts r n th rph. A hh o nt mns stron (or wll onnt) ommunts xst wthn th ntwork. Fnlly, powr lw o nt shows how th numr o rltonshps nrss s usr populrty nrss. 5.3 Exprmntl Rsults Th lhtwht rprttonr s ompr wth two rnt prttonn lorthms. For n uppr oun, w us mmr o Mts mly o rprttonrs tht s splly sn or prttonn rphs whos r struton ollows powr-lw urv [6]. Ths rphs nlu sol ntworks whh r th ous o ths ppr. Svrl prvous prttonn pprohs (..[6, 8]) r Twttr Orkut DBLP Numr o nos.3 mllon 3mllon 37 thousn Numr o s 85.3 mllon 3.5 mllon mllon Numr o symmtr lnks.% 00% 00% Avr pth lnth 4. 4.5 9. Clustrn o nt unpulsh 0.67 0.634 Powr lw o nt.76.8 3.64 Tl : Summry srpton o tsts 3
ompr nst Mts s t s onsr th ol stnr or th qulty o prttonns. It s lso lxl nouh to llow ustom whts to sp n us s sonry ol or prttonn. W lso ompr th lhtwht rprttonr nst rnom hsh-s prttonn, whh s -to stnr n mny t stors u to ts ntrlz ntur n oo lo ln proprts. Not tht Mts s n o n, stt prttonn lorthm tht rqurs vry lr mount o mmory or xuton. Ths mns tht thr tonl rsours n to llot to prtton n rlo th rph vry tm th prttonr s xut, or th systm hs to tkn o n to lo t on th srvrs. Whn th srvrs wr tkn o n, t took hours to lo h o th Orkut n Twttr rphs sprtly. Ths lon pro o tm s unptl or prouton systms. Altrntvly, Hrms s umnt to run Mts on rphs, th rsour ovrh or runnn Mts woul muh hhr thn th lhtwht rprttonr. Mts mmory rqurmnts sl wth th numr o rltonshps n orsnn sts, whl th lhtwht rprttonr sls wth th numr o vrts n prttons. Sn th numr o rltonshps omnts y orrs o mntu, Mts wll rqur snntly mor rsours. For xmpl, w oun tht Mts rqurs roun 3GB n 7GB o mmory to prtton th Orkut n Twttr tsts, rsptvly; howvr, th lhtwht rprttonr only rqurs GB n 3GB or ths tsts. Whl Mts hs n xtn to support strut omputton (PrMts [4]), th mmory rqurmnts or h srvr woul stll hhr thn th lhtwht rprttonr. 5.3. Lhtwht Rprttonr Prormn Our xprmnts r rv rom rl worl worklos [, 8] n r smlr to th ons n rlt pprs [7, 4]. W rst stuy -hop trvrsls on prttons wth rnomly slt strtn vrtx. At th strt o th xprmnts, th worklo shts suh tht th rprttonr s trr, shown th prormn mpt o th rprttonr n th ssot mprovmnts. Ths sht n worklo s us y skw tr tr whr th usrs on on prtton r rnomly slt s strtn ponts or trvrsls tw s mny tms s or, rtn multpl hotspots on prtton. Ths worklo skw s ppl or th ull urton o th xprmnts tht ollow. Fur 7 prsnts th prnt o -uts mon ll s or oth lhtwht rprttonr n Mts on th skw t. As th ur shows, th rn n ut s too smll (% or lss) to snnt, n w x- Prnt -ut 60% 50% 40% 30% 0% 0% 0% Mts Hrms Orkut Twttr DBLP Fur 7: Th numr o -uts n prttonns o th lhtwht rprttonr (s omponnt o Hrms) vrsus Mts. Rsults r prsnt s prnt o -uts mon th totl numr o s. Prnt Vrts Prnt Rltonshps 00% 80% 60% 40% 0% 0% 00% 80% 60% 40% 0% 0% Orkut Twttr DBLP () Mrt vrts. Orkut Twttr DBLP Mts Hrms Mts Hrms () Chn or mrt rltonshps. Fur 8: Th numr o vrts () n rltonshps () hn or mrt s rsult o th lhtwht rprttonr (Hrms) vrsus runnn Mts. pt tht ths vry smll rn oul sht n th othr rton pnn on tors suh s qury pttrns n numr o prttons. Howvr, Fur 7 monstrts tht th lhtwht rprttonr nrts prttonns tht r lmost s oo s thos o Mts. A rprttonr s prormn s t y th mount o t tht t ns to mrt. To qunty th mpt o mrton on prormn, th prttons rsultn rom th lhtwht rprttonr n Mts r ompr wth th ntl prttonn. Fur 8 shows th numr o vrts mrt u to th skw s on th two prttonn lorthms. Th rsults show muh lowr ount or th lhtwht rprttonr. Fur 8 shows tht th lhtwht rprttonr rqurs, on vr, snntly wr hns to rltonshps ompr to Mts. Ths rn s mor xtnsv n th s o DBLP. Th lhtwht rprttonr s l to rln worklo y movn % o th vrts n out 5% o th rltonshps, whl Mts mrts n orr o mntu mor t. Ovrll, oth th numrs o vrts n rltonshps mrt r mportnt s thy rtly rlt to th prormn o th systm. W not tht, howvr, th rltonshp ount hs hhr mpt on prormn s ths numr wll nrlly muh hhr n rltonshp rors r lrr, n thus mor xpnsv to mrt. Fur 9 prsnts th rt throuhput prormn (.., th numr o vst vrts) o 6 mhns (prttons) usn th thr tsts. In ths xprmnts, 3 lnts onurrntly sumt -hop trvrsl rqusts usn th prvously sr skw. Bor th xprmnts strt, Mts s ppl to orm n ntl prttonn whh hs tr wth no skw so s to rmov prttonn s y strtn out wth oo prttonn. On th xprmnt strts, th mnton skw s ppl; ths skw trrs th rprttonn lorthm, whos prormn s ompr wth runnn Mts tr th skw. For Orkut, rsults show tht y ntroun th skw n trrn th lhtwht rprttonr,.7 tms mprovmnt n prormn n 33
A. Throuhput (vrts) +08.5+08 +08 5+07 0 -hop () Orkut Mts Hrms Rnom -hop Throuhput (vrts/s) 0000 5000 0000 5000 0 Orkut DBLP Twttr 0% 0% 0% 30% A. Throuhput (vrts) A. Throuhput (vrts).4+08.+08 +08 8+07 6+07 4+07 +07 0 +08 8+07 6+07 4+07 +07 0 -hop () Twttr -hop () DBLP Mts Hrms Rnom -hop Mts Hrms Rnom -hop Fur 9: Art throuhput or th thr tsts. otn ovr rnom prttonn whl Mts shows 6% mprovmnt ovr th lhtwht rprttonr. Fur 9 shows th rt throuhput whl runnn th Twttr tst. Th rsults show vry smlr prormn or th lhtwht rprttonr n Mts. Fnlly, Fur 9 shows th rsults rlt to th DBLP xprmnts tht nt thr s no prormn rton u to th lhtwht rprttonr, whh nts rom th rltvly smll hns rqur y th lorthm. In t, s on rsults rom Fur 9, th prormn rn s not snnt. Intrstnly, th DBLP tst s th only tst or whh th prormn rns r not notl u to th hhly lustr n wll prtton tst. Gvn n -ut o l5%, th hh qury lolty mns tht prtton skws hv lttl t on prormn s thy o not sht worklos towrs prtton orrs. 5.3. -hop Prormn Th prvous ston ous on -hop trvrsls. In ths ston, w onut -hop xprmnts sn thy r rprsnttv oprtons us or rommntons,.., rn, vnts or rommntons n sol ntworks. Fur 9 shows th rt prormn o th systm runnn wth th thr t-sts. Th -hop xprmntl rsults r smlr to -hop xpt or th rs n prormn. To nlyz why ths rs ours n th -hop s, w osrv tht th rto twn th numr o vrts n th qury rspons vrsus th numr o vrts pross s or oth Mts n Rnom prttonrs n s o - Fur 0: Throuhput whl vryn th wrt rt. hop trvrsl qurs, whl ths rtos r to 0.39 n 0.8, rsptvly, or -hop trvrsl qurs. Th rson -hop trvrsls rturn lss vrts thn wht t prosss s us som vrts r vst multpl tms urn trvrsl whl th qury rspons ontns only on opy o th qur vrts. Sn sol ntworks xht hh lustrn, hh rton o pross vrts r ss multpl tms wthn th sm trvrsl. 5.3.3 Mx R/Wrt Exprmnts Th ollown xprmnts tst how th systm hnls mx tr worklo n volvn sol ntwork rphs. Th xprmnts nsrt t throuh rnom wrt tr. Th lhtwht rprttonr n Hrms s thn run to mprov th qulty o prttonn tr rors r nsrt. Rsults o ths xprmnts r shown n Fur 0 n nt lttl prormn rton wth nrsn wrt tr. A 0% wrt mx (wth 90% rs) show 3% rs n prormn, whl 0% wrts (80% rs) n 30% wrts (70% rs) show 5% n 7% rss n throuhput (vrts pr son) prormn. Th smll prormn mpt o wrts s ttrut to how B+Trs stor normton n th monotonlly nrsn ID nrtor n Hrms. Sn h nw ror wll t th nxt, hhst ID, nsrtons n th B+Tr lwys hppn n th lst p n squntl mnnr. Ths trnslts to squntl wrts to sk n th B+Tr rqurs hn only th lst p to prorm nsrtons. To vry tht th qulty o th rph s hh tr th nsrtons nsh, w rn 00% r tr n ompr th throuhput wth th rsults or Mts. Rsults show tht Hrms ws l to kp prtton qulty n systm prormn wthn % o Mts, whh monstrts th tvnss n ny o Hrms s lhtwht rprttonr. 5.3.4 Snstvty o Rprttonr Prmtrs Rll rom Ston 3 tht n h trton o th lorthm, th lhtwht rprttonr movs t most k vrts rom h prtton. Hr, w xmn how th vlu o k ts th outom o th lorthm. W run th lhtwht rprttonr wth thr rnt vlus o k (500, 000, n 000). Th rst osrvton s tht th lo-ln tor slhtly rs rom.05 or k = 500 to.6 or k =000. Ths s us, s mnton rlr, lrr vlus o k rsult n smultnous mrton o mny vrts to prttons whh hv rntly om populr (u to hostn populr vrts). Consquntly, w xlu vlus o k lr thn 000 rom th xprmnt s thy rsult n mln tor mor thn th mxmum llow vlu o =. (th ult vlu o n th systm). Nxt, w vr how 34
Numr o -uts +06 800000 600000 400000 00000 0 Orkut DBLP Twttr Intl k=500 k=000 k=000 Fur : Th numr o -uts or rnt vlus o k. Th numrs r sl y 0 or Orkut tst. mny trtons r rqur or th lorthms to onvr. Tl shows th numr o rqur trtons or rnt vlus o k. As xpt, lrr vlus o k rsult n slhtly str onvrn sn thy mov mor vrts pr trton. Fnlly, w onsr th qulty o prttonn whn rnt vlus o k r us. As Fur shows, th numr o -uts n th nl prttonn s lmost th sm or rnt vlus o k, ntn tht th qulty o prttonn os not pn on ths vlu. To summrz, lrr vlus o k rsult n str onvrn whl nrsn th lo mln; t th sm tm, th vlu o k os not hv snnt t on th numr o -uts. 6. RELATED WORK Prvous work on rph tss ous on ntrlz pproh [7, 3, ]. Som o ths systms,.., No4j, hv hh vllty mo ut ths provs lmt sllty []. HyprrphDB [7] provs mss pssn API twn srvr nstns, howvr thr s no prtton mnmnt systm n no support or struton-wr quryn. In ton, th ous o h o ths systms s rnt. For xmpl HyprGrphDB ouss mor on th lxlty o ts stor systm, llown usrs to stor rnt typs o ojts. Non o ths rph tss support t prttonn or strut rph quryn. SPAR [7] n Ttn [5] r mlwr tht run on top o ky-vlu stors or rltonl tss to prov on-th-ly prttonn n rplton o t. Howvr, SPAR s rstrt to kpn only on-hop nhours lol whl Hrms n support nrl rmot trvrsls. Ttn uss only stt hsh-s, rnom prttonn shm support y th unrlyn ky-vlu stor. Ths s n ontrst to th ynm rprttonn tht th lhtwht rprttonr n Hrms uss. Unlk our systm, SEDGE [36] ouss on prtton rplton n whh orsnn st rts nos whh r thn mth wth nos n nothr prtton. SEDGE s not sn to hnl ynm worklo hns tht Hrms s sn or. An pproh tht prorms y- Twttr Orkut DBLP k =500 30 30 40 k =000 7 7 3 k =000 0 0 Tl : Th numr o trtons tr whh th lhtwht rprttonr onvrs. nm rplton s sr n [4] ut t os not nvolv systm tht os on-th-ly prttonn. Horton [9] s qury xuton nn ult or strut n-mmory rphs. Howvr t only provs usr strton, lvn prttonn to xstn o n lorthms. A strmn lorthm usn smpl hursts hs n propos n [3] ut ouss on mprovn ntl t plmnt unlk th ynm rprttonn n Hrms. In [33] n mprov hurst or ttr prttonn qulty s propos; howvr, th prtton mln n th rsultn solutons n snntly mpt. Whl ths pproh xtns th onpt y svn stt n llown utur t los to rus stt rom prvous runs, th lorthm ns to prs th ull tst n, whh n l to xpnsv oprtons n lr mrtons. Svrl Prl-lk [] systms,.., [, 6], hv n propos. Ths systms r qut rnt rom Hrms n tht thy rss only n-mmory th prossn o rph nlyts qurs rthr thn th prsstnt mnmnt o rph t tht Hrms s sn to support. In [35], wht mult-lvl prttonn lorthm s propos whh s s on ll propton (ommunty tton thnqu). Th -ut rs n ths pproh n smll whl ommunts mht tt mproprly us o th wht pproh. Thr mult-lvl lorthm os not urnt ommunts r prsrv ovr multpl lls o th lorthm n n l to lr mrtons smlr to Mts. Som rph prttonn lorthms r xprmntlly ompr n [9]. Amon ths, DDC [4] s th only strut lorthm tht tns to mnmz th numr o -uts, ut th rsultn prttons o ths pproh my not wll-ln [8, 9]. J-B-J [8] ms strut lorthm or ln prttonn wthout lol knowl. In ths lorthm, th ntl prtton o h no s slt unormly t rnom; ths nsurs ln prttonn. In orr to rs th numr o -uts, vrts r swpp twn prttons. Ths wll nsur mntnn ln prttonn vrts hv x, unorm whts; howvr, ths s usully not th s or sol ntworks. An ptv lorthm or rprttonn lr-sl rphs hs th ojtv o mnmzn th numr o -uts wth rspt to rtn pts or prttons [34]. Th rsultn prttonns mht not ln th pty onstrnts r mntn. Morovr, t s ssum tht vrts hv x n unorm whts, whh s usully not th s or sol ntworks. Atonlly, thr work s trt or rph nlyts rthr thn th prsstnt mnmnt o rph t tht Hrms s sn to support. 7. CONCLUSION W prsnt n onln, trtv, lhtwht rprttonr sn to nrs qury lolty, thry rsn ntwork lo n mntnn lo ln ross prttons. Th lhtwht rprttonr tvly pts prttonn to vryn qury worklos n th ontnuous voluton o th rph strutur usn only smll mount o uxlry t. W mplmnt our lhtwht rprttonr nto Hrms, whh w ult to xtn th opn sour No4j ts systm to support th prttonn o sol ntwork t ross multpl ts srvrs. Th xprmntl vluton o th lorthm on rl-worl tsts shows 35
tht th rprttonr s l to hnl hns n qury worklos whl mntnn oo prormn. Th ovrh o th rprttonr s mnml, proun sustn prormn omprl to tht o stt, o n, prttonn usn Mts. Our vluton shows szl prormn ns ovr rnom, hsh-s prttonn, whh s wly us or ts prttonn. 8. REFERENCES [] No4j. http://www.no4j.or/. [] No4j - hptr 6. hh vllty. http://os.no4j.or/hunk/stl/h.html. [3] Nothnoloy. http://www.nothnoloy.om/ustomrs/. [4] Prmts. http://lros.t.umn.u/khom/mts/prmts /ovrvw. [5] Ttn. http://thnkurlus.thu.om/ttn/. [6] Aou-Rjl, A., n Kryps, G. Multlvl lorthms or prttonn powr-lw rphs. In pro. IPDPS (006), pp. 4 4. [7] Anrv, K., n Räk, H. Bln rph prttonn. Tho. Comput. Syst. 39, 6(006), 99 939. [8] Armstron, T. G., Ponnknt, V., Borthkur, D., n Cllhn, M. Lnknh: ts nhmrk s on th ook sol rph. In pro. SIGMOD (03), pp. 85 96. [9] Avruh, A., n Numnn, M. Prttonn rph tss. Mstr s thss, KTH Shool o Computr Sn n Communton, 03. [0] Brnstn, P. A., n Nwomr, E. Prnpls o Trnston Prossn, n. 009. [] Chn, R., Yn, M., Wn, X., Cho, B., H, B., n L, X. Improvn lr rph prossn on prtton rphs n th lou. In pro. SoCC (0), pp. 3. [] Fu, C. M., n Mtthyss, R. M. A lnr-tm hurst or mprovn ntwork prttons. In pro. DAC (98), pp. 75 8. [3] Gry, M. R., n Johnson, D. S. Computrs n Intrtlty; A Gu to th Thory o NP-Compltnss. 990. [4] Ghwlr, J., n Myrhnk, H. A strut usv hurst or lustrn vrtul PP supromputr. In pro. IPDPS (00), pp. 8. [5] Golk, J. Anlyzn th Sol W. Elsvr In., 03. [6] Hn, M., Duj, K., Ammr, K., Özsu, M. T., Wn, X., n Jn, T. An xprmntl omprson o prl-lk rph prossn systms. PVLDB 7, (04), 047 058. [7] Iornov, B. Hyprrph: A nrlz rph ts. In pro. WAIM Workshops (00), pp. 5 36. [8] Kryps, G., n Kumr, V. Mts - unstrutur rph prttonn n sprs mtrx orrn systm (vrs. ). Th. rp., Unv. o Mnnsot, 995. [9] Kryps, G., n Kumr, V. A st n hh qulty multlvl shm or prttonn rrulr rphs. SIAM J. S. Comput. 0, (998), 359 39. [0] Krnhn, B. W., n Ln, S. An E nt Hurst Prour or Prttonn Grphs. Th Bll systm thnl journl 49, (970),9 307. [] Kwk, H., L, C., Prk, H., n Moon, S. Wht s Twttr, sol ntwork or nws m? In Pro. WWW (00), pp. 59 600. [] Mlwz, G., Austrn, M. H., Bk, A. J., Dhnrt, J. C., Horn, I., Lsr, N., n Czjkowsk, G. Prl: systm or lr-sl rph prossn. In pro. SIGMOD (00). [3] Mrtínz-Bzn, N., Muntés-Mulro, V., S. Gómz-Vllmor, S., Nn, J., Sánhz-Mrtínz, M., n Lrr-Py, J. Dx: hh-prormn xplorton on lr rphs or normton rtrvl. In pro. CIKM (007). [4] Monl, J., n Dshpn, A. Mnn lr ynm rphs ntly. In pro. SIGMOD (0), pp. 45 56. [5] Nor, D., Kml, S., Duj, K., n Chn, L. Hrms: Dynm prttonn or strut sol ntwork rph tss. Th. Rp. CS-05-0, Shool o Computr Sn, Unvrsty o Wtrloo, 05. [6] Nshmur, J., n Unr, J. Rstrmn rph prttonn: smpl vrstl lorthms or vn lnn. In pro. KDD (03), pp. 06 4. [7] Pujol, J., Errmll, V., Snos, G., Yn, X., Loutrs, N., Chhr, P., n Roruz, P. Th lttl nn(s) tht oul: sln onln sol ntworks. SIGCOMM CCR 40, 4(00), 375 386. [8] Rhmn, F., Pyrh, A. H., Grzjusks, S., Jlsty, M., n Hr, S. JA-BE-JA: A strut lorthm or ln rph prttonn. In pro. SASO (03), pp. 5 60. [9] Srwt, M., Elnkty, S., H, Y., n Klot, G. Horton: Onln qury xuton nn or lr strut rphs. In pro. ICDE (0). [30] Shlol, K., Kryps, G., n Kumr, V. Multlvl uson shms or rprttonn o ptv msh. TR 97-03, U. Mnnsot (997). [3] Shlol, K., Kryps, G., n Kumr, V. Multlvl uson shms or rprttonn o ptv mshs. J. Prlll Dstr. Comput. 47, (997), 09 4. [3] Stnton, I., n Klot, G. Strmn rph prttonn or lr strut rphs. In pro. KDD (0), pp. 30. [33] Tsourkks, C. E., Gkntss, C., Runov, B., n Vojnov, M. Fnnl: Strmn rph prttonn or mssv sl rphs. In pro. WSDM (04). [34] Vquro, L. M., Curo, F., Loothts, D., n Mrtll, C. Aptv prttonn or lr-sl ynm rphs. In pro. ICDCS (04), pp. 44 53. [35] Wn, L., Xo, Y., Sho, B., n Wn, H. How to prtton llon-no rph. In pro. ICDE (04). [36] Yn, S., Yn, X., Zon, B., n Khn, A. Towrs tv prtton mnmnt or lr rphs. In pro. SIGMOD (0), pp. 57 58. 36