日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HBase-scan API 通过scan读取表中数据

發布時間:2025/6/15 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HBase-scan API 通过scan读取表中数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

直接貼代碼啦

[java]?view plaincopy
  • /**?
  • ?????*??
  • ?????*?@param?zkIp?
  • ?????*?@param?zkPort?
  • ?????*?@param?tablename?
  • ?????*?@param?startRow???傳null掃全表?
  • ?????*?@param?stopRow?已~結尾?
  • ?????*?@throws?Exception?
  • ?????*/??
  • ????public?static?void?scanTable(String?zkIp,String?zkPort,String?tablename,String?startRow,String?stopRow)?throws?Exception?{??
  • ??????????
  • ????????HTablePool?pool;??
  • ????????Configuration?config?=?HBaseConfiguration.create();??
  • ????????config.set("hbase.zookeeper.quorum",zkIp);//??
  • ????????config.set("hbase.zookeeper.property.clientPort",?zkPort);??
  • ????????pool?=?new?HTablePool(config,?2);??
  • ??????????
  • ????????HTableInterface?hbTable?=?null;??
  • ????????try?{??
  • ????????????hbTable?=?pool.getTable(tablename);?//?表名??
  • ????????????ResultScanner?rs?=?null;??
  • ????????????Scan?scan?=?new?Scan();??
  • ????????????//?scan.addColumn(Bytes.toBytes("cf1"),Bytes.toBytes("qual1"));掃某一列??
  • ????????????if?(startRow?!=?null)?{?//?設置掃描的范圍??
  • ????????????????scan.setStartRow(Bytes.toBytes(startRow));??
  • ????????????}??
  • ????????????if?(stopRow?!=?null)?{??
  • ????????????????scan.setStopRow(Bytes.toBytes(stopRow));??
  • ????????????}??
  • ??
  • ????????????rs?=?hbTable.getScanner(scan);??
  • ????????????hbTable.close();??
  • ????????????for?(Result?r?:?rs)?{//?按行去遍歷??
  • ????????????????for?(KeyValue?kv?:?r.raw())?{//?遍歷每一行的各列??
  • ????????????????????StringBuffer?sb?=?new?StringBuffer()??
  • ????????????????????????????.append(Bytes.toString(kv.getRow())).append("\t")??
  • ????????????????????????????.append(Bytes.toString(kv.getFamily()))??
  • ????????????????????????????.append("\t")??
  • ????????????????????????????.append(Bytes.toString(kv.getQualifier()))??
  • ????????????????????????????.append("\t").append(Bytes.toString(kv.getValue()));??
  • ????????????????????System.out.println(sb.toString());??
  • ????????????????????//?kv.getRow()?key??
  • ????????????????????//?kv.getFamily()?cf1??
  • ????????????????????//?kv.getQualifier()?列名??
  • ????????????????????//?kv.getValue()?value??
  • ??
  • ????????????????}??
  • ??
  • ????????????}??
  • ??
  • ????????}?catch?(Exception?e)?{??
  • ????????????System.out.println(e.getMessage());??
  • ????????}finally{??
  • ????????????pool.close();??
  • ????????}??
  • ????????????
  • ????}??
  • 總結

    以上是生活随笔為你收集整理的HBase-scan API 通过scan读取表中数据的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。