Filter 如何在节俭C++中使用“ScNeNeOpenSCAN()”和“过滤字符串”访问HbASE

Filter 如何在节俭C++中使用“ScNeNeOpenSCAN()”和“过滤字符串”访问HbASE,filter,hbase,thrift,Filter,Hbase,Thrift,^_^大家好: 如何在节俭的C++中使用方法扫描、扫描和过滤字符串。 hbase版本为hbase-0.92.1 我想根据列的值选择行,因此我将scannerOpenWithScan添加到examples/thrift/DemoClient.cpp: /** * open a scanner with scan (filter string) */ 320 TScan tscan; 321 std::string filterStr; 322 filterStr = "Si

^_^大家好:

如何在节俭的C++中使用方法扫描、扫描和过滤字符串。 hbase版本为hbase-0.92.1

我想根据列的值选择行,因此我将scannerOpenWithScan添加到examples/thrift/DemoClient.cpp:

/**
* open a scanner with scan (filter string)
*/
320     TScan tscan;
321     std::string filterStr;
322     filterStr = "SingleColumnValueFilter (<=, '25', 'entry', 'num', true, false)";
323     tscan.__set_filterString(filterStr);       
324         
325     std::cout << "Starting scanner with scan..." << std::endl;
326     scanner = client.scannerOpenWithScan(t, tscan); 
327     std::cout << "The scanner id is " << scanner << std::endl;
328     try { ...... }
thrift.log错误为:

Starting scanner with scan...
ERROR: No more data to read.
796 java.lang.IllegalArgumentException: Incorrect filter string SingleColumnValueFilter(<=, '25', 'entry', 'num', true, false)
797         at org.apache.hadoop.hbase.filter.ParseFilter.parseSimpleFilterExpression(ParseFilter.java:250)
798         at org.apache.hadoop.hbase.filter.ParseFilter.parseFilterString(ParseFilter.java:168)
799         at org.apache.hadoop.hbase.thrift.ThriftServer$HBaseHandler.scannerOpenWithScan(ThriftServer.java:766)

我对此一无所知。有人知道如何使用C++过滤特性来访问HBase吗?

现在我知道答案:过滤器字符串是不正确的,正确的是:

filterStr = "SingleColumnValueFilter('entry', 'num', =, 'substring:25', true, false)";
正确的语法是:

SingleColumnValueFilter('<family>', '<qualifier>', <compare operator>, '<comparator>', <filterIfColumnMissing_boolean>, <latest_version_boolean>)
详情见
现在我知道答案了:过滤器字符串不正确,正确的是:

filterStr = "SingleColumnValueFilter('entry', 'num', =, 'substring:25', true, false)";
正确的语法是:

SingleColumnValueFilter('<family>', '<qualifier>', <compare operator>, '<comparator>', <filterIfColumnMissing_boolean>, <latest_version_boolean>)
详情见

如何形成复合过滤器的过滤器字符串。i、 例如,SingleColumnFilter和SingleColumnFilter或SingleColumnFilter如何形成复合过滤器的过滤器串。i、 例如,SingleColumnFilter和SingleColumnFilter或SingleColumnFilter