accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William Slacum (JIRA)" <>
Subject [jira] [Commented] (ACCUMULO-697) Break Scanner parameterization from Key,Value to Key,{Something}
Date Sat, 21 Jul 2012 18:05:35 GMT


William Slacum commented on ACCUMULO-697:

Does this work with client side iterators only? The top level iterator will usually be running
server side, so you'll need to have an interface to set a serializer for some object at the
top of the stack (and possibly another deserializer if you have custom iterators beneath it)
and set a deserializer at the client level. At some point on the server side, the iterator
will have to transform the user type into a {{byte[]}}, which is basically what a {{Value}}
is. On the client side, the user will still have to supply code to deserialize the {{byte[]}},
which can already be accomplished with no code changes by using a library such as Google Collections/Guava
or Apache Commons.

> Break Scanner parameterization from Key,Value to Key,{Something}
> ----------------------------------------------------------------
>                 Key: ACCUMULO-697
>                 URL:
>             Project: Accumulo
>          Issue Type: Improvement
>          Components: client
>    Affects Versions: 1.5.0
>            Reporter: Josh Elser
>            Assignee: Josh Elser
> When writing a custom iterator, many times the iterator has some semantic knowledge of
what each Key/Value being returned actually means (e.g. A word count could be returning Key/Value
but really is returning an Integer/Long count in the Value). This forces the client to know
what is going to be returned and handle the cast/transformation.
> I believe it should be fairly straightforward to encapsulate this transformation inside
the Accumulo client code. I plan on investigating the possibility of changing the ScannerBase
impl, or perhaps making a TypedScannerBase, in which the iterator at the "top" of the stack
for a scan can return something other than a Value to the client.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message