Page 1 of 1

Firedac vs Zeos Performance(Zeos slowly)

Posted: 05.10.2022, 16:28
by 3ddark
Hello,
Mu application postgresql connection convert firedac to Zeos.
Only use query without ztable. Zquery.open or zquery.execsql process
Application work succesfull. But There is visible performance degradation. Same dll same application. only DB access component changed.

Zeos ver. 7.2.14
Windows 11
Delphi 10.3.3
Postgresql 14

How to increase performance

Re: Firedac vs Zeos Performance(Zeos slowly)

Posted: 06.10.2022, 11:38
by marsupilami
Hello 3ddark,

please trsy Zeos 8.0 from SVN or from Github. Egonhugeist did a lot of improvements for speedup.

Best regards,

Jan

Re: Firedac vs Zeos Performance(Zeos slowly)

Posted: 08.10.2022, 10:07
by miab3
My mORMot 1.18 r6382 PerfTest
Delphi 10.3.3 Rio Win32
Windows 10
ZEOS 8 trunk svn r7870

Code: Select all

Running tests using Synopse mORMot framework 1.18.6382, compiled with Delphi 10.3 Rio 32 bit, against SQLite 3.38.2, at 2022-10-08 10:54:23.

Insertion speed
 	Direct	Batch	Trans	Batch Trans
SQLite3 (file full)	7	397	20511	19912
SQLite3 (file off)	396	36812	54952	167841
SQLite3 (file off exc)	16291	150271	57011	175938
SQLite3 (mem)	45508	178405	58567	185928
ZEOS SQlite3	7	200	24151	20962
ZEOS SQlite3 (ext full)	7	216	26058	19984
ZEOS SQlite3 (ext off)	638	8145	53380	143131
ZEOS SQlite3 (ext off exc)	21311	125912	56596	145802
ZEOS SQlite3 (mem)	30508	140809	56940	152685
FireDAC SQlite3	12591	19840	10594	108131
UniDAC SQlite3	9047	21187	15015	37883
ODBC MSSQL2012	1805	15752	2468	19032
UniDAC MSSQL2012	1617	3486	2355	3563
ZEOS ODBC_W MSSQL2012	2195	6396	2700	39838
ZEOS ODBC_A MSSQL2012	2125	6373	2695	40841
ZEOS OleDB MSSQL2012	1976	6541	2504	49741
ZEOS Firebird	1419	48801	22990	48998
FireDAC Firebird	1228	43705	17867	50659
Oracle	524	59026	2357	82609
ZEOS Oracle	615	55836	2861	70070
UniDAC Oracle	446	1543	1893	2358
ZEOS PostgreSQL	724	39380	3424	57638
FireDAC PostgreSQL	696	16967	3290	18975
UniDAC PostgreSQL	660	7123	2791	13569
ZEOS MySQL	2539	37215	2615	34950
FireDAC MySQL	1429	18659	1367	17388
UniDAC MySQL	2503	18517	2593	20425

Read speed
 	By one	All Virtual	All Direct
SQLite3 (file full)	13171	364750	356709
SQLite3 (file off)	12934	366112	364245
SQLite3 (file off exc)	61464	366542	355593
SQLite3 (mem)	62158	365283	369576
ZEOS SQlite3	12324	203227	364219
ZEOS SQlite3 (ext full)	12073	205532	362529
ZEOS SQlite3 (ext off)	12019	198886	347005
ZEOS SQlite3 (ext off exc)	49987	199473	348626
ZEOS SQlite3 (mem)	50357	203062	356201
FireDAC SQlite3	5322	81640	114900
UniDAC SQlite3	5775	73568	98152
ODBC MSSQL2012	2446	109827	188615
UniDAC MSSQL2012	2024	100678	159210
ZEOS ODBC_W MSSQL2012	1269	143135	221946
ZEOS ODBC_A MSSQL2012	1245	139093	210057
ZEOS OleDB MSSQL2012	2437	114012	286861
ZEOS Firebird	23415	88239	127573
FireDAC Firebird	1236	59890	76305
Oracle	2988	66819	176186
ZEOS Oracle	3422	111524	156882
UniDAC Oracle	1115	45927	58016
ZEOS PostgreSQL	3450	133582	190665
FireDAC PostgreSQL	654	45452	48590
UniDAC PostgreSQL	394	72569	92341
ZEOS MySQL	2508	118505	231470
FireDAC MySQL	1257	68846	82476
UniDAC MySQL	2163	92831	126043
Michal