Need suggestion to choose a database

I am planning to create a java application which run as a standalone desktop application. I am trying to find the suitable database for it.

Below are the constraints -

1.

Database should be standalone and should be maintainable along with the application.

2.

Write frequency = 100 records(each record is 100 characters) / 3 secs

3.

Read frequency(each query has 2 inner joins) = 10,000 records(each record is 100 characters) / 3 secs

4.

Size of the database on hard disk wouldn't exceed 50 MB
What database is more suitable in this scenario and why? I have few in mind(my mind is open for other DBs as well) -

1.

SQLite

2.

HSQLDB

3.

MSACCESS
LVL 6
Ravi KallaTechnology LeadAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Gustav BrockCIOCommented:
1 and 3 should be fine. Don't know about 2.

Also, an option could be SQL Server Compact 4.0:

    http://www.microsoft.com/en-us/download/details.aspx?id=17876

which has the advantage that is uses a subset of T-SQL of SQL Server.

/gustav
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Scott McDaniel (Microsoft Access MVP - EE MVE )Infotrakker SoftwareCommented:
I tried SQLite for several .NET projects and it worked fine, so I'm sure it would work fine with Java projects as well.

That said, I always found myself switching over to SQL Server Compact, as Gustav suggests. Seemed more ... complete ... than SQLite, and easier to work with.
0
Ravi KallaTechnology LeadAuthor Commented:
HSQLDB is OpenOfficeBase.

For 'SQL Server Compact', do I need to install .NET framework also?
Is there any advantage for 'SQL Server Compact' over SQLite?
0
PatHartmanCommented:
# 3 is not actually MSAccess.  It is either Jet (.mdb) or ACE (.accdb)  You don't need Access installed at all if all you are using is the database so why pay the licensing fee.  Both Jet and ACE are free downloads but may already be installed on the target PC so check first.

If the user is going to be managing the database and doing backups and compacts/reorgs, you should choose which ever product will be easier for the user to manage or for which you can include management functions in your Java code.  Also, if you choose something other than Jet/ACE, how will it get installed?  Can you script silent installs as part of your install package?
0
gheistCommented:
SQLITE is the most popular in this segment of scale (think billion of iphones and another of androids, all with sqlite)
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Databases

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.