• Non ci sono risultati.

Nodi Aggregat

3.1 Setup dei Test

P e r i te s t è s ta to i mp i e ga to un e s tra t to d i un d ata ba s e O LAP : IP UM S.

I n t egra te d P u bl ic U se M ic ro data Se ri e s ( IP UM S) [8] è l ’ar c hi vio d ati

s ul l a p opo la zio ne a l i ve ll o i nd i vid ua l e p i ù gra nde a l mo ndo . E s so è c o m- po s to da una s er ie d i camp i o ni st a t i s ti c i d e ll a p opo la z io ne d e gli St a ti U nit i ( IP U MS -U S A) o de l la pop ol az io ne mo n d ia le ( IPU M S -I nt er na tio na l). P er l a p rec i s io ne, IP UM S( -U S A) è st a to co s tr ui to co n i d at i for ni t i da i c e ns i - me nt i A me r i ca ni e ffe tt uat i da l i l 1980 e a l 2 000. Q ue s to da ta ba se p er m e t te d i e se gui re un a cc ura ta a na li s i s ui ca mb i a me nt i a l ungo ter mi ne de l la p o - po la z io ne s t at uni te ns e e mo nd ia le, gra z ie al la gra nde q ua nt it à e q ua li t à di i nfor ma z i o ni c he e s so r ac c hi ud e.

Essendo un dataset composto da un’enorme mole di dati, di svariato ge- n e re , e s so p er me t t erà d i e ffe tt uar e d ei t e s t d i q ua l it à c he po s s a no i n q ua l- c he mo do fa r l uc e s ui me cc a ni s mi c he s o no al la b a se de l le i nte rro gaz ioni d i Ne o4j G rap h D B M S . .

3.1.1 Struttura ed organizzazione dei dati

La fi gur a so tto s ta nt e lo s c he ma co nc et t ual e d i IP UM S mo de ll a to ut i li z - z a ndo i l for ma l i s mo Da ta Fa ct Mo de l [4 ] :

Ogni campione statistico della popolazione è rappresentato dell’entità C E N S U S, ed è cl a s si fi cat o s eco ndo la c i tt à d i p ro ve nie nza , l ’a nno i n c ui è s t a to c e nsi to , l ’et ni a di ap par te ne nza , i l s e s so, e l ’o cc up az io ne . Q ue s te c i nq ue ca t e gor ie i n ge r go t ec nic o ve ngo no c hi a ma t e d im en s ion i .

I va lor i di o gni d i me ns i o ne so no s tr utt ura t i i n ge ra rc hie , d e fi ne ndo cos ì a ggr e ga zi o ni a d i ve rs i live l l i di de tt a glio . P er e se mp i o, o gni ci t tà , rap pr e- s e nt at a d al l ’at tr ib uto “C IT Y ” , app ar ti e ne a d un p ar ti co lar e s ta to ( ST AT E) d i una d et er mi na t a r e gio ne ( R EG IO N) ( ALLC I T Y è un c a mpo padr e che r appr e se nt a la tot a li tà de l le c i tt à). Gra z ie a q ue st a or ga niz za zio ne è po s s i - bile rispondere a delle domande come “qual è la media degli stipendi della popolazione di un determinato stato oppure dell’intera regione ?”, evitando c o sì , d i li mi t a re l ’a nal i s i al l a so la c it tà o al l ’i nte ra na z io ne .

Lo sc he ma mo s tr ato pre ce de nte me nt e no n è il vero a spe t to d el la s tr ut t u - r a de l la b a se d at i IP UM S , ma è uno s c he ma c he pr o ve ni e nt e da l mo ndo O LAP . Il mod el lo lo gi co ut il i zz ato è i nve ce de tt o “s t ar s c he ma ”.

Lo s c he ma d el la fi gura 3 .2 è i l ve ro a spe t to di IP UM S. La s ua s tr utt ura è na ta e co nce pi ta p er il mo nd o re la z io na l e ed è co mp o st a da un a gra nde t ab el l a , de tt a F ac t T abl e (T ab el l a d ei fat t i) i n c ui o gni t upl a co nt ie ne i da ti s t a ti s t ic i d el l a pop ol az ione r a ggr uppa t i p er ci t tà , s e s so , oc c upa z io ne , et nia e a nno di c e ns i me nto , re per ib i li pe r me z zo de l le c i nq ue ta be ll e di m en si o -

na l i. I no lt re , q ue st ’ul t ime t ab e ll e so no i n p r ima fo r ma no rm al e (1 - NF ),

o vvero i d at i d e sc ri tt i vi ve ngo no ri pe t uti i n o gni t up la . Anc he se i n 1 -NF , i l da ta ba s e è i n un s t ato c oer e nte e co ns i st e nte .

