TestBase.java
package com.matrix.hbase;
import java.io.IOException;
import java.util.Random;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Admin;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.junit.Before;
import org.junit.Test;
public class TestBase {
public static Random ra = new Random();
public static Connection conn = null;
public static TableName table = TableName.valueOf("test".getBytes());
@Before
public void setup() throws IOException {
Configuration config = HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", "node2,node3,node5");
conn = ConnectionFactory.createConnection(config);
}
@Test
public void createTable() throws IOException {
Admin admin = conn.getAdmin();
// 如果表存在,则删除
if (admin.tableExists(table)) {
// 删除表中数据
admin.disableTable(table);
// 删除表
admin.deleteTable(table);
}
HTableDescriptor ht = new HTableDescriptor(table);
HColumnDescriptor hd = new HColumnDescriptor("cf1".getBytes());
hd.setMaxVersions(5);
hd.setBlockCacheEnabled(true);
hd.setBlocksize(1280000);
ht.addFamily(hd);
admin.createTable(ht);
}
}
hbase(main):024:0> list
TestHbase.java
package com.matrix.hbase;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.Cell;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Admin;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.ResultScanner;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.client.Table;
import org.junit.Before;
import org.junit.Test;
public class TestHbase {
public static Random ra = new Random();
public static Connection conn = null;
public static TableName table = TableName.valueOf("test".getBytes());
@Before
public void setup() throws IOException {
Configuration config = HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", "node2,node3,node5");
conn = ConnectionFactory.createConnection(config);
}
@Test
public void insert() throws IOException {
Table ta = conn.getTable(TestHbase.table);
List ls = new ArrayList<Put>();
for (int i = 0; i <= 1000; i++) {
Put put = new Put(("123_" + i).getBytes());
put.addColumn("cf1".getBytes(), "name".getBytes(), "zs".getBytes());
put.addColumn("cf1".getBytes(), "age".getBytes(), String.valueOf(ra.nextInt(100)).getBytes());
ls.add(put);
}
ta.put(ls);
}
}
hbase(main):006:0> scan 'test'
TestHbase.java
package com.matrix.hbase;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.Cell;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Admin;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.ResultScanner;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.client.Table;
import org.junit.Before;
import org.junit.Test;
public class TestHbase {
public static Random ra = new Random();
public static Connection conn = null;
public static TableName table = TableName.valueOf("test".getBytes());
@Before
public void setup() throws IOException {
Configuration config = HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", "node2,node3,node5");
conn = ConnectionFactory.createConnection(config);
}
@Test
public void search() throws IOException {
Table ta = conn.getTable(TestHbase.table);
Get get = new Get("123_996".getBytes());
get.addColumn("cf1".getBytes(), "age".getBytes());
Result result = ta.get(get);
Cell cell = result.getColumnLatestCell("cf1".getBytes(), "age".getBytes());
System.out.printf(new String(cell.getValueArray(), "GBK"));
}
}
TestHbase.java
package com.matrix.hbase;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.Cell;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Admin;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.ResultScanner;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.client.Table;
import org.junit.Before;
import org.junit.Test;
public class TestHbase {
public static Random ra = new Random();
public static Connection conn = null;
public static TableName table = TableName.valueOf("test".getBytes());
@Before
public void setup() throws IOException {
Configuration config = HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", "node2,node3,node5");
conn = ConnectionFactory.createConnection(config);
}
@Test
public void search1() throws IOException {
Table ta = conn.getTable(TestHbase.table);
Scan scan = new Scan("123_996".getBytes(), "123_999".getBytes());
scan.addColumn("cf1".getBytes(), "age".getBytes());
ResultScanner scanner = ta.getScanner(scan);
Iterator<Result> it = scanner.iterator();
while (it.hasNext()) {
Result next = it.next();
Cell cell = next.getColumnLatestCell("cf1".getBytes(), "age".getBytes());
System.out.println(new String(cell.getValueArray(), "utf8"));
}
}
}