Skip navigation
1 2 3 Previous Next

mortazavi

133 posts
mortazavi

JAVA = Innovation Blog

Posted by mortazavi Jun 4, 2009
I'm sitting in the general session to be given by IBM's Craig Hayman, Vice President IBM WebSphere, IBM Software Group. 

In the pre-screens, it says "JAVA = Innovation" ...

Change and innovation comes from combining ideas that already exist, i.e. by digesting and transforming history in the context of present.

No history exists without a community to propagate it!

The history of Java and the ideas that drive it are no exception!

Fragmentation of programming environments on various "Java" devices has always bothered mobile Java programmers. 

Hence, the build up to MSA 2, the successor of MSA 1.

It adds new JSRs and Certifications to the stack in order to reduce fragmentation over devices.

It addresses operational requirements.

Spec draft has three stacks instead of two -- covering a broader range of devices. Its biggest stack has 20+ JSRs.

It reduces fragmentation with a consistent set of APIs.

Quite a complex process has been used to determine which JSRs should go into which stack.

MSA 1 already includes certain JSRs, and in specifying MSA 2, there were certain requirements for backward compatibility with MSA 1.

In the past, there has been an issue regarding media type and media format fragmentation on various devices. Programmers have not been able to assume common media formats across devices.

MSA 2 is requiring certain common media formats. This will make it easier for developers to develop media applications and deploy it on various sets of devices.

JavaOne Conference's Raison d'
If at JavaOne, you should visit the Java DB pod and learn all about this fantastic database engine implemented in Java. 

At the pod, you'll get a chance to talk directly to Sun's Java DB (Apache Derby) team.

In the meantime, you can

Knut, Francois, along with Rick Hillegas, Dag Wanvik, Kristian Waagan and Ole Solberg (all Derby committers) will also be at the pod off and on.

This is the best chance to learn about Java DB. Take good advantage of it!

For most of next week, I'll be either at CommunityOne or JavaOne.

http://java.sun.com/javaone/2009/images/09J1_Web_Header_800x108.gif

http://developers.sun.com/events/communityone/images/C1E_14_Bubbles.gif
mortazavi

User Has it Right! Blog

Posted by mortazavi May 28, 2009

Kristian Waagan (of Sun's Java DBdevelopment team) has really given Java DB (Sun's distribution of Apache / Derby) a new life of its own when it comes to handling CLOBs, starting with Java DB 10.5.

Check out this thread

Note the following testimony from David Goulden:

The performance improvements with CLOBs are dramatic. I created a record with a CLOB containing about 10 million characters using derby 10.4. The following query took over 6(!) minutes:

 

       SELECT CONTENT FROM MESSAGES WHERE ID = 1

(CONTENT is the CLOB column.)

I then installed derby 10.5 and did a soft upgrade. The same query now takes less than three seconds!

According to a ChemAxon's forumposting from earlier last year, ChemAxon's Instant JChem has already been using Java DB (Apache Derby) in favor of HSQL for some time now! 

The authors who praise Derby also express a wish for in-memory storage, which is now part of Derby 10.5 and will soon appear in Java DB 10.5 for distribution with the JDK.

(Unfortunately, some of the other posts on the forum have some errors in them. I won't waste anytime here to try to address these errors as I'm sure the forum postings will eventually lead the reader in the right direction, in this particular case.)

So, for developers of these types of applications, the most important point of interest is the fact that Java DB 10.5 (based on Apache Derby 10.5) will now support in-memory storage. With Java DB 10.5, the Java DB distribution with the JDK will continue to be a boon for middle tier, desktop, rapid prototyping, sensing and testing applications in need of structured data--if not for a greater set of applications.

Mike Haller has put together a Twitter desktop client using Derby for local data. 

Haller should probably also try this on the CDC environment. This would be a coll application for the CDC devices!

Apache / Derby is the cauldron in which Java DB is forged and made ready by Sun's Java DB team as well as other members of the Apache Derby community.

Sun Java DB engineers will soon be releasing Java DB 10.5. Among other features, it will include in-memory storage. For more, start with a look at Knut Anders Hatlen's blog posting on the in-memory storage feature in Derby. Kristian Waagan had a big hand in bringing this feature to Derby and Java DB users!

Here, I usually write about Java-related issues, like my recent posts about Java DB. 

However, every once in a while I point to something outside of Java, usually turning focus on some other communities and projects managed by Sun. When this happens, I usually write on my Blogs.Sun.Com (BSC) blog, and put a pointer here.

So, as an example, most recently I have posted a brief note about some issues related to community contributions to MySQL, including some issues having to do with Sun Contributor Agreement (SCA) for MySQL.

When it comes to open-source community-based development, you might also want to re-read the experience I have summarized, as a series of Golden Rules for Open Source Contribution-Based Communities.

On this MacBook Pro laptop I'm currently using (2.5 GHz, intel Core 2 Duo, 4GB 667 MHz DDR2 SDRAM, Mac OS-X 10.5.6), with lots of other apps running, it took exactly 43 seconds to build the Apache Derby database. 

Apache Derby is the cauldron where Sun and other Apache participants forge what later becomes "Java DB" a database shipped with every copy of the JDK!

