hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kyle Lin <kylelin2...@gmail.com>
Subject Re: How to get coprocessor list by client API
Date Tue, 29 Jan 2013 06:39:00 GMT
Hello JM

    If I import 0.94.4 jar file on Client side for calling getCoprocessors
to get list from server of old version(0.94.0), Is it possible?

Kyle

2013/1/28 Jean-Marc Spaggiari <jean-marc@spaggiari.org>

> Hi Kyle,
>
> If you are not running a production cluster, you might think about
> getting the last 0.94.4 source code, apply HBASE-7654 and deploy it.
> That way you can use getCoprocessors which will send you the list you
> the list you are looking for...
>
> JM
>
> 2013/1/28, Kyle Lin <kylelin2000@gmail.com>:
> > Hi JM
> >
> >      I saw the source code of hasCoprocessor, and notice this CONTANT.
> > Thanks for your hint.
> >
> > Kyle
> >
> > 2013/1/24 Jean-Marc Spaggiari <jean-marc@spaggiari.org>
> >
> >> Hi Kyle,
> >>
> >> This will give you all the attributs of the table, not just the
> >> coprocessors, so don't forget to parse they key using
> >> CP_HTD_ATTR_KEY_PATTERN ...
> >>
> >> I will add in my ToDo to add a List<> getCoprocessors() method in
> >> HTableInterface or HTableDescriptor...
> >>
> >> JM
> >>
> >> 2013/1/23, Kyle Lin <kylelin2000@gmail.com>:
> >> > Hello JM
> >> >
> >> > It really works! Thanks a lot.
> >> >
> >> > Hello Jack
> >> >
> >> >     For each table, it needs to use htable.getTableDescriptor().
> >> >
> >> >     hbaseAdmin.getTableDescriptor only gets -ROOT- and .META.
> >> >
> >> >     So I use the code as follows,
> >> >
> >> > HTable htable = new HTable(config, tableName);
> >> > HTableDescriptor htableDesc = *htable.getTableDescriptor()*;
> >> > Map<ImmutableBytesWritable, ImmutableBytesWritable> maps =
> >> > htableDesc.getValues();
> >> > Set<Entry<ImmutableBytesWritable, ImmutableBytesWritable>>
sets =
> >> > maps.entrySet();
> >> > for (Map.Entry<ImmutableBytesWritable, ImmutableBytesWritable>
> entrySet
> >> > :
> >> > sets) {
> >> > String stringKey = Bytes.toString(entrySet.getKey().get());
> >> > String stringValue = Bytes.toString(entrySet.getValue().get());
> >> > System.out.println("key:" + stringKey + ", value:" + stringValue);
> >> > }
> >> > htable.close();
> >> >
> >> > Kyle
> >> >
> >> > 2013/1/24 jack <ky73551@yahoo.com.tw>
> >> >
> >> >> Hi, Kyle
> >> >>
> >> >>         Configuration config = HBaseConfiguration.create();
> >> >>         config.set("hbase.zookeeper.quorum", "host3");
> >> >>         config.set("hbase.zookeeper.property.clientPort", "2181");
> >> >>
> >> >>         config.set("fs.default.name", "hdfs://host3:9000");
> >> >>         config.set("mapred.job.tracker", "hdfs://host3:9001");
> >> >>
> >> >>         HBaseAdmin hbaseAdmin = new HBaseAdmin(config);
> >> >>
> >> >>         HTableDescriptor htableDescriptor =
> >> >> hbaseAdmin.getTableDescriptor(Bytes.toBytes("table21"));
> >> >>
> >> >>         Map<ImmutableBytesWritable, ImmutableBytesWritable> maps
=
> >> >> htableDescriptor.getValues();
> >> >>         Set<Entry<ImmutableBytesWritable, ImmutableBytesWritable>>
> >> >> sets
> >> =
> >> >> maps.entrySet();
> >> >>         Iterator<Entry<ImmutableBytesWritable,
> >> >> ImmutableBytesWritable>>
> >> >> it
> >> >> = sets.iterator();
> >> >>         while(it.hasNext()){
> >> >>                 Entry<ImmutableBytesWritable, ImmutableBytesWritable>
> >> >> keys = it.next();
> >> >>                 ImmutableBytesWritable ibwKey = keys.getKey();
> >> >>                 ImmutableBytesWritable ibwValue = keys.getValue();
> >> >>                 String stringKey = Bytes.toString(ibwKey.get());
> >> >>                 String stringValue = Bytes.toString(ibwValue.get());
> >> >>                 System.out.println(stringKey + "    " + stringValue);
> >> >>         }
> >> >>         hbaseAdmin.close();
> >> >>
> >> >>
> >> >>
> >> >>
> >> >> ________________________________
> >> >>  寄件者: Kyle Lin <kylelin2000@gmail.com>
> >> >> 收件者: user@hbase.apache.org
> >> >> 寄件日期: 2013/1/23 (週三) 4:18 PM
> >> >> 主旨: How to get coprocessor list by client API
> >> >>
> >> >> Hi, Everyone
> >> >>
> >> >>     I need to know What coprocessors registered in a HTable. But, in
> >> >> Class
> >> >> HTableDescriptor, I can only find
> >> >> *addCoprocessor<
> >> >>
> >>
> http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/HTableDescriptor.html#addCoprocessor(java.lang.String)
> >> >> >
> >> >> *, *hasCoprocessor<
> >> >>
> >>
> http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/HTableDescriptor.html#hasCoprocessor(java.lang.String)
> >> >> >
> >> >> * ..etc. How can I use Client API to get the coprocessor information
> >> just
> >> >> like Typing "describe table_name" in HBase Shell as follows?
> >> >>
> >> >>
> >> >> hbase(main):002:0> describe 'table21'
> >> >> DESCRIPTION
> >> >>                   ENABLED
> >> >> {NAME => 'table21', *coprocessor$1 =>
> >> >> 'hdfs://host3:9000/sumCoprocessor.jar|idv.jack.endpoint true
> >> >>                                *
> >> >> * .SumDataEndpoint||'*, FAMILIES => [{NAME => 'cf',
> >> >> DATA_BLOCK_ENCODING
> >> >> =>
> >> >> 'NONE', BLOOMFILTER
> >> >> => 'NONE', REPLICATION_SCOPE => '0', VERSIONS => '3', COMPRESSION
=>
> >> >> 'NONE', MIN_VERSIONS =>
> >> >>   '0', TTL => '2147483647', KEEP_DELETED_CELLS => 'false', BLOCKSIZE
> >> >> =>
> >> >> '65536', IN_MEMORY =>
> >> >>   'false', ENCODE_ON_DISK => 'true', BLOCKCACHE => 'true'}]}
> >> >>
> >> >> 1 row(s) in 0.0210 seconds
> >> >>
> >> >> Kyle
> >> >>
> >> >
> >>
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message