Derby has a 2 MB limitation on embedded usage. However, I can
manage the server within my Java application. It means that I
can start a server along with my program, giving a random database
service port, then connect to that port within the same program.
With this solution, I can avoid the 2MB limitation problem with Derby.
The problem with SQLite3 would be the INSERT speed. Inserting
a record into Derby is much faster than that with SQLite3 ( 3 times ).