• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Database suggestions

 
Ranch Hand
Posts: 264
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm looking for free/open source database applications to use with an application we're developing. Some/all of the tables will be specific to the application, but there are a few tables that the application would benefit from sharing between all of the application instances (though we don't know if initially we are going to implement this, its just a "nice to have").

Right now I'm looking at Derby and MySQL.

Anyone have anything good or bad to say about Derby? I've worked with MySQL and its easy enough to use, but the thought of installing it along with the application using it on every machine seems a little bit daunting.

-Tad
 
Bartender
Posts: 1152
20
Mac OS X IntelliJ IDE Oracle Spring VI Editor Tomcat Server Redhat Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Derby is going to be an Apache project [Good], it code is to be based on the Cloudscape product [Good]. Its written in Java [Good]. When Derby will be released [Bad]?

Have you looked into HyperSonic? HyperSonic

Or Firebird?

Would be interested to hear your conclusions
 
Ranch Hand
Posts: 582
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Tad,
I have never used Derby.
Sometimes I use MySQL or Hypersonic(HSQLDB) and those is very good.

thanks
daniel
 
Ranch Hand
Posts: 5093
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Avoid mySQL like the plague it is. Unless you plan to release your program under the GPL you can't use it (unless you pay a hefty license fee).

Look instead at Firebird (http://www.ibphoenix.com ) which is available under the IPL which is similar to the APL and allows any license for products using it as well as being a simpler to use AND a far more powerful product.
 
Jeroen Wenting
Ranch Hand
Posts: 5093
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
As to Derby, it's not available (I looked for it myself earlier this week to give it a try).
IBM does have Cloudbase (which is Derby under its original name) available but they need your entire life history before you're allowed to look at more than a marketing blurb so I decided to skip that as well.
 
Tad Dicks
Ranch Hand
Posts: 264
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hrm I downloaded derby from the apache site (its in the "incubator"). I've not played with it yet, but from the way you all are talking am I to guess that this means it doesn't work yet?

Avoid mySQL like the plague it is. Unless you plan to release your program under the GPL you can't use it (unless you pay a hefty license fee).


As to this we don't have any intention on selling the software. My understanding with GPL is you can sell all the software with it you want, you just need to provide all the source code along with the software or give it to any customer who requests it (and you must use the same license). I'll admit I don't fully understand all the licensing issues involved in Open source software (now that would have been a useful class in college).

The thing I'd like to avoid is having to install mysql on every machine that the application gets installed on, yet I want to keep it a desktop app so I don't want to use a central database server. Maybe in the future part of the data store will be shared among all instances of the application, but I don't want to worry about that now.

Thanks for suggestions I'll look into the hypersonic and the firebird and try to figure out exactly what it is I downloaded from apache(derby?).
 
Bartender
Posts: 9626
16
Mac OS X Linux Windows
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Tad Dicks:
My understanding with GPL is you can sell all the software with it you want, you just need to provide all the source code along with the software or give it to any customer who requests it (and you must use the same license).



You are correct. That's how RedHat is selling other people's GPL'd code as RedHat Linux. However, if you are using MySQL within an organization and have no intention of releasing GPL'd software (i.e. using it for your company's HR database), the MySQL folks consider thatcommercial use and ask that you buy a license ($295, one server, unlimited connections).
As for Cloudscape/Derby, a good starting place is the
Cloudscape Information Center. I used Cloudscape years ago. It's an interesting product. Quite fast and scalable. It can run in-process so there's no need to set up a server.
[ February 11, 2005: Message edited by: Joe Ess ]
 
Tad Dicks
Ranch Hand
Posts: 264
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

#
Free use for those who never copy, modify or distribute. As long as you never distribute the MySQL Software in any way, you are free to use it for powering your application, irrespective of whether your application is under GPL license or not.



Thats taken from the site you linked. I would think that is opposite of the situation you supposed.

You are allowed to modify MySQL Software source code any way you like as long as the distributed derivative work is licensed under the GPL as well.



What does "distribute" entail. Is there any reason I could release a GPL version of software but limit the distribution to myself? or ?
Is there an onus on the author to publically distribute (I don't believe there is).

Of course there comes the ethical considerations of abusing/not contributing back to the OS community, but I'm not 100% sure that such uses weren't part of the intent in the license as such a use contributes less to selling software but more to hiring software developers (all speculation on my part, so take it with large grain of salt).

-Tad
/obligatory IANAL.
[ February 11, 2005: Message edited by: Tad Dicks ]
 
Tad Dicks
Ranch Hand
Posts: 264
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I think were going to use hypersonic, thanks again for the info/links.
I would prefer to keep it all java based.

Is anyone aware of any special issues with hyeprsonic that I should be aware of?

-Tad
 
Ranch Hand
Posts: 1646
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Tad Dicks:
What does "distribute" entail. Is there any reason I could release a GPL version of software but limit the distribution to myself? or ?
Is there an onus on the author to publically distribute (I don't believe there is).

Under the GPL, you must make available the source code to anyone to whom you distribute. As well, you must license it under the GPL to them, which means they are free to distribute to whomever they wish under the same terms.

If you keep it in-house, clearly the source is available to your Systems and Operations teams, so you're okay. If you send it to other offices, they must be able to request and receive the source and distribute it themselves. If you're all part of the same company, that should also be a moot point.

If you ship it to a customer (for free or $), this is where it can "leak" as they can give or sell it to anyone they like.

Keep in mind that with regards to MySQL this should only apply if you build it in as part of your application (i.e. modify its source code). If all you do is use it as a database, then simply require that anyone using your software go grab themselves a copy of MySQL and install it first. You're not bound by the GPL simply by using other applications with yours, otherwise all software written to run on Linux would have to be GPL licensed, which clearly isn't the case.

Where people can get surprised is if they use tools that are GPL'd. One example off the top of my head is GNU's command line options parsing library (though maybe it's LGPL). All of the Jakarta stuff is covered by the APL, and I must say I haven't read that in a long while since all the stuff on which I work is internal to the companies for which I write it. But the legal departments at each job have analyzed it and spoken with the business people to okay the use of it, so there will be no surprises should we suddenly wish to sell our software to others.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic