The Source for Java Technology Collaboration
User: Password:



David Van Couvering

David Van Couvering 's Blog

Replication? In Java DB? Wow.

Posted by davidvc on June 22, 2007 at 01:46 PM | Comments (2)

Open source continues to amaze me. For so many years, I have worked on projects where customers would clamor for features, and we just didn't have enough time in the day or people to get them all built. We would say "yeah, that sounds cool" but with all the other things on our plate, when would we ever get to it?

Well, in open source, it's a whole different ball game. The latest example is the contribution of Egil Sorensen's master's thesis. Egil is a student in the Computer Science department at NTNU in Trondheim, Norway, and he has contributed code that provides replication and hot standby for Apache Derby (discovered through Max Mortazavi's blog).

This paper and attached source code describes the work done to add hot standby replication functionality to the Apache Derby Database Management System.

By implementing a hot standby scheme in Apache Derby several features are added. The contents of the database is replicated at run time to another site providing online runtime backup. As the hot standby takes over on faults availability is added in that a client can connect to the hot standby after a crash. Thus the crash is masked from the clients. In addition to this, online upgrades of software and hardware can be done by taking down one database at the time. Then when the upgrade is completed the upgraded server is synchronized and back online with no downtime.

A fully functional prototype of the Apache Derby hot standby scheme has been created in this project using logical logs, fail-fast takeovers and logical catchups after an internal up-to-crash recovery and reconnection.

In case you missed that, this feature provides basic high availability to Derby. This is not small potatoes, and it was done as an independent contribution to Derby. Wow.


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • Hi,
    I would also like to point you to:


    GAPI
    especially: Derby-G


    GAPI (Gorda API) is an interface that reflects the execution of a transaction within a DBMS. Through this interface you have access to information that can be used to perform synchronous/assynchronous replication in master-slave/multi-master scenarios.

    Derby patched with GAPI does not provide a fully replication solution. It needs another module that extracts/injects data from/into the interface and replicates it. In the GORDA context it is named ESCADA Replication Server (which implements several replication protocols).

    If you are interested, you can find additional and detailed information about it in the GORDA project website.

    Posted by: losoares on June 24, 2007 at 04:58 PM

  • Nice...
    http://www.impact-fellowship.org/_cusudi/0000007a.htm
    http://www.chaco.gov.ar/meccyt/subsecyt/_act1/0000060b.htm
    http://www.chaco.gov.ar/meccyt/subsecyt/_act1/00000353.htm
    http://www.wapug.org.uk/_CoP_discussion/00001ca9.htm
    Harvard - Harvard

    http://www.wapug.org.uk/_CoP_discussion/00001ca8.htm
    Stanford - Stanford
    http://washington.uwc.edu/about/faculty/rybak_c/webpage/_disc10/00005663.htm
    http://orgs.salisbury.edu/fishing/Discussion/0000737f.htm
    Yale - Yale

    Posted by: jamesdalton on January 21, 2008 at 12:43 AM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds