Hallo Leute,
Zuerst meine Arbeitsumgebung:
Hibernate 3
Oracle XE
Tomcat 6
Folgende Situation:
Ich erstelle mit Hibernate eine Criteria-Abfrage auf eine Tabelle mit ca 70 000 Einträgen.
Durch das erzeugen einer Liste dauert diese Abfrage 7-8 sec. Ich benutze Lazy-Loading, sodass er auch keine weiteren Daten selektiert werden. Ist diese Laufzeit normal. Das müsste doch eigentlich viel schneller gehen oder täusche ich mich da?
Könnte es an der Hibernate-Configuration oder Oracle XE liegen?
[XML]
<property name="connection.url">jdbc
racle:thin
ubuntu.rsn.local:1521:XE</property>
<property name="connection.username">tobi</property>
<property name="connection.password">123456</property>
<property name="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
<property name="current_session_context_class">thread</property>
<!-- Disable second-level cache. -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<property name="cache.use_query_cache">false</property>
<property name="cache.use_minimal_puts">false</property>
<property name="max_fetch_depth">3</property>
<!-- Use the C3P0 connection pool. -->
<property name="c3p0.min_size">3</property>
<property name="c3p0.max_size">5</property>
<property name="c3p0.timeout">1800</property>
<!-- Print SQL to stdout. -->
<property name="show_sql">true</property>
<property name="format_sql">true</property>[/XML]
Zuerst meine Arbeitsumgebung:
Hibernate 3
Oracle XE
Tomcat 6
Folgende Situation:
Ich erstelle mit Hibernate eine Criteria-Abfrage auf eine Tabelle mit ca 70 000 Einträgen.
Java:
List<PersonSkill> list = HibernateUtil.getSession().createCriteria(PersonSkill.class).list();
Durch das erzeugen einer Liste dauert diese Abfrage 7-8 sec. Ich benutze Lazy-Loading, sodass er auch keine weiteren Daten selektiert werden. Ist diese Laufzeit normal. Das müsste doch eigentlich viel schneller gehen oder täusche ich mich da?
Könnte es an der Hibernate-Configuration oder Oracle XE liegen?
[XML]
<property name="connection.url">jdbc
<property name="connection.username">tobi</property>
<property name="connection.password">123456</property>
<property name="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
<property name="current_session_context_class">thread</property>
<!-- Disable second-level cache. -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<property name="cache.use_query_cache">false</property>
<property name="cache.use_minimal_puts">false</property>
<property name="max_fetch_depth">3</property>
<!-- Use the C3P0 connection pool. -->
<property name="c3p0.min_size">3</property>
<property name="c3p0.max_size">5</property>
<property name="c3p0.timeout">1800</property>
<!-- Print SQL to stdout. -->
<property name="show_sql">true</property>
<property name="format_sql">true</property>[/XML]