首页 理论教育 如何进行DML操作优化?

如何进行DML操作优化?

时间:2023-06-26 理论教育 版权反馈
【摘要】:DML操作主要用来对表的数据进行添加、修改、获取、删除和查询。给emp表的rw1行分别插入3个列。hbase:039:0>get'emp','rw1',{COLUMN=>'col_f1:age',TIMESTAMP=>1463055735107}COLUMNCELLcol_f1:age timestamp=1463055735107,value=201 rowin 0.0340 secondshbase:040:0>get'emp','rw1',{COLUMN=>'col_f1:age',TIMESTAMP=>1463055893492}COLUMNCELLcol_f1:age timestamp=1463055893492,value=221 rowin 0.0140 seconds全表扫描。hbase:041:0>scan'emp'ROWCOLUMN+CELLidcolumn=col_f1:age,timestamp=1463055893492,value=2idcolumn=col_f1:name,timestamp=1463055709542,value=tanggaoidcolumn=col_f1:sex,timestamp=1463055753395,value=boy1 rowin 0.1520 seconds删除一列。hbase:043:0>get'emp','rw1'COLUMNCELLcol_f1:name timestamp=1463.055709542,value=tanggao col_f1:sex timestamp=1463055753395,value=boy2 rowin 0.2430 seconds删除行的所有单元格。hbase:045:0>count'emp'0 rowin 0.0450 seconds清空整张表。

如何进行DML操作优化?

DML(Data Manipulation Language,数据操作语言)操作主要用来对表的数据进行添加、修改、获取、删除和查询。

(1)插入数据。

给emp表的rw1行分别插入3个列。

hbase(main):031:0>put'emp','rw1','col_f1:name','tanggao'

0 row(s)in 0.0460 seconds

hbase(main):032:0>put'emp','rw1','col_f1:age','20'

0 row(s)in 0.0150 seconds

hbase(main):033:0>put'emp','rw1','col_f1:sex','boy'

0 row(s)in 0.0190 seconds

(2)获取数据。

1)获取emp表的rw1行的所有数据。

hbase(main):034:0>get'emp','rw1'

COLUMN CELL

col_f1:age timestamp=1463055735107,value=20

col_f1:name timestamp=1463055709542,value=tanggao

col_f1:sex timestamp=1463055753395,value=boy

3 row(s)in 0.3200 seconds

2)获取emp表的rw1行col_f1列族的所有数据。

hbase(main):035:0>get'emp','rw1','col_f1'

COLUMN CELL

col_f1:age timestamp=1463055735107,value=20

col_f1:name timestamp=1463055709542,value=tanggao col_f1:sex timestamp=

1463055753395,value=boy

3 row(s)in 0.0270 seconds

(3)更新一条记录。

1)更新emp表的rw1行、col_f1列族中age列的值。

hbase(main):037:0>put'emp','rw1'col_f1:age','22'

0 row(s)in 0.0160 seconds

2)查看更新的结果。

hbase(main):038:0>get'emp','rw1','col_f1:age'

COLUMN CELL

col_f1:age timestamp=1463055893492,value=22

1 row(s)in 0.0190 seconds

(4)通过时间戳获取两个版本的数据。

hbase(main):039:0>get'emp','rw1',{COLUMN=>'col_f1:age',TIMESTAMP=

>1463055735107}

COLUMN CELL

col_f1:age timestamp=1463055735107,value=20(www.xing528.com)

1 row(s)in 0.0340 seconds

hbase(main):040:0>get'emp','rw1',{COLUMN=>'col_f1:age',TIMESTAMP=

>1463055893492}

COLUMN CELL

col_f1:age timestamp=1463055893492,value=22

1 row(s)in 0.0140 seconds

(5)全表扫描。

hbase(main):041:0>scan'emp'

ROW COLUMN+CELL

id column=col_f1:age,timestamp=1463055893492,value=2

id column=col_f1:name,timestamp=1463055709542,value=tanggao

id column=col_f1:sex,timestamp=1463055753395,value=boy

1 row(s)in 0.1520 seconds

(6)删除一列。

1)删除emp表rw1行的一个列。

hbase(main):042:0>delete'emp','rw1','col_f1:age'

0 row(s)in 0.0200 seconds

2)检查删除操作的结果。

hbase(main):043:0>get'emp','rw1'

COLUMN CELL

col_f1:name timestamp=1463.055709542,value=tanggao col_f1:sex timestamp=

1463055753395,value=boy

2 row(s)in 0.2430 seconds

(7)删除行的所有单元格

使用“deleteall”命令删除emp表rw1行的所有列。

hbase(main):044:0>deleteall'emp','rw1'

0 row(s)in 0.0550 seconds

(8)统计表中的行数。

hbase(main):045:0>count'emp'

0 row(s)in 0.0450 seconds

(9)清空整张表。

hbase(main):007:0>truncate'emp'

Truncating'emp'table(it may take a while);

-Disabling table...

-Truncating table...

0 row(s)in 4.1510 seconds

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