Le tab el l e d i me ns io na li ve ngo no ma nt e nute d eno r ma l iz za te per c hé l e pr e st az io ni d e gl i R DB MS c al a no q ual o ra s i e ffet t ua un j oi n tr a d ue gra nd i r el az io ni e q ua ndo s i a ume nt a no il nume ro d i j oi n. I l co nc e tto a ppe na d e - s c ri t to è i n e ffet t i l a ve ra mo t i vaz io ne pe r l a q ual e so no na ti i Gr aph D B M S .

3.1.2 Traduzione della base dati

I l pr i mo pa s so p er r a ggiunge r e i l fi ne ul t i mo d i q ue st a te s i è s ta to q ue l - l o tra s porr e la b a se da ti s u ll a nuo va t ec no lo gia , o vvero è s ta to tr ado tto IP UM S da l la s ua for ma re l az io nal e ad una a gr a fo.

La fi gura 3 .3 mo s tr a la s t r utt ura ge nera l e d i IP U M S ne ll a s ua for ma a gr a fo . La pr i ma di ffe re nz a c he s i no ta tra il mo de l lo re l az io na l e e q ue l lo a gr a fo è c he le “ta be ll e di me ns i o na li so no st at e nor ma l i z za te ”, cr ea nd o p er o gni l i vel lo ge rar c hico un nod o co n un p ropr ia La b el . U n’al tr a d i ffer e nza s o no gl i ID , s o no st at i a ggi unt i d ei c a mp i c he fungo no d a id e nti fi ca tori uni vo ci (ID C IT Y, I D STAT E , I D RE GI ON , e tc) , i q ua l i ve ngo no i mp i e gati d a un pro gra mma , cr ea to appo s it a me nt e, p er r itr a s for ma r e l a ba s e da t i a gr a fo i n una re la zi o na le e d a ss i c ur ar si c he l a tr ad uzi o ne de i da t i s ia a vve - nut a co rre t ta me nt e .

Con quest’ultimo appunto è possibile notare la vera e più grande diffe- renza tra lo schema relazionale e quello a grafo: l’assenza delle FOREING K E Y. U na gr ap h d at aba se no n ne ce s s it a l a pre s e nz a de l le c hi a vi i mp ort a te, d ato c he nas ce co n l ’id ea d i e li mi na r e q ue s to “li mi t e ” . Q ual or a so r ga la ne c e s si tà d i r eper ir e l e info r ma z io ni i n b a se al mod o co n c ui s i re la z io na no t ra di e s se , no n s ar à pi ù ne c e s sar io e ffet t uare l e o nero s e op era z io ni di j oin tra le tabelle, ma basterà semplicemente “percorrere” la relazioni che co n- ne t to no i va ri nod i d e l gra fo.

IP UM S è un d at aba s e comp o s to da mi l io ni d i re cor d, ma da to c he Neo4j è una te c no lo gia mo lt o es i ge nt e d al p unto di vi s ta d el le r i sor se hard wa r e, è s t a to de ci s o di no n la vora re co n to t al i tà d ei d at i d i IP U M S ma so lo c o n un s o tt o i nsi e me d i e s s i. I no lt re , pe r s t ud iar e me gl io q ue s ta nuo va te c no lo gi a s o no s ta t i cr ea t i d ue d ive r si d a ta s et d i IP U M S, i q ua li so no id e nti ci da l p unto d i vi s ta s tr utt ura le , p erò d i fferi s co no nel la q ua nt i tà d i d a ti c he co n - t e ngo no, i l pr i mo po s si ed e 500 '000 nodi / t up le Ce ns us / F ac t, i l sec o ndo un mi l i o n e. E ffe t t ua ndo i t es t s u q ue st i d ue d at a se t è po s s ib il e s t ud i are c o me Neo4j scali all’aumentare delle informazioni da gestire, inoltre consente a na li zz ar e se e q ua l e d ei d ue DB M S r ie s ce a s ca la re me gl io.

P e r po ter e ffet t uare l ’op era z io ne d i co nver si o ne / cre az io ne de l la b a se d at i è st at o cr ea to un pro gra mma a ppo si to , i l q ua l e ha l a ca pa ci tà d i co ll e - ga r si ad un se r ve r Or ac le , e s tra r ne i da t i e c o nve rt ir l i ne ll a co rr is pe tt i va s t r utt ura a gra fo ed i nse ri r li a ll ’i nt er no di un s er ve r Neo 4j .

3.1.3 I Data Set e i Database

I t e st co ns i s to no ne l prend er e no ta d ei t e mp i di e s ec uz io ne d i una s er ie d i Q uer y ( si a Sq l c he Cyp he r ), le q ual i s o no s tat e e s e gui t e s u d ue d at a se t. P e r o gni da ta s e t è st a to c o str ui to un Da t ab se che pr es e nta s s e gl i i nd ici e uno c he no n gli pre s e nta s s e , p er un t ot al e d i q ua t tro t ip i d i ba s e d at i p er t e c no lo gia :

1 ) I P U MS 500 K : è il no me da to a ll a b a se da t i IP U M S c he p os s i ede 50 0 '00 0 e l e me nt i d i t ipo Ce ns us . Q ue s to da taba s e no n p re vede l a pr e se nza d i i nd ic i.

