HBase伪分布式、命令_3 | 学习笔记

简介: 快速学习 HBase伪分布式、命令_3

开发者学堂课程【HBase入门教程:HBase伪分布式、命令_3】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/397/detail/5069


HBase伪分布式、命令_3


目录

一、伪分布式讲解


一、伪分布式讲解

flush 是做什么的呢?之前在讲解 start 的时候,star t有 memory start 和 start fill,memory start 是会掉一个flash cash 进程,如果是强制让它手动发生就是flash。

在 ddl中,create 是创建表,那么怎么用呢?

输入 create 可以直接回车,得到 wrong number of arguments (0 for 1),报错了,是因为没有加参数,但是它会将用法罗列出来。这里选择第三条举例,这里创建了一个表,这个表叫做 t1,f1、f2、f3是列组。要创建表,一定要先把列组给出,后面再根据需求动态的修改。

Here is some help for this command :

Creates a table. Pass a table name, and a set of column family

specifications (at least one), and,optionally, table configuration.

Column specification can be a simple string (name), or a dictionary

(dictionaries are described below in main help output),necessarily

including NAME attribute.

Examples :

Create a table with namespace=ns1 and table qualifier=t1

hbase>create' 'ns1:t1 ', {NAME => 'f1', VERSIONS=>5}

Create a table with namespace=default and table qualifier=t1

