hbase表的建立過程:
1.首先獲得乙個conf物件
configuration conf = hbaseconfiguration.create();
2.配置zookeeper節點與埠號
conf.set("hbase.zookeeper.quorum", "node01,node02,node03");conf.set("hbase.zookeeper.property.clientport", "2181");
3.獲得乙個connection物件
hbaseconn= connectionfactory.createconnection(conf);
4.建立乙個管理員物件進行表的操作
admin admin = hbaseconn.getadmin();
5.判斷該錶是否存在,存在則刪除
if (admin.tableexists(tablename.valueof(tablename)))
6.建立tabledescriptor和columndescriptor
htabledescriptor htabledescriptor = new htabledescriptor(tablename);hcolumndescriptor hcolumndescriptor = new hcolumndescriptor(constants.default_family);
htabledescriptor.addfamily(hcolumndescriptor);
7.建立table,並指定預分割槽數
createtable(htabledescriptor, splitkey);
8.預分割槽**
private byte getsplitkey(integer defaultregionnum)return bytenum;
}
9.rowkey設計
HBASE 預分割槽建表
在create乙個表時如果不指定預分配region,則缺省會先分配乙個region,這樣在大資料並行載入時效能比較低,因為所有的資料都往乙個region灌入,容易引起單節點負載公升高,從而影響入庫效能,乙個好的方法時在建立表時預先分配數個region。方法有兩種,主要針對不同版本可供選擇。1.使用r...
Hbase 表預分割槽 手動分割槽
預設情況下,在建立hbase表的時候會自動建立乙個region分割槽,當匯入資料的時候,所有的hbase客戶端都向這乙個region寫資料,直到這個region足夠大了才進行切分。一種可以加快批量寫入速度的方法是通過預先建立一些空的regions,這樣當資料寫入hbase時,會按照region分割槽...
hbase中預分割槽表中資料的查詢(二)
在上一遍博文中介紹了建立建立預分割槽,並實現新增資料操作,本篇博文,介紹不同角度的查詢 scan 設定時間範圍查詢 param htable throws ioexception private static void scanbyrangequery table htable,string sta...