AppletTalk.com Forum Index AppletTalk.com
Java discussions newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Pattern dao: più query o query più complesse?

 
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java (Italian)
View previous topic :: View next topic  
Author Message
Raffaele Castagno
Guest





PostPosted: Thu May 27, 2004 1:52 pm    Post subject: Pattern dao: più query o query più complesse? Reply with quote



Questione:
ho un DAO che deve estrarre da DB dei dati presenti su diverse tabelle.

Per ogni tabella c'è un ValueObject, i quali vengono raggruppati per
ottenere il VO finale.

E' meglio fare tanti metodi che estraggano i record da una sola tabella, e
richiamarli in sequenza nel metodo del dao che recupera il VO principale
(tante query piccole), oppure comporre un'unica grande query che tira giu
tutto (appunto, un'unica grossa query, con tante join).

Se può servire, sono su JDK1.3.1, ejbcontainer BEA Weblogic 7, server DB
Oracle8.

Grazie

Raffaele

--
Raffaele Castagno

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad [email]abuse (AT) newsland (DOT) it[/email]


Back to top
cccc
Guest





PostPosted: Thu May 27, 2004 2:12 pm    Post subject: Re: Pattern dao: più query o query più complesse? Reply with quote



Entrambe le soluzioni hanno dei vantaggi:

a) Un'unica query ti permette di interrogare il db una sola volta con ovvi
vantaggi di velocità.
b) Più query distinte facilitano la riusabilità del codice.

Credo che la scelta debba essere contestualizzata alla criticità della
procedura .

Ciao,
CC

"Raffaele Castagno" <aragorn_832000 (AT) yahoo (DOT) SEAL.it> ha scritto nel messaggio
news:c94rqk$30s$1 (AT) news (DOT) newsland.it...
Quote:
Questione:
ho un DAO che deve estrarre da DB dei dati presenti su diverse tabelle.

Per ogni tabella c'è un ValueObject, i quali vengono raggruppati per
ottenere il VO finale.

E' meglio fare tanti metodi che estraggano i record da una sola tabella, e
richiamarli in sequenza nel metodo del dao che recupera il VO principale
(tante query piccole), oppure comporre un'unica grande query che tira giu
tutto (appunto, un'unica grossa query, con tante join).

Se può servire, sono su JDK1.3.1, ejbcontainer BEA Weblogic 7, server DB
Oracle8.

Grazie

Raffaele

--
Raffaele Castagno

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad [email]abuse (AT) newsland (DOT) it[/email]





Back to top
Raffaele Castagno
Guest





PostPosted: Thu May 27, 2004 2:15 pm    Post subject: Re: Pattern dao: più query o query più complesse? Reply with quote



cccc ha scritto:

Quote:
Credo che la scelta debba essere contestualizzata alla criticità della
procedura .

Devo popolarci un elenco, nulla di particolarmente critico.

Raffaele

--
Raffaele Castagno

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad [email]abuse (AT) newsland (DOT) it[/email]



Back to top
cccc
Guest





PostPosted: Thu May 27, 2004 2:32 pm    Post subject: Re: Pattern dao: più query o query più complesse? Reply with quote

Se l'elenco è molto grosso (o tenderà ad esserlo in futuro) l'utilizzo di 2
o più query per ogni record potrebbe rallentare molto la tua procedura.

Nel dubbio ti conviene optare per un'unica query.

Ciao,
CC

"Raffaele Castagno" <aragorn_832000 (AT) yahoo (DOT) SEAL.it> ha scritto nel messaggio
news:c94t67$h3n$1 (AT) news (DOT) newsland.it...
Quote:
cccc ha scritto:

Credo che la scelta debba essere contestualizzata alla criticità della
procedura .

Devo popolarci un elenco, nulla di particolarmente critico.

Raffaele

--
Raffaele Castagno

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad [email]abuse (AT) newsland (DOT) it[/email]





Back to top
Raffaele Castagno
Guest





PostPosted: Thu May 27, 2004 2:43 pm    Post subject: Re: Pattern dao: più query o query più complesse? Reply with quote

cccc ha scritto:

Quote:
Se l'elenco è molto grosso (o tenderà ad esserlo in futuro) l'utilizzo di 2
o più query per ogni record potrebbe rallentare molto la tua procedura.

Nel dubbio ti conviene optare per un'unica query.

L'elenco risultante non dovrebbe superare l'ordine delle centinaia di
record.

Ci sono alcune piccole tabelle di decodifica da poche decine di record,
una tabella nell'ordine dei 100000 record e altre due nell'ordine del
milione di record.

Consigli?

Raffaele

--
Raffaele Castagno

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad [email]abuse (AT) newsland (DOT) it[/email]



Back to top
cccc
Guest





PostPosted: Thu May 27, 2004 2:53 pm    Post subject: Re: Pattern dao: più query o query più complesse? Reply with quote

Fatti un vista sulla base dati, con tutti i dati che ti servono.
A quel punto usa il DAO e il VO di questa nuova vista.

I vantaggi sono:
a) la costruzione dei record da pubblicare avviene nel db
b) lanci una sola query