2 ) I P U MS 500 K I D X : po s sie de gl i st e s si id e nti ci da t i d el la pre ced e nte base dati, ma al contrario di quest’ultima, su di esso sono stati cre a- t i de gl i i nd ic i.

3 ) I P U MS 1M : i da t i d e ll e sue ta be ll e / nod i d i me ns i ona l i s o no gl i st e s si d i IP U M S500 K, ma a l c ont r ari o di q ue s t ’ult i mo co nt ie ne l s uo i nte r - no un mi l io ne di Ce ns us (c ir ca) . S u d i e s so no n s o no s ta ti c os tr ui ti i nd ic i.

4 ) I P U MS 1M I D X : a na lo game nt e ad IP U M S500 K ID X , q ue st o d at aba se è l a cop ia di IP UM S1 M, s u c ui so no st a ti co s tr ui ti d e gl i i nd i ci .

Ad o gni e se c uz io ne de l le q uer y s o no s ta t i s e mp re s vuot at e l e me mo r ie d el- l e d ue te c no lo gie . O vvero , ad Or ac le è s ta ta l iber at a la me mo r i a c ac he e i l po ol S Q L co ndi vi so , per me z zo de l s e gue nt e s cr ip t:

alter system flush buffer_cache; alter system flush shared_pool;

I nve ce, per q ua nto ri guard a Neo 4j , da to c he no n e si s to co ma nd i di scr i p - t i ng c he per me t t a no d i li be rar e la me mo r ia c ac he , p ri ma di e s e gui re o gni s i ngo la i nt erro gaz io ne è s t a to r i a vvia to i l se r ve r.

U na vo lt a s e gna t i i te mp i d i e se c uz io ne d e ll e que r y , so no s t at i e ffet t uat i d e gl i s t ud i pe r ri ca var ne d el le co ns ide ra zi o ni c he po s s a no i n q ual c he mo do fa r l uce s ul le c ara t ter i s tic he di N eo4j , e i n ge ner al e de i Gr ap h DB MS .

3.1.4 Configurazione

I t e st so no st at i e se gui ti s u una ma c c hi na co n le se gue nt i car at t eri s t i - c he :

- P r oce s s or e : I nt el ® C ore™ i5 -M4 30 @ 2.27 G Hz 1° Ge ner az io ne , co n

3 MB d i ca c he d i li ve llo 2 .

- M em o ria R AM : 8Gb (2 x S O -DI MM D D R3 S D R AM d a 409 6Mb )

- S i s t em a Op e ra ti vo : W i ndo ws 7 P ro fe s sio na l 64 bit .

- D i s co R ig ido : S AT A d a 64 0 GB a 5.4 00 r p m .

S u q ue s to co mp ut er è s tat o i ns ta ll a to un ser ver Or ac le 11 g v2 :

- I n s t al la z io ne di T ipo : Ent e rpr ic e E di ti o n

- S e t d i C a rat t e ri : P r ede fini t o (W E8 MS W I N1252)

- S I D : O R A11 G M AT P C

N eo 4j no n nece s s i ta d i una i ns ta ll az io ne ver a e pro pri a, i n e ffet t i i l s e r - ve r co nsi s t e i n una ca rt el l a c o nt e ne nt e t ut t a l a s tr ut t ur a ne ce s s ar i a al l a sua e s ec uz io ne. P er lo s vi l upp o d i q ue st a t e si è s ta to i mp ie ga to N eo4j E nt e r -

p r ic e E d it io n v er s io n e 2 .0 .1 . P er s fr ut tar e il pi ù p o ss ib i le le s ue po te nzi a -

l i tà è st a ta abi l it a ta la H i gh -P e r for ma nc e C ac he e la funz io nal i tà d i lo g - gi ng. I nol tr e, p er e ffe tt ua re de i t es t a cc ur a ti c he no n pre gi ud i ca s se ro ne s- s una d el l e d ue te c no lo gie , al ser ver N eo4j e al se r ve r Ora l e so no st at i d e - d ic at i lo s t es s o a mmo nt a re d i me mo r ia , e da to che N eo4j ne ce s s it a di una d et er mi na t a q ua nt it à di R AM b a sa ta s ull a mo l e d i da ti c he de ve ge s t ire , la s c e lt a d e ll a q ua nt it à d i me mo r i a d a ded ic ar e ai s e r ve r è s ta ta e ffet t ua t a b a - s a ndo s i s ull e r i sor s e hard wa r e di ba s e r ic hi e st e d a Neo4j . I l c a lco lo de lle r i sor s e d a d edi ca re al se r ve r Neo4j è s ta to fa tto per me zz o de l we b tool presente sul sito della NeoTecnology all’i ndirizzo ht t p: / / www. ne o t ec hno lo gy. c o m/ ha rd wa r e -s iz i ng/.

T a b el le de ll a me mo r i a d e d ic ata a i s er ver :

Documenti correlati