hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From lars hofhansl <lhofha...@yahoo.com>
Subject Limited cross row transactions
Date Tue, 17 Jan 2012 21:27:12 GMT
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.


-- Lars

View raw message