I difetti:
a) nel data base avrai ridondanza di dati. Anche se è improprio parlare di
ridondanza perchè trattasi di una vista e non di una tabella vera e propria.

Ciao,
CC

"Raffaele Castagno" <aragorn_832000 (AT) yahoo (DOT) SEAL.it> ha scritto nel messaggio
news:c94upm$2gf$1 (AT) news (DOT) newsland.it...
Quote:
cccc ha scritto:

Se l'elenco è molto grosso (o tenderà ad esserlo in futuro) l'utilizzo
di 2
o più query per ogni record potrebbe rallentare molto la tua procedura.

Nel dubbio ti conviene optare per un'unica query.

L'elenco risultante non dovrebbe superare l'ordine delle centinaia di
record.

Ci sono alcune piccole tabelle di decodifica da poche decine di record,
una tabella nell'ordine dei 100000 record e altre due nell'ordine del
milione di record.

Consigli?

Raffaele

--
Raffaele Castagno

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad [email]abuse (AT) newsland (DOT) it[/email]





Back to top
Vincent Vega
Guest





PostPosted: Fri May 28, 2004 7:58 am    Post subject: Re: Pattern dao: più query o query più complesse? Reply with quote

Raffaele Castagno wrote:


Quote:
E' meglio fare tanti metodi che estraggano i record da una sola tabella, e
richiamarli in sequenza nel metodo del dao che recupera il VO principale
(tante query piccole), oppure comporre un'unica grande query che tira giu
tutto (appunto, un'unica grossa query, con tante join).

A mio parere, è corretto che il DAO valueObject rappresenti il resultset
di una query. Quindi il VO principale dovrebbe corrispondere, in linea
di principio, al risultato di un unica query.
Il limite dovrebbe essere (a mio avviso) il grado di ottimizzazione che
riesci ad ottenere per la query: se ad esempio la query è tale per cui
non riesci ad ottenere accessi ad indici corretti e performance
adeguate, allora è il caso di "spezzare" il reperimento dati sul database.
Per il resto credo sia il caso di far lavorare un po' l'ottimizzatore di
oracle :-)

Back to top
Raffaele Castagno
Guest





PostPosted: Fri May 28, 2004 8:39 am    Post subject: Re: Pattern dao: più query o query più complesse? Reply with quote

Vincent Vega ha scritto:

Quote:
A mio parere, è corretto che il DAO valueObject rappresenti il resultset
di una query. Quindi il VO principale dovrebbe corrispondere, in linea
di principio, al risultato di un unica query.

Mi sfugge il concetto...

DAO, VO e VO aggregator sono tre pattern differenti...

io ho il DAO che accede al DB, i VO che contengono i dati, e il VO
aggregator che raggruppa vari VO per restituire il risultato desiderato...

Nello specifico ho 5 VO che contengono ogniuno i dati di una tabella, e
nel DAO ho i singoli metodi che estraggono i dati da quelle tabelle usando
i suddetto VO.

Il mio dilemma è: per comporre il VO aggregator, uso i singoli metodi (che
comunque devo gia creare perchè mi servono altrove) oppure creo un nuovo
metodo che fa un'unica grossa query?

Raffaele

--
Raffaele Castagno

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad [email]abuse (AT) newsland (DOT) it[/email]



Back to top
Display posts from previous:   
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.