Main   Products   Offshore Outsourcing   Customers   Partners   ContactUs  
JDBC Databases
  HXTT Access v7.1
  HXTT Cobol v5.0
  HXTT DBF v7.1
 
  Buy Now
  Support
  Download
  Document
  FAQ
  HXTT Excel v6.1
  HXTT Json v1.0
  HXTT Paradox v7.1
  HXTT PDF v2.0
  HXTT Text(CSV) v7.1
  HXTT Word v1.1
  HXTT XML v4.0
Offshore Outsourcing
Free Resources
  Firewall Tunneling
  Search Indexing Robot
  Conditional Compilation
  Password Recovery for MS Access
  Password Recovery for Corel Paradox
  Checksum Tool for MD5
  Character Set Converter
  Pyramid - Poker of ZYH
   
   
   
Heng Xing Tian Tai Lab of Xi'an City (abbr, HXTT)

HXTT DBF
JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
michael
2022-06-27 02:12:43
We have existing JDK 11 SpringBoot application that relies on HXTT to read data from Foxpro DBF databases. We notice the performance of the latest driver v7.1.183 is much slower than v5.1.184.

eg we have a file with 68 records. The database file contains 60+ columns.

In the 5.1.184, the time it takes to load the data is about 4 - 5 seconds
In the 7.1.183, the time it takes to load the data is about 10 -12 seconds

The only change we made is to replace the HXTT JDBC jar file.

Any idea why there is such a big performance hit?
Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
HXTT Support
2022-06-27 02:19:36
What's your jdbc url setting? We will try to recur your speed issue.
Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
michael
2022-06-27 02:31:08
See below how we setup the connection in SpringBoot.

@Primary
@Bean("dataSource")
public DataSource getDataSource() throws SQLException {
return DataSourceBuilder
.create()
.type(HxttConnectionPoolDataSource.class)
.driverClassName("com.hxtt.sql.dbf.DBFDriver")
.url("jdbc:dbf:///C:\web_projects\clienta/database")
.build();
}
Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
michael
2022-06-27 02:49:00
I meant to say the Foxpro DBF file contains 68k records and not 88 records.
Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
HXTT Support
2022-06-28 01:15:50
What's your sql?
Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
Michael
2022-06-29 22:02:49
The SQL we use are
countRecordById completed in 74975 milli seconds SELECT count(sn) FROM COSTCTR WHERE custid = 'SingleSite' AND deleted <> 'Y'

Note there are a number of these queries running parallel.
Re:Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
HXTT Support
2022-06-29 23:10:12
Please try the latest package.
Re:Re:Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
Michael
2022-06-30 00:24:47
Hi there

I now use JDBC 4.3 v 7.1.185 and still getting the performance issue...

30-06-2022 14:40:04.008 [https-jsse-nio-8443-exec-2] DEBUG countRecordById completed in 71996 milli seconds SELECT count(sn) FROM COSTCTR WHERE custid = 'SingleSite' AND deleted <> 'Y'


Re:Re:Re:Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
Michael
2022-07-01 01:11:38
This SQL query demonstrate the performance issue more prominently.

SELECT sn,ccgid,ccnid,cccid,cchid,ccg,ccn,ccc,cch,ccf,linkage,conetdate,status,sn1,sn2,sntype,cosd,sdt,snl,spend,costid,empno,addr,addr2,comm,lastbill,{v 'DELETED'},simserial,imei,equip,acc1,acc2,purdate,canceldate,cancelref,refno,supplier,carplan,caracc,pukcode,mgrname,mgrno,circuitsp,hwstatus,equip2,equipan,equip2an,purdate2,simtype,maintain,region,userlink,voicplan,voicsd,voicexp,dataplan,datasd,dataexp,split,blitz1,blitz2,blitz3,blitzsd,blitzed,custid FROM COSTCTR WHERE custid = 'SingleSite' AND deleted <> 'Y' ORDER BY sn ASC LIMIT 0, 100

version 5.1 driver query completed in 1 seconds
version 7.1.+ driver query completed in 6 seconds

We used the com.hxtt.sql.admin.Admin console to try this SQL.
Re:Re:Re:Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
HXTT Support
2022-07-01 19:07:21
You can try v7.1.188
Re:Re:Re:Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
Michael
2022-07-04 02:22:35
No joy. Still takes more than 6 seconds.
Re:Re:Re:Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
HXTT Support
2022-07-05 03:14:05
Try the following sql:

explain sql SELECT sn,ccgid,ccnid,cccid,cchid,ccg,ccn,ccc,cch,ccf,linkage,conetdate,status,sn1,sn2,sntype,cosd,sdt,snl,spend,costid,empno,addr,addr2,comm,lastbill,{v 'DELETED'},simserial,imei,equip,acc1,acc2,purdate,canceldate,cancelref,refno,supplier,carplan,caracc,pukcode,mgrname,mgrno,circuitsp,hwstatus,equip2,equipan,equip2an,purdate2,simtype,maintain,region,userlink,voicplan,voicsd,voicexp,dataplan,datasd,dataexp,split,blitz1,blitz2,blitz3,blitzsd,blitzed,custid FROM COSTCTR WHERE custid = 'SingleSite' AND deleted <> 'Y' ORDER BY sn ASC LIMIT 0, 100;

to see whether there's an index expression on custid .
Re:Re:Re:Re:Re:Re:Re:Re:JDBC 4.1 v7.1.183 much slower than JDBC 4.1 v5.1.184
Michael
2022-07-05 21:46:33
Hi there

I ran the explain SELECT (instead of explain sql SELECT) and there is no index on custid. In this specific use case, the custid column only has one value ie 'SingleSite'.

The explain result returns 3 rows. They are

id: 1
table: COSTCTR
expression: custid=='SingleSite'
key:

id: 1
table: COSTCTR
expression: custid=='SingleSite'
key:

id: 1
table: COSTCTR
expression: deleted!='Y'
key:

id: 1
table: COSTCTR
expression: (NOT DELETED())==true
key: NOT DELETED()

Search Key   Search by Last 50 Questions




Google
 

Email: webmaster@hxtt.com
Copyright © 2003-2019 Heng Xing Tian Tai Lab of Xi'an City. | All Rights Reserved. | Privacy | Legal | Refund | Sitemap