HBase provides atomic row-level updates. This is one of the important reasons why we choose HBase as the underlying store for our upcoming Lily open source content repository, as consistency is very important for users trusting their data onto our software. Next, we needed some way to rapidly locate HBase-stored data without key-based access, so we came up with the idea of building secondary indexes on top of HBase. Ultimately, we'll also provide a flexible user-level search powered by SOLR, which will require us to maintain a frequently (near-real-time) updated index alongside our HBase-backed main data store.
All this required us to have a flexible way to facilitate synchronous actions across multiple HBase tables, and asynchronous queuing of index updates for SOLR - in a distributed architecture with no real single point of failure. We've named this the HBase RowLog library, and it provides a way to build WAL (write-ahead logs) and message queue systems on top of HBase, and we're releasing a first version of this RowLog library today.
Documentation, source code and example code is available - enjoy! Let us know what you think of it!