Solved

Need suggestion to choose a database

Posted on 2014-09-08
5
320 Views
Last Modified: 2014-09-21
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
0
Comment
Question by:Ravi Kalla
5 Comments
 
LVL 49

Accepted Solution

by:
Gustav Brock earned 167 total points
ID: 40311440
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
 
LVL 84

Assisted Solution

by:Scott McDaniel (Microsoft Access MVP - EE MVE )
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 167 total points
ID: 40311882
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
 
LVL 6

Author Comment

by:Ravi Kalla
ID: 40312195
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
 
LVL 35

Assisted Solution

by:PatHartman
PatHartman earned 166 total points
ID: 40312227
# 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
 
LVL 62

Expert Comment

by:gheist
ID: 40335021
SQLITE is the most popular in this segment of scale (think billion of iphones and another of androids, all with sqlite)
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I annotated my article on ransomware somewhat extensively, but I keep adding new references and wanted to put a link to the reference library.  Despite all the reference tools I have on hand, it was not easy to find a way to do this easily. I finall…
Shadow IT is coming out of the shadows as more businesses are choosing cloud-based applications. It is now a multi-cloud world for most organizations. Simultaneously, most businesses have yet to consolidate with one cloud provider or define an offic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question