You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by Vladimir Rodionov <vr...@carrieriq.com> on 2011/12/23 07:01:11 UTC

Extend ResultScanner API (and InternalScanner)

This is suggestion and request at the same time:

It would be nice to have the following methods:

seek(byte[] row)
seekToLast()
seekToFirst()

and

prev()

I am pretty sure its doable.

The reason is obvious: we can do much faster large number of short scans if we have this API.

Best regards,
Vladimir Rodionov
Principal Platform Engineer
Carrier IQ, www.carrieriq.com
e-mail: vrodionov@carrieriq.com


Confidentiality Notice:  The information contained in this message, including any attachments hereto, may be confidential and is intended to be read only by the individual or entity to whom this message is addressed. If the reader of this message is not the intended recipient or an agent or designee of the intended recipient, please note that any review, use, disclosure or distribution of this message or its attachments, in any form, is strictly prohibited.  If you have received this message in error, please immediately notify the sender and/or Notifications@carrieriq.com and delete or destroy any copy of this message and its attachments.

Re: Extend ResultScanner API (and InternalScanner)

Posted by yu...@gmail.com.
Do you mind log a Jira ?

Thanks



On Dec 22, 2011, at 10:01 PM, Vladimir Rodionov <vr...@carrieriq.com> wrote:

> This is suggestion and request at the same time:
> 
> It would be nice to have the following methods:
> 
> seek(byte[] row)
> seekToLast()
> seekToFirst()
> 
> and
> 
> prev()
> 
> I am pretty sure its doable.
> 
> The reason is obvious: we can do much faster large number of short scans if we have this API.
> 
> Best regards,
> Vladimir Rodionov
> Principal Platform Engineer
> Carrier IQ, www.carrieriq.com
> e-mail: vrodionov@carrieriq.com
> 
> 
> Confidentiality Notice:  The information contained in this message, including any attachments hereto, may be confidential and is intended to be read only by the individual or entity to whom this message is addressed. If the reader of this message is not the intended recipient or an agent or designee of the intended recipient, please note that any review, use, disclosure or distribution of this message or its attachments, in any form, is strictly prohibited.  If you have received this message in error, please immediately notify the sender and/or Notifications@carrieriq.com and delete or destroy any copy of this message and its attachments.

RE: Extend ResultScanner API (and InternalScanner)

Posted by Vladimir Rodionov <vr...@carrieriq.com>.
Yes, my aim is to reuse scanner for multiple scans. In some cases, "multiple"
can be in order of tens of thousands. The cost of creation of 10,000 scanners I suppose is quite high.
This is mostly for the server-side (Coprocessors), We are replacing creating of a new scanner with an 
absolute position operation which is, by default, much faster. 

As for use cases, 
some complex indexing schemes may involve multiple execution of a relatively short scan
operations. 

Best regards,
Vladimir Rodionov
Principal Platform Engineer
Carrier IQ, www.carrieriq.com
e-mail: vrodionov@carrieriq.com

________________________________________
From: lars hofhansl [lhofhansl@yahoo.com]
Sent: Thursday, December 22, 2011 10:44 PM
To: dev@hbase.apache.org
Subject: Re: Extend ResultScanner API (and InternalScanner)

Your aim is reuse the same scanner for multiple scans?

seek(byte[] row) is equivalent to a new scan with startRow set to row.
seekToFirst() is equivalent to a new scan.

When would you use seekToLast() and prev()?


Would you envision to be a client side API, or just internal (for CoProcessors)?
Server side this should not be too hard to do. Client side it seems somewhat pointless as it wouldn't reduce the number of roundtrips.
(But I might not understand fully what you want to achieve).


If you like to file a jira... Could you explain your usecases there?

Thanks.


-- Lars



________________________________
 From: Vladimir Rodionov <vr...@carrieriq.com>
To: "dev@hbase.apache.org" <de...@hbase.apache.org>
Sent: Thursday, December 22, 2011 10:01 PM
Subject: Extend ResultScanner API (and InternalScanner)

This is suggestion and request at the same time:

It would be nice to have the following methods:

seek(byte[] row)
seekToLast()
seekToFirst()

and

prev()

I am pretty sure its doable.

The reason is obvious: we can do much faster large number of short scans if we have this API.

Best regards,
Vladimir Rodionov
Principal Platform Engineer
Carrier IQ, www.carrieriq.com
e-mail: vrodionov@carrieriq.com


Confidentiality Notice:  The information contained in this message, including any attachments hereto, may be confidential and is intended to be read only by the individual or entity to whom this message is addressed. If the reader of this message is not the intended recipient or an agent or designee of the intended recipient, please note that any review, use, disclosure or distribution of this message or its attachments, in any form, is strictly prohibited.  If you have received this message in error, please immediately notify the sender and/or Notifications@carrieriq.com and delete or destroy any copy of this message and its attachments.

Re: Extend ResultScanner API (and InternalScanner)

Posted by lars hofhansl <lh...@yahoo.com>.
Your aim is reuse the same scanner for multiple scans?

seek(byte[] row) is equivalent to a new scan with startRow set to row.
seekToFirst() is equivalent to a new scan.

When would you use seekToLast() and prev()?


Would you envision to be a client side API, or just internal (for CoProcessors)?
Server side this should not be too hard to do. Client side it seems somewhat pointless as it wouldn't reduce the number of roundtrips.
(But I might not understand fully what you want to achieve).


If you like to file a jira... Could you explain your usecases there?

Thanks.


-- Lars



________________________________
 From: Vladimir Rodionov <vr...@carrieriq.com>
To: "dev@hbase.apache.org" <de...@hbase.apache.org> 
Sent: Thursday, December 22, 2011 10:01 PM
Subject: Extend ResultScanner API (and InternalScanner)
 
This is suggestion and request at the same time:

It would be nice to have the following methods:

seek(byte[] row)
seekToLast()
seekToFirst()

and

prev()

I am pretty sure its doable.

The reason is obvious: we can do much faster large number of short scans if we have this API.

Best regards,
Vladimir Rodionov
Principal Platform Engineer
Carrier IQ, www.carrieriq.com
e-mail: vrodionov@carrieriq.com


Confidentiality Notice:  The information contained in this message, including any attachments hereto, may be confidential and is intended to be read only by the individual or entity to whom this message is addressed. If the reader of this message is not the intended recipient or an agent or designee of the intended recipient, please note that any review, use, disclosure or distribution of this message or its attachments, in any form, is strictly prohibited.  If you have received this message in error, please immediately notify the sender and/or Notifications@carrieriq.com and delete or destroy any copy of this message and its attachments.