hbase> create 't1',{NAME => 'f1',{NAME => 'f2'},{NAME => 'f3'}

hbase> # The above in shorthand would be the following:

hbase create‘t1',‘f1', ‘f2',‘f3'

hbase> create 't1', {NAME > "f1',VERSIONS => 1,TTL =2592000,BLOCKCACHE = true}

hbase> create ‘t1',{NANE => "f1', CONFIGURATION =>{'hbase.hstore.blockingStoreFiles'=>‘10'}}

输入 create ‘psn’,’cf1’,’cf2’创建表得到0 row(s) in 1.0210 seconds,输入 list 查看得出:

TABLE

psn

1 row(s) in 0.0180 seconds

输入 describe ‘psn’查看表描述得出:

Table psn is ENABLED

psn

COLUMN FAMILIES DESCRIPTION

{NAME => ‘cf1’, DATA_BLOCK_ENCODING => ‘NONE’,BLOONFILTER =>’ROM’,REPLITCATION_SCOPE=>‘0’’,VERSIONS =1', COMPRESSION =>‘NONE’,MIN_VERSIONS=>‘0',TTL=>‘FOREVER’,KEP DELETED CELLS => ‘FALSE’,BLOCKSIZE => ‘65536',INNENORY => ‘false’, BLOCKCACHE=’true’}

{NAME => ‘cf2’, DATA_BLOCK_ENCODING => ‘NONE’,BLOONFILTER =>’ROM’,REPLITCATION_SCOPE=>‘0’’,VERSIONS =1', COMPRESSION =>‘NONE’,MIN_VERSIONS=>‘0',TTL=>‘FOREVER’,KEP DELETED CELLS => ‘FALSE’,BLOCKSIZE => ‘65536',INNENORY => ‘false’, BLOCKCACHE=’true’}

在这里面有一个 VERSIONS,就是来标注最大版本数的;MIN_VERSIONS 就是最小版本数;TTL 即 time to live,存活时间,默认是 forever,可以手动删除;BLOCKCACHE 是读缓存,默认启用读缓存。

创建表之后需要插入数据:输入 put 回车它会给出例子,这里第二个例子中的’t1’对应的 table,’r1’对应的row,’c1’对应的列,value 对应的值。

hbase(main):008:0> put

ERROR: wrong number of arguments (0 for 4)

Here is some help for this command:

Put a cell 'value' at specified table/row/column and optionally

timestamp coordinates. To put a cell value into table 'ns1:tl' or 't1'

at row 'rl' under column 'cl' marked with the time 'ts1', do:

hbase> put 'ns1:t1', 'r1', 'c1', 'value'

hbase> put 't1', 'r1', 'c1', 'value'

hbase> put 't1', 'r1', 'c1', 'value', ts1

hbase> put 't1', 'r1', 'c1', 'value',{ATTRIBUTES=> {'mykey'=>'myvalue'}}

hbase> put 't1','r1', 'c1','value', ts1,{ATTRIBUTES=>{'mykey'=>'myvalue'}}

hbase> put 't1', 'r1', 'c1', 'value', ts1,{VISIBILITY=>'PRIVATE SECRET'}

输入 put ‘psn’,‘0001’,’cf1:name’,’xiaoming’回车得到0 row(s) in 0.1580 seconds,再输入 put ‘psn’,‘0001’,’cf1:sex’,’boy’回车得到0 row(s) in 0.0120 seconds。这里插入了一行数据,两个单元格。输入 scan ‘psn’回车,得到:

ROW  COLUMN+CELL

0001  column=cf1:name, timestamp=1478662294079, value=xiaoming

0001  column=cf1:sex, timestamp=1478662311059,value=boy

1 row(s) in 0.0240 seconds

可以看出这里的一行数据中 row 对应的是0001;再看列,是以列组和列名组成的,每一个单元格对应的都有一个时间丛来标记这个单元格的版本;最后面就是代表的值,这个就是 scan。scan 是全部的扫描,使用的时候要慎重。比如大数据中的数据库,一张表里的数据很大很大,而需要的只有几条,那么扫描就会很费时间。所以可以使用 get 来查询个别数据。比如这里输入 get ‘psn’,‘0001’,’cf1:name’回车得到:

COLUMN  CELL

cf1:name  timestamp=1478662294079, value=xiaoming

1 row(s) in 0.0160 seconds

可以看到把一个单元格取出来了。

若再向 psn 中赋值,输入 put ‘psn’,‘0001’,’cf1:name’,’lilei’回车,再 get ‘psn’,‘0001’,’cf1:name’回车,于是就得到了:

COLUMN  CELL

cf1:name  timestamp=1478662547816, value=lilei

1 row(s) in 0.0090 seconds

根据时间版本,xiaoming 时间版本在下面,lilei 是高版本在上面。但是创建表的时候最大版本数 version 是1,所以上面 lilei 这条是有效的数据,下面的是失效的数据,并且 get 只查最新的一条,下面的数据在合并的时候才会把失效或者过期的数据删掉。

相关文章
|
存储 Shell 分布式数据库
Hbase 的基本shell 命令
Hbase 的基本shell 命令
1382 8
|
存储 Shell 分布式数据库
Hbase 的基本shell 命令
Hbase 的基本shell 命令
436 0
|
大数据 分布式数据库 Hbase
Hbase学习三:Hbase常用命令总结
Hbase学习三:Hbase常用命令总结
5209 0
|
存储 缓存 分布式计算
必知的技术知识:Hbase配置(伪分布式模式)
必知的技术知识:Hbase配置(伪分布式模式)
1710 0
|
Shell 分布式数据库 Hbase
95 hbase命令
95 hbase命令
269 0
95 hbase命令
|
分布式数据库 Hbase
Hbase基础命令(2)
Hbase基础命令(2)
172 0
|
Java Shell 分布式数据库
Hbase基础命令
Hbase基础命令
492 0
|
SQL 存储 边缘计算
HBase&Hive 2(三)|学习笔记
快速学习 HBase&Hive 2(三)
342 0
HBase&Hive 2(三)|学习笔记
|
SQL 存储 分布式计算
HBase&Hive 2(二)|学习笔记
快速学习 HBase&Hive 2(二)
266 0
HBase&Hive 2(二)|学习笔记
|
存储 SQL 分布式计算
HBase&Hive 2(一)|学习笔记
快速学习 HBase&Hive 2(一)
328 0
HBase&Hive 2(一)|学习笔记