PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → HFSQL speed against MySQL
HFSQL speed against MySQL
Iniciado por shadow.sfx.sv, 08,oct. 2014 07:26 - 5 respuestas
Publicado el 08,octubre 2014 - 07:26
I've made two different projects with the same code except that one is using a connection to a MySQL database and the other one to HFSQL and the speed when retrieving records using queries with MySQL is about 6 times faster than HFSQL. No matter what it is, retrieving information from the MySQL server takes about 4-5 seconds and HFSQL takes over 25-30 seconds.

Is there any specific configuration the HFSQL server needs to be as fast as MySQL? i have both servers with default configuration.


NOTE: I'm testing this in a remote server (I'm not interested in local connections)
Publicado el 08,octubre 2014 - 13:05
Hi Mauricio

with so little information, it's hard to say.
- your code may need to be optimized for HF
- Your analysis may need extra keys (as nothing says that both engine
are running on the same ones for the same queries)
- your HFSQL server cache may be too small
- ...

Best regards

--
Fabrice Harari
International WinDev, WebDev and WinDev mobile Consulting

NEW: WXReplication, your open source replication system is available on
my web site!!!
WXShowroom.com: Show your projects!
More information on http://www.fabriceharari.com



On 10/7/2014 11:26 PM, Mauricio Ramirez wrote:
I've made two different projects with the same code except that one is
using a connection to a MySQL database and the other one to HFSQL and
the speed when retrieving records using queries with MySQL is about 6
times faster than HFSQL. No matter what it is, retrieving information
from the MySQL server takes about 4-5 seconds and HFSQL takes over 25-30
seconds.

Is there any specific configuration the HFSQL server needs to be as fast
as MySQL? i have both servers with default configuration.


NOTE: I'm testing this in a remote server (I'm not interested in local
connections)
Publicado el 08,octubre 2014 - 17:24
In my program all there is, is a window with a browsing table control that i'm filling with this code:

IF (HExecuteQuery(EXPRESS_qry_searchProduct, ,hQueryDefault)) THEN
TableDeleteAll(TABLE_products)

FOR EACH EXPRESS_qry_searchProduct
TableAddLine(TABLE_products, qry_searchProducts.productId, qry_searchProduct.name, qry_searchProducts.price)
END
ELSE
Error(HError(hErrCurrent))
END


The analysis only has 1 table with those 3 items: ProductId, name, Price.

ProductId is unique key with Case sensitive, Accent sensitive, Space, punctuation and special char. sensitive options checked.

Name is key with duplicates and Case sensitive, Accent sensitive, Space, punctuation and special char. sensitive options checked.

Price is not key.

The code and the analysis is the same (only 1 table with 3 items and same keys) in both programs but no matter what MySQL keeps loading the table 6 times faster than if i use the HFSQL database.

Is there something i need to do to get the same speed or for it to be faster?
Publicado el 08,octubre 2014 - 19:23
Hi Mauricio

again, you did not read my answer completely...


On 10/8/2014 9:24 AM, Mauricio Ramirez wrote:
In my program all there is, is a window with a browsing table control
that i'm filling with this code:

IF (HExecuteQuery(EXPRESS_qry_searchProduct, ,hQueryDefault)) THEN
TableDeleteAll(TABLE_products)

FOR EACH EXPRESS_qry_searchProduct
TableAddLine(TABLE_products, qry_searchProducts.productId,
qry_searchProduct.name, qry_searchProducts.price)
END
ELSE
Error(HError(hErrCurrent))
END


The analysis only has 1 table with those 3 items: ProductId, name, Price.

ProductId is unique key with Case sensitive, Accent sensitive, Space,
punctuation and special char. sensitive options checked.

Name is key with duplicates and Case sensitive, Accent sensitive, Space,
punctuation and special char. sensitive options checked.

Price is not key.

The code and the analysis is the same (only 1 table with 3 items and
same keys) in both programs but no matter what MySQL keeps loading the
table 6 times faster than if i use the HFSQL database.
Is there something i need to do to get the same speed or for it to be
faster?
Publicado el 12,octubre 2014 - 19:01
I did and i posted what i did because i don't think there is "code" to be optimized (and if there is, that is the reason of why i posted THE ENTIRE code so i could get help). I don't need keys(which i read are just to make a search faster) because i ended up changing the query from a search to a simple:

SELECT * FROM Products


I even tested with a mysql table with no indexes at all and it still loads the table 5-6 times faster than HFSQL.

the HFSQL server cache is at 2 GB, so the cache is not the issue.
Miembro registrado
71 mensajes
Publicado el 19,abril 2015 - 17:28
Hi Mauricio,
I wonder how you solved that? Any progress on speed issue?
Regards