Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
HBase >> mail # user >> Coreprocessor always scan the whole table.


+
GuoWei 2013-04-19, 09:49
+
ramkrishna vasudevan 2013-04-19, 10:01
+
Ted Yu 2013-04-19, 10:01
+
GuoWei 2013-04-19, 11:58
+
Ted Yu 2013-04-19, 12:59
+
Gary Helmling 2013-04-19, 16:17
Copy link to this message
-
Re: Coreprocessor always scan the whole table.
Yes, I just want to limit the scan with the table by the table row key.
And I don't pass the startRow and endRow in GetList method.
I just pass the startRow and endRow to  coprocessorExec method.
My Code is as below:
>>>>> results = table.coprocessorExec(IEndPoint_SA.class,  startrow, endrow,
>>>>>         new Batch.Call<IEndPoint_SA,Hashtable<String,Hashtable>>() {
>>>>>           public Hashtable<String,Hashtable> call(IEndPoint_SA
>> instance)throws IOException{
>>>>>               Hashtable<String,Hashtable> s = null;
>>>>>             try {
>>>>>                 s=instance.GetList();
>>>>>             } catch (ParseException e) {
>>>>>                 // TODO Auto-generated catch block
>>>>>                 e.printStackTrace();
>>>>>             }
>>>>>             return s;
>>>>>           }
>>>>>         });

Thanks  a lot.

Best Regards / 商祺
郭伟 Guo Wei

在 2013-4-20,上午12:17,Gary Helmling <[EMAIL PROTECTED]> 写道:

> As others mention HBASE-6870 is about coprocessorExec() always scanning the
> full .META. table to determine region locations.  Is this what you mean or
> are you talking about your coprocessor always scanning your full user table?
>
> If you want to limit the scan within regions in your user table, you'll
> need to pass startRow and endRow as parameters to your instance.GetList()
> method.  Then when you create the region scanner in your coprocessor code,
> you'll need to set the start and end row yourself in order to limit the
> rows scanned.
>
>
> On Fri, Apr 19, 2013 at 5:59 AM, Ted Yu <[EMAIL PROTECTED]> wrote:
>
>> Please upgrade to 0.94.6.1 which is more stable.
>>
>> Cheers
>>
>> On Apr 19, 2013, at 4:58 AM, GuoWei <[EMAIL PROTECTED]> wrote:
>>
>>>
>>> We use base 0.94.1 in our production environment.
>>>
>>>
>>> Best Regards / 商祺
>>> 郭伟 Guo Wei
>>>
>>> 在 2013-4-19,下午6:01,Ted Yu <[EMAIL PROTECTED]> 写道:
>>>
>>>> Which hbase version are you using ?
>>>>
>>>> Thanks
>>>>
>>>> On Apr 19, 2013, at 2:49 AM, GuoWei <[EMAIL PROTECTED]> wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> We use HBase core processor endpoint  to process realtime data. But
>> when I use coreprocessorExec method to scan table and pass startRow and
>> endRow. It always scan all table instead of the result between the startRow
>> and endRow.
>>>>>
>>>>> my code.
>>>>>
>>>>> results = table.coprocessorExec(IEndPoint_SA.class,  startrow, endrow,
>>>>>         new Batch.Call<IEndPoint_SA,Hashtable<String,Hashtable>>() {
>>>>>           public Hashtable<String,Hashtable> call(IEndPoint_SA
>> instance)throws IOException{
>>>>>               Hashtable<String,Hashtable> s = null;
>>>>>             try {
>>>>>                 s=instance.GetList();
>>>>>             } catch (ParseException e) {
>>>>>                 // TODO Auto-generated catch block
>>>>>                 e.printStackTrace();
>>>>>             }
>>>>>             return s;
>>>>>           }
>>>>>         });
>>>>>
>>>>>
>>>>>
>>>>> Best Regards / 商祺
>>>>> 郭伟 Guo Wei
>>>>> -----------------------------------------------------
>>>>
>>>
>>

+
GuoWei 2013-04-19, 14:24
+
Jean-Marc Spaggiari 2013-04-19, 12:12