Solved

Need suggestion to choose a database

Posted on 2014-09-08
5
328 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
5 Comments
 
LVL 50

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 37

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

Enroll in May's Course of the Month

May’s Course of the Month is now available! Experts Exchange’s Premium Members and Team Accounts have access to a complimentary course each month as part of their membership—an extra way to increase training and boost professional development.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
sql views 3 56
Sharepoint list value updated via access or Excel 3 33
Using a combo box to search a form. 3 36
Query Task 8 22
In earlier versions of Windows (XP and before), you could drag a database to the taskbar, where it would appear as a taskbar icon to open that database.  This article shows how to recreate this functionality in Windows 7 through 10.
Did you know that more than 4 billion data records have been recorded as lost or stolen since 2013? It was a staggering number brought to our attention during last week’s ManageEngine webinar, where attendees received a comprehensive look at the ma…
Familiarize people with the process of utilizing SQL Server views from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Access…
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…

751 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