##部署
** tree 命令**
tree -d (只列出文件夹) -L 1 列出层数 /opt
** vi **
使用 ctrl-s/q lock
-
拷贝包到安装目录并解压
-
修改hbase-env.sh 指定JAVA_HOME HBASE_MANAGES_ZK HADOOP_PATH
-
修改hbase-site.xml
-
修改regionservesrs
-
start-hbase.sh 启动 /stop-hbase.sh停止
-
访问web端口 16010
##API 新
-
获取配置
```
conf = HBaseConfiguration.create();
```
-
创建连接 获取admin
```
Connection connection = ConnectionFactory.createConnection(conf);
Admin admin = connection.getAdmin();
```
-
admin 操作
```
//表存在
admin.tableExists(TableName.valueOf(tableName));
```
-
创建表
```
//创建表描述符 增加列族
HTableDescriptor descriptor = new HTableDescriptor(TableName.valueOf(tableName));
for (String cf : columnFamily) {
descriptor.addFamily(new HColumnDescriptor(cf));
}
//创建表
admin.createTable(descriptor);
```
-
表删除
```
//disable
admin.disableTable(TableName.valueOf(tableName));
//drop
admin.deleteTable(TableName.valueOf(tableName));
```
-
增加数据 put
```
Table table = connection.getTable(TableName.valueOf(tableName));
//put 操作
Put put = new Put(Bytes.toBytes(rowKey));
put.addColumn(Bytes.toBytes(columnFamily), Bytes.toBytes(column), Bytes.toBytes(value));
table.put(put);
table.close();
```
-
删除数据 delete
```
//delete 操作
List<Delete> deleteList = new ArrayList<Delete>();
for(String row:rows){
Delete delete = new Delete(Bytes.toBytes(row));
deleteList.add(delete);
}
table.delete(deleteList);
table.close();
```
-
扫描数据
```
//扫描
Scan scan = new Scan();
ResultScanner scanner = table.getScanner(scan);
for(Result result:scanner){
Cell[] cells = result.rawCells();
...
```
-
配置测试环境
```
conf.set("hbase.zookeeper.quorum","had001");
```