Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
None
Description
From Paul Smith up on hbase-user@:
I think a good collection of useful builders and utilities that handle the 80% case will help HBase gain much more traction. As an person starting with HBase, there are a lot of concepts to get, Bytes definitely get in the way of seeing the real underlying patterns. I'm a total believer in understanding the internals to get the best out of a product, but that often comes after experimentation, and these high-level libraries grease the wheels for faster 'grok'ing the concepts.
Thinking out loud here, but something like this may be useful:
PutBuilder builder = new PutBuilder(hTable); // first Row builder.withRowKey(1stRowKey).withColumnFamily("foo") .put("columnA", valueA) .put("columnB",valueB); // secondRow builder.withRowKey(2ndRowKey).withColumnFamily("eek") .put("columnC", valueC) .put("columnD",valueD); .. builder.putAll();
Perhaps we could use the Builder pattern to achieve simplification (e.g. HBASE-1990) and API support for multicalls (HBASE-1986, HBASE-1845) at the same time. Method variants should accept byte[] or String for keys or values, and lists.
Attachments
Attachments
Issue Links
- relates to
-
HBASE-1845 MultiGet, MultiDelete, and MultiPut - batched to the appropriate region servers
- Closed
-
HBASE-1986 Batch Gets
- Closed
-
HBASE-1839 Reconciling batch puts, deletes and gets
- Closed
-
HBASE-2597 Use "Builder" pattern instead of many-argument constructors
- Closed
-
HBASE-2609 Harmonize the Get and Delete operations
- Closed
-
HBASE-1990 Add methods accepting strings for family/qualifier in client
- Closed