2009-08-12

UJO-ORM: doplněné testy

Úvodem bych rád poděkoval všem za komentáře k minulému příspěvku i když je pravda, že někteří mě příliš nešetřili :). Srovnání s konkurencí je nezbytné, já jsem si pro tento účel dovolil vybrat Hibernate, neberte to, prosím, osobně.

Na základě vašich připomínek jsem doplnil test SINGLE SELECT, který čte velký počet DB řádků z jedné tabulky. Dále jsem doplnil test zvaný EMPTY SELECT pro opakované dotazování nad tabulkou s prázdným výsledkem. Žádný z uvedených testů nereprezentuje zpravidla chování reálného serverového řešení a bezpochyby ani ten původní test (MULTI SELECT) není optimální.

AkceUJO-ORM Hibernate
SINGLE SELECT0.500 sec
0.833 sec
EMPTY SELECT1.305 sec  155.066 sec
MULTI SELECT21.715 sec172.258 sec


Výsledky naznačují, že úzkým hrdlem Hibernate může být parsování HQL dotazu. Připomínám, že případné zapnutí "Hibernate Query Cache" bude významné jen pro případ stejných parametrů dotazu.

Odkaz na aktualizované testy je zde.

Pavel

29 komentářů:

Anonymní řekl(a)...

Zde jsou mé výsledky Vašich testů Hibernatu před a po optimalizaci:
před:
TIME - META-DATA: 1.765
TIME - INSERT: 9.75
TIME - SINGLE SELECT 14000: 0.719
TIME - EMPTY SELECT 2000: 115.953
TIME - MULTI SELECT 14000: 117.844
TIME - DELETE: 112.062

po:
TIME - META-DATA: 1.703
TIME - INSERT: 8.093
TIME - SINGLE SELECT 14000: 0.579
TIME - EMPTY SELECT 2000: 1.125
TIME - MULTI SELECT 14000: 1.531
TIME - DELETE: 2.109
Radek

Ponec řekl(a)...

Dobrý den, Radku,

děkuji za příspěvek. Pokud budete mít zájem, mohu vaše optimalizované testy Hibernate zařadit k ostatním testům v SVN repository.

V opačném případě budu rád za nějaký popis optimalizace.

Díky
Pavel

Anonymní řekl(a)...

Dobrý den,
omlouvám se, mohl jsem to alespoň jednou větou okomentovat.
Nejde o nic složitého, poněvadž se sám Hibernate učím. Jde o to, jak Hibernate vnitřně funguje. Tedy v případě SQL dotazů funguje Hibernate tak, že před každým SQL dotazem synchronizuje persistent contex s databází. Tedy je volána metoda flush třídy session. Aby jsme změnili takového chování a SQL dotazy se provedli jako jedna transakce musíme nastavit session.setFlushMode(FlushMode.COMMIT).
Je tedy i otázkou, jak se chová UJO framework, abychom mohli poměřovat výkon těchto frameworků.
S pozdravem
Radek

Ponec řekl(a)...

Ujorm provolává, s výjimkou relace many-to-one, všechny dotazy přímo přes JDBC a tak to vypadá, že chování obou frameworků nebude v testu úplně ekvivalentní.

Jinak díky za zajímavé informace, vyzkouším si to.

Anonymní řekl(a)...

generic xanax xanax online consultation - xanax dosage extended release

Anonymní řekl(a)...

buy tramadol online tramadol 50mg capsules uses - tramadol hcl ultram 50 mg

Anonymní řekl(a)...

buy tramadol online order tramadol online no prescription overnight - tramadol withdrawal valium

Anonymní řekl(a)...

generic xanax generic xanax mylan a4 - sertraline xanax drug interactions

Anonymní řekl(a)...

buy tramadol online order tramadol online no rx - buy tramadol valium online

Anonymní řekl(a)...

buy tramadol online tramadol hcl tab 50mg side effects - tramadol extended release tablets dosage

Anonymní řekl(a)...

generic xanax long do effects 2mg xanax last - xanax overdose grams

Anonymní řekl(a)...

buy tramadol online buytramadol.eu - tramadol withdrawal leg cramps

Anonymní řekl(a)...

cialis no rx cialis daily in usa - cialis reviews for bph

Anonymní řekl(a)...

buy cialis online cialis online with mastercard - cialis 20 mg

Anonymní řekl(a)...

xanax online buy alprazolam 2mg online no prescription - xanax during pregnancy

Anonymní řekl(a)...

cialis online cialis versus levitra - buy cialis discount online

Anonymní řekl(a)...

xanax for anxiety klonopin or xanax for anxiety - side effects xanax extended release

Anonymní řekl(a)...

cialis online buy cialis online mastercard - cialis online prescription

Anonymní řekl(a)...

cialis sale cialis moment - generic cialis 30

Anonymní řekl(a)...

http://landvoicelearning.com/#51438 tramadol ls 100 mg - can you buy tramadol over the counter

Anonymní řekl(a)...

buy tramadol overnight tramadol dosage dogs 50 mg - tramadol 50 mg sleep

Anonymní řekl(a)...

buy tramadol online what does tramadol generic look like - tramadol dosage dogs pain

Anonymní řekl(a)...

buy tramadol tramadol hydrochloride 50mg for dogs - tramadol for fibromyalgia

Anonymní řekl(a)...

buy tramadol tramadol 50mg for dogs usa - best place order tramadol online

Anonymní řekl(a)...

tramadol generic tramadol for dogs taken by humans - tramadol overdose serotonin

Anonymní řekl(a)...

buy tramadol online tramadol dosage small dogs - order tramadol from usa

Anonymní řekl(a)...

buy tramadol tramadol online with no prescription - buy tramadol store

Anonymní řekl(a)...

buy ativan online ativan where to buy - ativan 20mg

Anonymní řekl(a)...

buy ativan online buy ativan tablets - buying ativan online-no prescription