hbase scan 正則 Hbase過濾器實戰

2021-10-13 17:20:00 字數 2464 閱讀 5330

no_op 排除所有

binarycomparator  按位元組索引順序比較指定位元組陣列,採用bytes.compareto(byte)

binaryprefixcomparator 跟前面相同,只是比較左端字首的資料是否相同

nullcomparator 判斷給定的是否為空

bitcomparator 按位比較

regexstringcomparator 提供乙個正則的比較器,僅支援 equal 和非equal

substringcomparator 判斷提供的子串是否出現在中

* 查詢所有的rowkey比0003小的所有的資料

*/@test

public void rowfilter() throws ioexception else}}

}

/**

* 通過familyfilter來實現列族的過濾

* 需要過濾,列族名包含f2

* 列名過濾器 只查詢包含name列的值

* 列名包含「name」

*/@test

public void qualifierfilter() throws ioexception

private void printlreult(resultscanner scanner) else}}

}

/**

* 查詢哪些字段值 包含"8"

*/@test

public void contains8() throws ioexception

/**

* select * from myuser where name = '劉備'

* 會返回我們符合條件資料的所有的字段

** singlecolumnvalueexcludefilter 列值排除過濾器

* select * from myuser where name != '劉備'

*/@test

public void singlecolumnvaluefilter() throws ioexception

/**

* 查詢rowkey字首以 00開頭的所有的資料

//分頁過濾器

@test

public void pagefilter() throws ioexception else

scan.setstartrow(startrow.getbytes());

scan.setmaxresultsize(pagesize);

pagefilter pagefilter1 = new pagefilter(pagesize);

scan.setfilter(pagefilter1);

resultscanner scanner1 = table.getscanner(scan);

printlreult(scanner1);}}

/**

* 查詢 f1 列族 name 為劉備資料值

* 並且rowkey 字首以 00開頭資料

*/@test

public void filterlist() throws ioexception

編譯 Hadoop append 用於Hbase

hbase building an hadoop 0.20.x version for hbase 0.90.2 作業系統 centos linux git clonecd hadoop common zhankunlin icthtc hadoop common zhankunlin icthtc...

Hbase Scan查詢左右區間開閉問題

剛開始用hbase,用scan進行資料查詢,以為類似於mysql的between and 但是發現查詢結果不對 table table connection.gettable tablename.valueof tablename scan scan new scan scan.setstartro...

sqoop 從mysql 匯入資料到hbase

首先我們在mysql有一張表test.tohdfs 我們在hbase中也建立一張表,執行匯入 bin sqoop import connect jdbc mysql username root password 123456 table tohdfs hbase table hbase tohdfs...