It was amazing that unlike years past, the only commands I needed to execute on this laptop to get source and do a build where these:

svn co https://svn.apache.org/repos/asf/db/derby/code/trunk derby2009
ant -quiet buildsource

All other software, including ant and svn as well as all the libraries, already existed on this laptop.

...
BUILD SUCCESSFUL
Total time: 43 seconds

The jars took 14 seconds to put together!

ant -quiet buildjars
BUILD SUCCESSFUL
Total time: 14 seconds

The build instructions modestly point out that we need to wait a bit longer for the Javadocs:

ant -quiet javadoc
BUILD SUCCESSFUL
Total time: 1 minute 46 seconds

A simple verification

java -jar jars/sane/derbyrun.jar sysinfo

reminds the user politely what has been built:

...
10.6.0.0 alpha - (772044)

You can also build the development tests and test Derby.

A "derbyall" test took my machine about 44 minutes to execute:

Summary results:

Test Run Started: 2009-05-06 12:54:43.0
Test Run Duration: 00:44:47

663 Tests Run
96% Pass (640 tests passed)
 4% Fail (23 tests failed)
15 Suites skipped

Of course, this is for an alpha branch.

Ultimately, to build Derby, you should use the definitive guidelines.

Now, a new release of Apache/Derby is out. 

Francois Orsini has a more detailed note on this. It is great to see that many of the features listed are developed by our small but amazing team of Java DB engineers.

(See my previous release about this cauldron where Java DB is forged!)

http://blogs.sun.com/kah/resource/kah.jpg

Apache Derby project is the cauldron where Sun starts the forging of Java DB, Sun's distribution of Derby and the premier Java database in the world!

Most recently, Knut Anders Hatlen, Java DB engineering and committer to the Apache Derby project, has been writing about the new features being shipped in Java DB 10.5.

It is important to know that Java DB is a project 3 years in the making, and we're now witnessing people interested in installing this database in hundreds of instances, in the middle tier of their applications. Java DB is particularly unique because it can easily be embedded with a Java application in a JVM. (Anyone who has studied Java somewhat closely should already be completely familiar with this fact.)

You can review the derby-users list on Apache to discover the level of sophistication in the user community, or go to the derby-dev list on Apache to discover and contribute to recent ideas and development with Derby replication.

In one of his many Derby 10.5 preview blog entries, Knut describes the use of generated columns, and follows up on their usability in a particular example involving case-insensitive search.

09J1_300x250_v2-1.gif 

This year, JavaOne let's students get in free!

Plus, they can sign up for CommunityOne at the same time.

Both passes are full conference passes with access to everything!

Educators can also get in free when they bring 10 students with them to the conference.

If they aren't able to do this, they still get a fantastic deal of $895 for a full conference pass.

What is a Full Pass?

All the benefits of a FULL conference attendee, which includes: JavaOne general and technical sessions, panel discussions, HOLs (Hands-on-labs), BOFs (Birds-of-a-feather), the Pavilion and the After Dark Bash / Networking Mixer! Not to mention a "hang space" (which includes video games, movies & more!), plus you will be able to check email any time at one of our many hacker stations.

PLUS

Admission to the CommunityOne Deep-Dives. What does this mean? FREE training by our very own SLS on some really great topics, plus hugely discounted certification (vouchers will be handed out at the event)- certification can even be done on-site! There will also be numerous parties and chances for you to network with the best and brightest in the industry, from community leaders to "Rockstars" and everyone in between.

Apache/Derby 10.5 is about to be released, and Knut Anders Hatlen has written a great blog entry about one of the new features: Generated Columns. (Knut himself has also worked on some important core-level feature that improves locking mechanisms within Derby.)

Derby is an all-Java database to which Sun engineers in the Java DB team contribute.

Java DB is Sun's release of Apache/Derby! In Java DB, even the database user-defined functions can be written in Java!

MySQL Workbench, as I noted earlier, has been selected as the #1 database development tool

There were two important releases in February that you can nowdownloadand use. For a comparison of the community (GPL/OSS) and standard (commercial edition), see here.

Workbench 5.0.3

Our download servers have just been loaded with the latest version of our current GA version of MySQL Workbench 5.0. We managed to close 27 bugs for this release. While 10 were actually fixed in code, we also re-validated many reports in our bug-DB and found 17 bug-reports which could be closed as the reported issue has been fixed in the meantime. We also added some shortcut-keys to the wizard interfaces - it's now possible to flip through the wizard pages (next, cancel, back) using shortcut key-combinations. Please hop right to the download page and fetch the new release.

Workbench 5.1.7 Alpha

Last week we had a team meeting, where we could discuss and plan various issues and ideas for current and upcoming versions of our project. But finally it's time to publish new material to show what we were up to in the past weeks. We have our first dual-platform-release of the MySQL Workbench 5.1.7 alpha version. Please note, that in terms of UI linux- and OSX- version aren't yet on the same level of completeness. While we are nearly done having all features onboard for the linux-build, we still have some more checkmarks to fill on the osx checklist - but we are catching up. Nevertheless it's the same codebase - especially the backend-code is the same for all platforms. Some of you ...