IBM Donates Java Database App. to Apache Foundation
the_pooh_experience writes "IBM has announced that it will open up Cloudscape by giving it to the Apache Software Foundation. Cloudscape, a small footprint Java database, is primarily used for small scale websites and point-of-sale systems. Its new, opensource name will be 'Derby.' Cloudscape (originally created by Informix, and purchased by IBM in 2001) has been valued by IBM at $85M."
Can anyone comment on how it performs?
Good! This is quite a nifty little SQL engine with a lot of features. Will be exciting to follow the progress of Derby, could provide competition for mysql and postgresql.
//TheToon
Geez is the NYT dumb. Putting something in the "public domain" means you relinguish control. It's owned equally by everyone. Choosing an "open source" license means you keep control. If you're careful about how you do it, you can even change the license terms a bit later. MySQL is constantly tweaking their terms because they're the sole copyright owner. Sure, it's available under the GPL, but they can tweak the terms for preferred customers. And they do! That's still their perogative because the code is NOT in the public domain.
"...has been valued by IBM at $85M."
Now, it's free, so it's worthless.
Is this designed to compete directly with MySql or is it like an open source version of Microsofts MSDE. Suitable for a small web app but not for hosting something like slashdot or Amazon? It's cool to see IBM once again support the OSS community.
Simon
A win-win scenario for IBM: donate a software application at an inflated price for a big tax break while also looking good to the open-source community. At least that's how I assume it works in the US.
Compared to the alternative of supporting or shelving a dead application, can you blame them? Perhaps at least this will serve as a good model for other companies that still consider dead software as a corporate asset.
In any case it's cool they donated it. Being a database developer myself, I'm extremely wary of the "you don't need a DBA" claim, but regardless of the hype it looks like an interesting product that will fit in well with the Apache lineup.
This Like That - fun with words!
Leave it to NYT to misinform people. The article says that IBM put the code "in the public domain". The license by which the Apache foundation will distribute this is certainly NOT public domain. It later says "Apache will hold the licensing and intellectual property rights to the Cloudscape code."
I wish people would stop mixing these things with public domain. Apache's license, GPL, etc., are forms of copyright, and are NOT public domain.
The Cloudscape homepage: Cloudscape
And more details with links to PDF documents: Features and Benefits
I would guess that mysql would be faster for simple stuff, but Cloudscape could give it a run for it's money with support for more complex SQL.
Wouldn't know how it compares agains postgresql...
//TheToon
Nope...they won't put anything in without you signing the copyright over.
Given a choice between free speech and free beer, most people will take the beer.
There are other DBs written in Java , for example Mckoi SQL .
Mckoi SQL is quite usable, supports a great deal of the SQL 92 standard, and the performance is not bad (of course, talking about the range of database sizes for which it makes sense using an embedded sql engine
Does anyone have experience with Couldscape. How does it compare with Mckoi?
Not really sure how it compares to mySql or postgres, but I loaded a 50+ million row table with a non index timestamp field to Cloudscape and MSSQL. Both took about 3 seconds to return a query returning a unique row (ie a row updated on a specific date and time) on this field on a 2ghz intel machine with 1GB RAM.
Firebird SQL was about the same. Next Im going to try HSQL.
I would be interested in anybody elses experiments?
On the other hand, it's still a (relative) memory hog.
Great!!!
:)
Maybe slashdot can used it to stop the 503 errors
Of anything out there I think Cloudscape is most similar to Berkeley DB for Java (an in-process DB). The comment about it being a stepping-stone to DB2 could be made about any JDBC-compliant DBMS...IBM just happens to favor theirs ;-)
Good thing it's Derby and not Firebird.
Anyway - why bother renaming and what is "Open Source Name"?
Cloudscape was originally crated by Cloudscape, Inc. (I contracted for them at one time), which was later acquired by Informix.
At the time, it was a fairly complete and well-performing database with some nifty multi-database synchronization features, so even though I'm not involved in Java programming anymore this can turn out to be a quite interesting addition to Joe. A. Opensourcecoder's toolkit.
Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
You obviously haven't used java within the past 3 years or so.... Its speed on every platform I've developed on is no different then native speed, and in many scenarios its faster because of the many optimizations that java makes to your code and also from years of optimizing their own algorithms. This could be debated well... forever, but anymore if you need something faster then java then you should probably be using assembly. Speed and overall performance has only gotten better with the new 1.5 VM as well (It's now known as 5.0, and its still in beta but very useable).
Regards,
Steve
Funny how the word Apache in the article is linked to the stock ticker for APA. (Or may be not so funny) For the record - The Apache Software Foundation is a registered non-for-profit 501 c3 corporation incorporated in Delaware, and as such it does not have stock but rather can hand out membership to make one a stakeholder.
Add to this some context.
* Most web applications are not written in C++/C
* More and more client-applications are being written in Java/.Net due to maintainability
* There is an impedance mismatch between OO systems and RDBMS systems
** Bridging this gap often involves very non-performant abstractions:
*** wrapping bean-objects around rows
*** storing intermediate copies of beans for caching
*** making copies of beans for transactional purposes.
*** redundantly applying data-constraint rules
Essentially re-inventing the RDBMS wheel.
Thus, if you're already going to write the application in Java, then there is a tremendous advantage to avoiding the performance bottlenecks of the impedance mismatch.
Think of what a c/c++ database does in the best case.. It compiles a SQL script, loads internal relationships to columns/rows.. Accesses the in-memory indexes, and then formats/serializes the in-memory rows for output.
Java has to deserialize the text-stream, instantiate numerous objects; possibly unicodifying the data. Then whatever abstraction layers may be applied to the raw object-array result-set have to be applied.
If the data was locally available, then it could be stored in such a way that, for read-only access, it might be possible to avoid copying, and merely have it return a wrapper for the raw data. Zero latency, and practically zero additional extra work. While this is effectively the same as cached data, here we only store the data once on disk and once in memory.
"hsqldb" is an example that pretty much does the above. You still get a SQL interface if you desire though. Only catch is that hsqldb isn't as feature-rich as many RDBMS systems yet. I'm sure the IBM java-database is merely a feature-rich sister of hsqldb.
And don't forget that many java API's still use raw c-code to do intensive or tight-data-structure work.
-Michael
Another interesting, open source Java database is McKoi SQL Database, a GPL-licensed Java database with all kinds of nifty features.
Things are getting interesting for JBoss developers: JBoss ships with HSQL, supports McKoi nicely, and now we get Cloudscape thrown into the mix. Sweet.
MORTAR COMBAT!
The main thing I've felt that has been holding Star/Open office back is a need of a database as easy as MS Access.
I know it's a different language, but work with me for a second.
Yes, Access sucks as a DB, but it's good for three things. First, it's a quick and dirty way to store data. Secretaries and analysts use it, dump their data in a little file, put it on a floppy, bring it home, work on stuff at home, and bring it back on a floppy the next day. That is the ultimate selling point of file based databases. Even with Open Office's database tools, I have to know something about being a DBA - starting mysqld, db security, etc. Second, our DBAs love it because it's a graphical frontend to ODBC datbases. It gives semi-cluefull non-techs a way to see data. Finally, you can actually drop it onto a webserver and drive databases with it. Biases aside, it did gather them a following in the late 90's when everybody was a "developer" doing websites.
Any sort of MSOffice competitors have taken a while to solve these three needs elegantly. Looking at the IBM site, it looks like Cloudscape, with the embeded and network connectivity features, can be a foundation for something that can fill all three needs.
Notice how IBM is responding to competition by offering something to the community, while Sun's response to competition is to take something away (Novell/SUSE). I know, I know, it's GPL, they can't really take it away, but I think the point is still valid. Sun's response to competition should be to GPL Solaris and/or Java, not try to lock things up. Rather than try to improve themselves, stupid Sun's trying to compete by trying to hurt the competition instead - which will backfire.
I mod down all the "free iPod"-sig losers.
Cloudscape has a relatively small market share among SQL databases, but it is popular in certain niches. It came bundled with Sun's reference implementation of J2EE at one time, too; I don't know if that's still the case.
Breakfast served all day!