JDO sprøgsmål

Tags:    java

Jeg er igang med at skrive en simple application, der bruger en database(apache derby) og tilgår den ved hjælp af JDO.

Det eneste data der er, er en slags object, så der er også kun en tabel.

Mit spørgsmål er om jeg når programmet starter skal loade alt ind i en vector af disse objecter, eller om jeg skal hente dem fra databasen hver gang jeg skal bruge dem.

Altså skal jeg loade alt ind én gang i starten, eller skal jeg loade ind hver gang jeg skal bruge noget.

Er det hurtigere at søge en vector efter et object hvor feltet id = x, end at søge i databasen?'

Er der andet end hastighed at tage højde for?

Har ikke lige mere end 5 UP



2 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Jeg er igang med at skrive en simple application, der bruger en database(apache derby) og tilgår den ved hjælp af JDO.

Det eneste data der er, er en slags object, så der er også kun en tabel.

Mit spørgsmål er om jeg når programmet starter skal loade alt ind i en vector af disse objecter, eller om jeg skal hente dem fra databasen hver gang jeg skal bruge dem.

Altså skal jeg loade alt ind én gang i starten, eller skal jeg loade ind hver gang jeg skal bruge noget.

Er det hurtigere at søge en vector efter et object hvor feltet id = x, end at søge i databasen?'

Er der andet end hastighed at tage højde for?

Har ikke lige mere end 5 UP


Der er også hukommelse at tage højde for. Hvis det en dag bliver en stor database, kan det være et spild at have dem i hukommelsen.

Det vil også kunne give en høj load tid...altså tiden fra man starter programmet, til det er klar.

Men jo, det vil typisk være hurtigere at søge i hukommelsen, end at søge i en database, men du vil selv skulle stå for indexering og den slags, som man ellers ville overlade til databasen. Det er dét, den er der for.





Ok, mange tak.

Vis nogle andre kommer forbi dette spørgsmål, så har jeg fundet dette: http://code.google.com/p/oopex/ som jeg syntes ser interresant ud(har ikke rigtigt kigget på det endnu).



t