Hi Mauricio, Currently we don't offer any kind of "multi-scan" or "multi-get" API. So the best bet is probably to use async scanners, separately, one for each range that you need to fetch.
Assuming that the scans are short ranges or single keys, each such scanner should result in a single round-trip to the target server. i.e the scanner "open" call will fetch the results and automatically "close" itself assuming that the results fit in a single RPC. So, you may find that performance is pretty good even if the API appears clunky at first. -Todd On Mon, Sep 25, 2017 at 5:01 PM, Mauricio Aristizabal < [email protected]> wrote: > Hi Kudu team > > KuduPredicate.newInListPredicate is very handy when retrieving multiple > records in one scan, but it's not useful to do so by key if it's a > composite primary key. > > What's the proper way to retrieve 50 arbitrary records by composite key? > do we need to do 50 separate (perhaps async) scans? > > I certainly don't see a way in the api docs to join multiple predicates > with an OR operator. > > thanks, > > -m > > -- > *MAURICIO ARISTIZABAL* > Architect - Business Intelligence + Data Science > [email protected](m)+1 323 309 4260 <(323)%20309-4260> > 223 E. De La Guerra St. | Santa Barbara, CA 93101 > <https://maps.google.com/?q=223+E.+De+La+Guerra+St.+%7C+Santa+Barbara,+CA+93101&entry=gmail&source=g> > > Overview <http://www.impactradius.com/?src=slsap> | Twitter > <https://twitter.com/impactradius> | Facebook > <https://www.facebook.com/pages/Impact-Radius/153376411365183> | LinkedIn > <https://www.linkedin.com/company/impact-radius-inc-> > -- Todd Lipcon Software Engineer, Cloudera
