Lars, This sounds pretty cool. I'd be all for it.
+1 for leveraging up most of the existing features. Do I sense a megastore implementation side project somewhere in the future? - Jesse Yates Sent from my iPhone. On Jan 17, 2012, at 1:27 PM, lars hofhansl <[email protected]> wrote: > I just committed HBASE-5203 (together with HBASE-3584 this implements atomic > row operations). > Although a relatively small patch it lays the groundwork for heterogeneous > operations in a single WALEdit. > > The interesting part is that even though the code enforced the atomic > operation to be a for single row, this is not required. > It is enough if all involved KVs reside in the same region. > > I am not saying that we should add any high level concept to HBase (such as > the EntityGroups of Megastore). > > But, with a slight addition to the API (allowing a grouping of multiple row > operations) client applications have all the building blocks to do limited > cross row atomic operations. > The client application would be responsible for either correctly > pre-splitting the table, or a custom balancer has to be provided. > > The operation would fail if the regionserver determines that it would need > data from multiple region servers. > > I think this needs at least minimal support from HBase and cannot > (efficiently or without adding more moving parts) by a client API only. > > > Comments? Is this worth pursuing? If so, I'll file a jira and provide a patch. > > Thanks. > > > -- Lars >
