asd

	<property>
	 <name>hbase.client.scanner.caching</name>
	 <value>10</value>
	</property>

	优化建议:使用批量get进行读取请求
	public static List<String> qurryTableTestBatch(List<String> rowkeyList) throws IOException {
	        List<Get> getList = new ArrayList();
	        String tableName = "table_a";
	        Table table = connection.getTable( TableName.valueOf(tableName));// 获取表
	        for (String rowkey : rowkeyList){//把rowkey加到get里,再把get装到list中
	            Get get = new Get(Bytes.toBytes(rowkey));
	            getList.add(get);
	        }
	        Result[] results = table.get(getList);//重点在这,直接查getList<Get>
	        for (Result result : results){//对返回的结果集进行操作
	            for (Cell kv : result.rawCells()) {
	                String value = Bytes.toString(CellUtil.cloneValue(kv));
	                list.add(value);
	            }
	        }
	        return list;
	    }

Scan scan = new Scan();
                scan.setStartRow(Bytes.toBytes(startRowKey));
                scan.setStopRow(Bytes.toBytes(endRowKey));
                //基于列族的过滤
                Filter filter = new FamilyFilter(CompareFilter.CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes("timeLen")));
                scan.setFilter(filter);
                scanner = table.getScanner(scan);

优化建议:离线批量读取请求设置禁用缓存,scan.setBlockCache(false)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值