Hi Alk,

Please see inline...

From: Aliaksey Kandratsenka 
<[email protected]<mailto:[email protected]>>
Reply-To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Date: Tuesday, March 11, 2014 10:58 AM
To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: Re: request for comments: Project Left Ranger, range operations in 
Couchbase


Very interesting. What's most unclear especially if you compare it to couchdb's 
_all_docs is whether this will be limited to single vbucket or not.

I've gone back and forth on this one.  At the moment, I think the best thing to 
do is for this to be able to target vbuckets or all vbuckets on a given node.  
Unlike the _all_docs which has to do the merge-sort in one place at the 
cluster, this does not define any collation and the client would handle the 
results.  This should be very efficient and scale well.


If it's limited to single vbucket then it's not as useful as _all_docs (unless 
we also deploy long due client-side extension to control sharding of docs into 
vbuckets). If it's across all vbuckets (like poor and "gonna die" _all_docs 
implementation of couchbase is doing) then it's risking to be too slow.

Hm.  I don't agree.  I mean, it's 1024 * log(n) if you don't control sharding 
to buckets (which is not proposed), but it should not be slow since it's going 
straight to couchstore via ep-engine.  Yes, there's a big burden at the client 
side.  This may be in the client library or at the application.

So, in that way, it's different than what's happening for all_docs's 
replacement.


BTW there's http://www.couchbase.com/issues/browse/MB-10034 with some context 
on very similar requirement for document editing UI.


Yes, just read that, thanks for pointing it out.  There is some overlap, but I 
believe they are different things.  Ultimately, I think we'll want similar 
range requests in UPR as well.  As a matter of fact, I'd originally proposed 
that be closer to the approach, but Chiyoung suggested range queries and I 
rather like the suggestion for a couple reasons.

One is that it's very general purpose.  The other is that there is a lot going 
on in UPR as it stands and as Aaron pointed out, it's a very "streamy" kind of 
thing internally.  This proposal uses a lot of existing pieces to do something 
very simple and very useful.  The range portion is already there in couchstore 
and the ability to manage cursors visiting new items as they arrive is already 
there in ep-engine.

In any event, the recent update I'd had (which I need to get more info on) is 
that UPR won't have any public interface for some time.  It sounded like the 
initial release scope had been reduced.

Thanks,

Matt

--
Matt Ingenthron
Couchbase, Inc.

-- 
You received this message because you are subscribed to the Google Groups 
"Couchbase" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to