MySQL and Java DB
By Janice J. Heiss on Apr 06, 2008
Sun Microsystems' technology evangelist, Chuk-Munn Lee’s session on Java DB and MySQL gave a detailed overview of Java DB and helped developers determine when to use each.
It’s a bit hard to write about Java DB, given the attention that MySQL has received at Sun recently. There's been a flurry of excitement mingled with buzz since Sun bought MySQL for a cool billion. (And fun too: Colorful, inflatable toy dolphins celebrating this twosome “swam” in ponds on Sun’s Santa Clara campus on April 1 in keeping with Sun's traditional day of pranksterism.)
Almost everyone seems to think it’s a good match that brings Sun deeper into the world of open source. MySQL has 70% market share of all open source databases and is present in every web-facing deployment in the world. For more on this story, I recommend an excellent Feb 28, '08, MySQL blog posting by fellow Sun staff writer and all-around great guy, Ed Ort.
Upon the MySQL acquisition, Jonathan Schwartz, Sun's CEO, commented: “Internally, the more than 10,000 people that make up the Sun engineering community -- of which the MySQL team is now a core part -- have begun to engage across a dizzying array of touchpoints. From diagnostics and technical integration, to performance engineering, hardware and software optimization, and leveraging our large scale benchmarking facilities, going after a few more world records. A breadth of projects are underway to enhance the value MySQL can deliver in a diversity of settings -- and we'll work hard to ensure MySQL flies like a dolphin on Linux, Windows and Solaris, and on systems built by Dell, IBM, HP, Intel, AMD, Sun, Fujitsu (i.e., everyone).”
At his recent Tech Days Saint-Petersburg keynote address, Rich Green, Executive Vice President of Software at Sun, noted that Sun’s best database experts will be working with MySQL to improve their technology. Words such as “synergy” and “good fit of corporate cultures” have been bandied about. Sun and MySQL have been meeting and launching events across the world. Sun has stated clearly that the acquisition of MySQL will not diminish their support for Java DB. When the Java platform was open sourced, Sun’s software culture had to turn outward and refocus attention more carefully toward the open source community. Now the culture, or part of it, is turning again. A lot of adjustment, but Sun has a gift for turning on a dime.
The point has also been made in so many words that the Sun/MySQL connection gives open source a good name as two major companies join together and monetize free products through support. It makes it harder to continue to see open source in terms of weekend software hobbyists dabbling away in someone’s garage. Open source will become more quickly associated with first-rate performance, which is a good thing.
So, finally, more on Java DB-- It’s the Sun-supported version of Apache Derby with all development done with the Apache Derby community. It’s a complete relational database engine, written in 100% Java with a small footprint of 2MB of a JAR file. It runs on Java EE, and Java SE and more. It has a multi-tiered design for different use cases.
Here's where you can get it:
• Download it from the Java DB site:
• JavaSE 6 JDK
> for testing and for embedding
> and all previous incarnations of Sun's developer tools
• Glassfish Version 2
• Apache Derby
Java DB 10.4: Looking Ahead
And here's what to look forward to in Java DB 10.4:
• Security improvements
• SQL roles
• SQL OLAP functionalities: e.g. LIMIT()
• Table functions (VTI)
• Basic replication
• JMX management interfaces
• Performance improvements
Java DB and MySQL – Where Do They Fit or When to Use Which?
These appear to be two technologies that fit in different niches. I’m sure there are complexities and nuances that are worth exploring, but that is for another time and place. Right now I'll keep it very short with this:
Java DB is for embedded Java applications, multi-tier deployment, measured in terms of gigabytes. MySQL is for client-server applications, where clustering is needed and the database is measured in terabytes.
The final message, as in so many Tech Days sessions -- and rightfully so -- was a call to the developer community to get involved
So, here's how:
To participate in MySQL:
● http://dev.mysql.com (place to start for developers)
● http://bugs.mysql.com (report bugs, submit patches)
● http://forge.mysql.com (MySQL projects)
● http://forums.mysql.com (discuss developer issues)
To participate in Java DB:
● http://db.apache.org/derby (download, read docs)
● JIRA http://issues.apache.org/jira/browse/DERBY (report bugs, submit patches)
● firstname.lastname@example.org (discuss experience, get help, give feedback)
● email@example.com (discuss developer issues)
Learn more about Sun Tech Days.
Janice J. Heiss