Insertion speed Here we insert 5,000 rows of data, with diverse scenarios:ios
'Direct' stands for a individual Client.Add() insertion; 'Batch' mode will be described below; 'Trans' indicates that all insertion is nested within a transaction - which makes a great difference, e.g. with a SQlite3 database. Here are some insertion speed values, in objects/second:it
Insertion speed Direct Batch Trans Batch Transio
TObjectList (virtual) 325393 545672 298846 545018object
TObjectList (static) 314465 543892 326370 542652List
SQLite3 (ext mem) 101440 211389 113530 209713file
SQLite3 (mem) 89456 236540 104249 239165static
SQLite3 (ext off exc) 41589 180759 108481 192071tab
MongoDB (no ack) 33223 273672 34665 274393di
SQLite3 (file off exc) 28847 193453 89451 207615vi
FireDAC SQlite3 20605 38853 40042 113752
FireDAC Firebird 18147 46877 18922 46353
ZEOS Firebird 10452 62851 22003 63708
MongoDB (ack) 10081 84585 9800 85232
Sockets SQLite3 8118 75251 8553 80550
NexusDB 5998 15494 7687 18619
UniDAC Firebird 5986 14809 6522 14948
MSSQL local 5246 54360 12988 62453
FireDAC MSSQL 5016 7341 11686 51242
ODBC MSSQL 4911 18652 11541 20976
ODBC DB 24792 48387 14085 70104
FireDAC DB2 4452 48635 11014 52781
UniDAC MSSQL 4392 29768 8649 33464
Jet 4235 4424 4954 5094
ZEOS PostgreSQL 4196 31409 9689 41225
FireDAC PostgreSQL 4181 26635 10111 36483
ODBC PostgreSQL 4068 26262 5130 30435
ZEOS MySQL 3426 34037 12217 40186
ODBC MySQL 3160 38309 10856 47630
UniDAC MySQL 3119 27772 11246 33288
FireDAC MySQL 3078 43053 10955 45781
UniDAC PostgreSQL 2705 18563 4442 28337
SQLite3 (ext off) 2245 47961 109706 189250
WinHTTP SQLite3 2165 36464 2079 38478
SQLite3 (file off) 2102 83093 88006 202667
ODBC Firebird 1495 18056 13485 17731
ZEOS SQlite3 494 11851 56206 85705
ODBC SQLite3 492 11746 35367 82425
BDE Oracle 489 927 839 1022
UniDAC SQlite3 477 8725 26552 38756
SQLite3 (file full) 462 28123 84823 181455
SQLite3 (ext full) 424 14523 102049 164636
ODBC Oracle 236 1664 1515 7709
Oracle 226 56112 1133 52367
ZEOS Oracle 210 32725 1027 31982
UniDAC Oracle 164 5701 1215 2884
FireDAC Oracle 118 48575 1519 12566