七、hive、hdfs、hbase查询总结

【hive】

1.连接hive:

hive

2.hive中查询:

同mysql,如 select *  from tablename;   

注意:hive中的操作一定要加分号; 否则语句一直不结束

3.删除hive表里的数据

删除hdfs对应路径 及对应分区,删除 hive分区,逻辑分区,不包含数据,   alter table winconfig.site_deviceprobe_map_history drop if exists partition ( year='2021', month='01', day='03');

数据在hdfs需要再手动删除

4.查看表字段

DESC winconfig.site_deviceprobe_map_history;

5.查看表结构

SHOW CREATE TABLE winconfig.site_deviceprobe_map_history;

EXTERNAL表示外部表

 

【hdfs】

1.查询文件或目录

hdfs dfs -ls 目录名   

如:hdfs dfs -ls /winhadoop/org/ipva_third_data/2024/03/07

查看根目录 hdfs dfs -ls

2.查看文件内容

hdfs dfs -cat 文件名  如:hdfs dfs -cat /test/a.txt

| head -n 2 从开头往后读2行
| tail -n 1 从结尾往前读1行

读取文件内容,从开头往后读两行
hdfs dfs -cat /test/a.txt | head -n 2

读取文件内容,从结尾往前读一行
hdfs dfs -cat /test/a.txt | tail -n 1

读取文件内容,从结尾往前数10行,再往后读一行,最后结果只返回了一行,结果按照写在最后面的返回
hdfs dfs -cat /test/a.txt | tail -n 10 | head -n 1

读取文件内容,从开头往后数10行,再往前读3行,最后结果返回了3行,结果按照写在最后面的返回
hdfs dfs -cat /test/a.txt | head -n 10 | tail -n 3

查询文件行数
hdfs dfs -cat /winner/hadoop/winipva/config/2024/04/17/siteinfo/000000 | wc -l        

其中l代表line

3.查找文件或目录  查找使用-find

hdfs dfs -find 文件目录 | grep 搜索文字 

如:hdfs dfs -find /test | grep a.txt

4.对文件内容进行过滤(查找文件中有的Capid_0000158的行)   使用 -cat查看文件,过滤使用 | grep 

hdfs dfs -find 文件名 | grep 搜索文字

如:hdfs dfs -find /test/a.txt | grep Capid_0000158

5.把文件从目录1移动到目录2 

hdfs dfs -mv 目录1/文件 目录2

如:hdfs dfs -mv /test/a.txt /winhadoop  把/test/a.txt移动到/winhadoop目录下

6.创建一个文件

hdfs dfs -touch /test/a.txt

在根目录下创建文件 hdfs dfs -touch a.txt

7.在文件中写入内容 

echo '写入内容' | hdfs dfs -appendToFile - 文件名        注意写入内容要用‘ ’引起来

如:echo 'hello world' | hdfs dfs -appendToFile - /test.a,txt       在/test.a,txt文件中写入hello world

8.删除文件

hdfs dfs -rm /test/a.txt

 

 

【hbase】

1.连接hbase: hbase shell
退出hbase: quit 或 ctrl+c

2.查询:
get 'tablename','value'
scan 'tablename',{FILTER=>"PrefixFilter('value')"}

查询整表数据
scan 'test2'

3.插入:
put命令:put ‘table_name’,’ rowKey’,’列簇:列’,’value’
put 'traffic_through','f1b76f24b7#20210118#1','d:1530','34#6'

4.删除:
delete 命令: delete ‘table_name’,'rowKey','列簇:列'
delete 'traffic_inout','ad8d2f80d7#20210118#1','d:1530'

删除全表数据
truncate 'test2'

 

posted @ 2024-03-13 16:43  紫蕈  阅读(60)  评论(0编辑  收藏  举报