I love open source
I just love open source. Before Derby, all the projects I worked
on were closed source, and if you wanted to get something done,
you had to scrounge and beg for resources, and usually you didn't
get it. All the cool ideas you had to improve the product had to play
second fiddle to other priorities.
With Derby, within Sun, it's been the same way. We only have so
many resources, and we have to make difficult choices. But because
Derby is open source, and the community is active, fairly regularly
these things show up that are like Christmas presents, except it can
happen at any time of the year.
Last year, somebody dropped in support for DESCRIBE TABLE, something
we all wanted but didn't have time for. Then there is XML support,
which is valuable, but we just don't have people to work on it.
This week, a couple of students sent a link to the derby-dev alias
with the results of their project in their database class at
NTNU, the Norwegian University of Science and Technology. They produced
an incredibly well-done analysis of the performance bottlenecks
for Derby when running in SMP environments. They used DTrace for
Java and identified key issues and suggestions for improvement, and
are even proposing that for their next project they actually go in
an fix some of these issues.
Can you imagine someone doing that for Oracle or DB2? Instead, those
guys have to hire performance engineers to do all the work. We get it
for free. Sure, it's a little embarassing to see how poorly Derby scales on these systems, but now they've shown us how to fix it.
Take a look. The introduction to database concepts
at the beginning is worth your time. Anyone developing against or
deploying databases should understand some of these concepts.
Thanks, Anders and Petr!