启动zookeeper集群(分别在zjgm01、zjgm02、zjgm03上启动zk)
cd /home/hadoop/app/zookeeper-3.4.5/bin
./zkServer.sh start
#查看状态:一个leader,两个follower
./zkServer.sh status
启动昨天的启动HDFS(在zjgm01上执行)
sbin/start-dfs.sh
启动YARN(#####注意#####:是在zjgm03上执行start-yarn.sh)
sbin/start-yarn.sh
/home/hadoop/app/hbase-0.96.2-hadoop2/bin
./hbase shell //启动
list //查看
创建表
create ‘mygirls’,{NAME => ‘base_info’},{NAME => ‘extra_info’}
表结构
describe “mygirls”
disable 'mygirls ’ //删除
drop ‘mygirls’ //删除
插入数据
put ‘mygirls’,‘0001’,‘base_info:name’,‘xybnpy’
查看插入数据
get ‘mygirls’,‘0001’
插入数据
put ‘mygirls’,‘0002’,‘base_info:name’,‘qbl’
查看插入一条数据
get ‘mygirls’,‘0001’
查看多条数据
scan ‘mygirls’
通过java插入表
package com.hbase;
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.HBaseAdmin;
import java.io.IOException;
public class TestHbase {
public static void main(String[] args) throws IOException {
Configuration conf= HBaseConfiguration.create();
conf.set("hbase.zookeeper.quorum","zjgm01:2181,zjgm02:2181,zjgm03:2181");
HBaseAdmin admin=new HBaseAdmin(conf);
//创建表
TableName name= TableName.valueOf("user");
HTableDescriptor desc=new HTableDescriptor(name);
//列族
HColumnDescriptor baseInfo=new HColumnDescriptor("base_info");
HColumnDescriptor extraInfo=new HColumnDescriptor("extra_info");
//将列足添加到表里面
desc.addFamily(baseInfo);
desc.addFamily(extraInfo);
admin.createTable(desc);
}
}
通过java插入数据
@Test
public void insertTest() throws IOException {
Configuration conf= HBaseConfiguration.create();
conf.set(“hbase.zookeeper.quorum”,“zjgm01:2181,zjgm02:2181,zjgm03:2181”);
HTable user=new HTable(conf,"user");
Put name=new Put(Bytes.toBytes("0001"));
// name.add(Bytes.toBytes("base_info"),Bytes.toBytes("name"),Bytes.toBytes("hualili"));
name.add(Bytes.toBytes("extra_info"),Bytes.toBytes("age"),Bytes.toBytes("16"));
user.put(name);
}
查询0001数据
查询多条数据
//查询数据
@Test
public void testGet() throws IOException {
Configuration conf= HBaseConfiguration.create();
conf.set(“hbase.zookeeper.quorum”,“zjgm01:2181,zjgm02:2181,zjgm03:2181”);
HTable user=new HTable(conf,"user");
Get row=new Get(Bytes.toBytes("0001"));
Result result = user.get(row);
for (KeyValue kv:result.list()){
String f=new String(kv.getFamily());
System.out.println(f);
String name=new String(kv.getQualifier());
System.out.println(name);
String v=new String(kv.getValue());
System.out.println(v);
System.out.println("----------");
}
}
//查询多条数据
@Test
public void testScan() throws IOException {
Configuration conf = HBaseConfiguration.create();
conf.set("hbase.zookeeper.quorum", "zjgm01:2181,zjgm02:2181,zjgm03:2181");
HTable user = new HTable(conf, "user");
Scan scan=new Scan();
scan.addFamily(Bytes.toBytes("base_info"));
ResultScanner scanner=user.getScanner(scan);
for(Result r:scanner){
byte[] value = r.getValue(Bytes.toBytes("base_info"), Bytes.toBytes("name"));
System.out.println(new String(value));
// byte[] value = r.getValue(Bytes.toBytes(“base_info”), Bytes.toBytes(“name”));
// byte[] value1 = r.getValue(Bytes.toBytes(“base_info”), Bytes.toBytes(“age”));
// System.out.println(new String(value)+"==="+new String(value1));
}
}
@Test
public void delete() throws IOException {
Configuration conf = HBaseConfiguration.create();
conf.set(“hbase.zookeeper.quorum”, “zjgm01:2181,zjgm02:2181,zjgm03:2181”);
HBaseAdmin admin=new HBaseAdmin(conf);
admin.disableTable(“user”);
admin.deleteTable(“user”);
admin.close();
}