From: Jean-Etienne’s blog http://www.jepoirrier.net/blog/2007/09/sqlitejdbc-worst-than-derby/
Following a comment from Alexandre on a previous post , I included SQLite in my performance test of database engines running under Java.
What prevented me from using SQLite in the previous test is that it’s not a pure Java database and one have to use third-party JDBC driver and implementation classes in order to manage this database engine. IMHO, I also dislike another fact: SQLite does not enforce data type constraints (and it’s a feature, not a bug ) so everything is stored as ASCII string, even if you have very few other “artificial” data types .
In order to include SQLite in my test, I have to rely on a third-party libraries: David Crawshaw’s JDBC driver for SQLite . Some minor adaptations also had to be done to the code (see the SqliteTest class in the source code below). Brandon T. provides a good tutorial on how to use this driver on MS-Windows here .
The result? SQLite performances are worst than Derby! In this case, the slowest step is the data insertion: more than 11s for 100 insertions (see graph below). The database creation step is also slower than with H2 or HSQL (but much faster than Derby). If you compare the whole process (initialisation + creation + insertion + retrieval), SQLite (and its JDBC driver) is the worst database engine. The only good point is that it only creates one file (the other engines creates at least 2 files) and this file is only 5kb.
Click to show the normal size graph.
A graph with a log y-axis is available here
Protocol. Same as in the previous post except that now I have 4 engines to rotate. Source code is here (4kb) and the jar file + libraries is here (5Mb).
本文通过性能测试对比了SQLite与其他几种数据库引擎(如Derby)在Java环境下的表现。结果显示,在数据插入速度方面SQLite的表现最差,整个流程(初始化、创建、插入及检索)中SQLite也是最慢的。
657

被折叠的 条评论
为什么被折叠?



