1,如何运行HBase

1,如何查找hbase的安装目录

whereis用来查找程序的安装目录、帮助文档等等,如下:

whereis hbase

结果如下,目录下一级包含bin的就是hbase的安装目录。
[hadoop@cdh002 bin]$ whereis hbase
hbase: /usr/bin/hbase /etc/hbase /usr/lib/hbase

2,如何运行hbase命令

首先切换到hbase的安装目录
cd /usr/lib/hbase/bin/

执行hbase shell
hbase shell

3 如何查找当前用户

使用whoami命令可查看当前用户

hbase(main):001:0> whoami
hadoop (auth:SIMPLE)
groups: hadoop

4 HBase如何删除字符

需要同时按住Ctrl + Backspace 才能删除之前输入的字符。

2,如何操作HBase表结构

1,查看有哪些表

list

2,如何创建HBase表

创建HBase表不需要指定列,只需要指定列簇就行了
语法:create <table>, {NAME => <family>, VERSIONS => <VERSIONS>}
比如创建一个表,保存用户的个人信息infos和工作经历jobs
(1)
hbase(main):007:0> create "user",{ NAME => "infos",VERSIONS => 1},{NAME => "jobs"}
0 row(s) in 4.6440 seconds

=> Hbase::Table - user

注意:NAME要大写,否则报错提示未定义的本地变量
NameError: undefined local variable or method `name' for #<Object:0x79972a95>

(2)简单的写法:表名,列簇
create "user","infos","jobs"

3,如何查看HBase的表结构

desc "user" 或者 describe "user"

hbase(main):008:0> describe "user"
Table user is ENABLED
user
COLUMN FAMILIES DESCRIPTION
{NAME => 'infos', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0'
, VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_C
ELLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}
{NAME => 'jobs', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0',
VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CE
LLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}
2 row(s) in 0.0400 seconds

表结构信息显示有两个列簇

4,如何修改HBase的表结构

(1)首先要禁用表
disable "user"
(2)
删除字段指定METHOD => "delete"
因为有3台机器,因此更新了3台机器 Updating all regions with the new schema

hbase(main):002:0> alter "user",{NAME => "infos"},{NAME => "jobs",METHOD => "delete"},{NAME => "educations"}
Updating all regions with the new schema...
1/1 regions updated.
Done.
Updating all regions with the new schema...
1/1 regions updated.
Done.
Updating all regions with the new schema...
1/1 regions updated.
Done.
0 row(s) in 8.0190 seconds

(3)然后启用表
enable 'user'

5,如何删除HBase表

要先禁用表
hbase(main):004:0> disable "user"
0 row(s) in 0.0410 seconds

再drop表
hbase(main):005:0> drop "user"
0 row(s) in 1.3550 seconds

3,如何操作HBase表数据

1,hbase如何插入数据

语法:put <table>,<rowkey>,<family:column>,<value>
put 表名,列簇:列,值

hbase(main):020:0> put "user","rowno001","infos:name","zhangsan"
0 row(s) in 0.1400 seconds

hbase(main):021:0> put "user","rowno001","infos:age","18"
0 row(s) in 0.0100 seconds

注意:
(1)一次只能插入一列的值;同一行的多列,要分开列插入

2,查询记录

(1)查看所有记录
scan "user"
数据量很大时,千万不要用这个命令
(2) 查找前2条数据
hbase(main):028:0> scan "user",{LIMIT => 2}
ROW COLUMN+CELL
rowno001 column=infos:age, timestamp=1528170157838, value=18
rowno001 column=infos:name, timestamp=1528170127697, value=zhangsan
rowno002 column=infos:age, timestamp=1528170336721, value=19

(3)查找某范围内的记录
hbase(main):032:0> scan "user",{ STARTROW => "rowno002", ENDROW => "rowno004"}
ROW COLUMN+CELL
rowno002 column=infos:age, timestamp=1528170336721, value=19
rowno003 column=infos:name, timestamp=1528171140729, value=xiaosan

注意:ENDROW是不包含的。

(4)查找某一行记录
hbase(main):034:0> get "user","rowno001"
COLUMN CELL
infos:age timestamp=1528170157838, value=18
infos:name timestamp=1528170127697, value=zhangsan
2 row(s) in 0.0250 seconds

可以指定列名
hbase(main):035:0> get "user","rowno001","infos:name"
COLUMN CELL
infos:name timestamp=1528170127697, value=zhangsan

3,统计记录

(1)统计总共多少行
hbase(main):033:0> count "user"
3 row(s) in 0.0290 seconds
=> 3

4,修改一条数据

和添加数据的命令是一致的,修改一下值就行,会直接覆盖
put "user","rowno003","infos:name","san"

5,删除数据

删除某一列:
delete "user","rowno003","infos:name"

删除某一行:
注意删除某一行,用的是deleteall
deleteall "user","rowno002"

HBase操作命令总结的更多相关文章

  1. HBase框架基础(一)

    * HBase框架基础(一) 官方网址:http://hbase.apache.org/ * HBase是什么妖怪? 要解释HBase,我们就先说一说经常接触到的RDBMS,即关系型数据库: ** m ...

  2. HBase常用操作命令

    HBase常用操作命令 1.进入HBase脚本客户端 #hbase shell #进入HBase脚本客户端 > whoami    #查看当前登录用户 > status           ...

  3. HBase shell 操作命令记录

    创建表:create 'tablename','column cluseter:column1,column2...columnn','column cluster:column1,column2.. ...

  4. HBase Shell 常用命令及例子

    下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', '列名称1','列名称2','列名称N ...

  5. Hbase Shell常用命令

    hbase shell常用的操作命令有create,describe,disable,drop,list,scan,put,get,delete,deleteall,count,status等,通过h ...

  6. 【转】HBase 超详细介绍

    ---恢复内容开始--- http://blog.csdn.net/frankiewang008/article/details/41965543 1-HBase的安装 HBase是什么? HBase ...

  7. (转)Hbase shell 常用命令(1)

    Hbase shell 常用命令(1) link:http://blog.csdn.net/scutshuxue/article/details/6988348 下面我们看看HBase Shell的一 ...

  8. hbase基本概念和hbase shell常用命令用法

    1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...

  9. HBase(八): 表结构设计优化

    在 HBase(六): HBase体系结构剖析(上) 介绍过,Hbase创建表时,只需指定表名和至少一个列族,基于HBase表结构的设计优化主要是基于列族级别的属性配置,如下图: 目录: BLOOMF ...

随机推荐

  1. 第23章 Windows身份验证 - Identity Server 4 中文文档(v1.0.0)

    在支持的平台上,您可以使用IdentityServer使用Windows身份验证对用户进行身份验证(例如,针对Active Directory).当前使用以下命令托管IdentityServer时,W ...

  2. IT公司PM沟通那儿些事(一)

    本质:传递信息 沟通是不同的行为主体,通过各种载体实现信息的双向流动,形成行为主体的感知,以达到特定目标的行为过程. 信息的准确性弥足珍贵,在工作中,沟通传递的是应该是信息本身,而非情绪. 目标:解决 ...

  3. Android开发——使用LitePal开源数据库框架

    前言:之前使用Android内置的数据库,感觉一大堆SQL语句,一不小心就错了,很难受,学习了这个LItePal的开源数据库框架,瞬间觉得Android内置的数据库简直是垃圾般的存在 LitePal ...

  4. 记Android开发中的一些另类使用

    1.使用recyclerview,直接添加下列依赖就可以使用recyclerview,版本号与appcompat-v7版本号相同 compile 'com.android.support:design ...

  5. apache tomcat的下载 安装 配置

    大家好!欢迎浏览我的博客 我们现在学习怎么下载,安装,配置apache-tomcat. 首先我们先了解一下Tomcat,Tomcat是Apache 软件基金会(Apache Software Foun ...

  6. 2013年第四届蓝桥杯javaB组 试题 答案 解析

    1.世纪末的星期 曾有邪教称1999年12月31日是世界末日.当然该谣言已经不攻自破. 还有人称今后的某个世纪末的12月31日,如果是星期一则会.... 有趣的是,任何一个世纪末的年份的12月31日都 ...

  7. Spring Boot统一异常处理实践

    摘要: SpringBoot异常处理. 原文:Spring MVC/Boot 统一异常处理最佳实践 作者:赵俊 前言 在 Web 开发中, 我们经常会需要处理各种异常, 这是一件棘手的事情, 对于很多 ...

  8. MATLAB 中 ksvdbox和ompbox 工具箱的安装和使用

    下载工具箱 链接: http://www.cs.technion.ac.il/~ronrubin/software.html 下载好工具箱之后, 要将解压后的文件夹添加到MATLAB的安装目录下的to ...

  9. 如何把activity当成dialog

    在工作中有时候需要把activity当成dialog使用,其实做法挺简单的. 1.设置activity的style <style name="DialogTheme" par ...

  10. Android为TV端助力 播放视频卡顿问题

    问题分析: 1.连接服务器,ping IP 看看有没有丢包 2.写一个只有mediaplayer的Demo,放到同款的盒子或者电视,保证网咯也是一样的情况下,看看Demo卡不卡 如果一直不卡,那有可能 ...