hive使用
2024-08-24 11:57:43
运行hadoop [root@hadoop0 ~]# start-all.sh
进入命令行[root@hadoop0 ~]# hive
查询昨天的表 hive> select * from stu;
显示数据库 hive> show databases
创建数据库 hive> create database test
使用数据库 hive> use test;
把旧表数据导入新表 INSERT OVERWRITE TABLE test4 SELECT * FROM test1
设置hive参数 hive> SET hive.exec.compress.output=true;
1 内部表
Show databses;
Use hive_data;
1.1 创建内部表
CREATE TABLE SOGOUQ2(DT STRING,WEBSESSION STRING,WORD STRING,S_SEQ INT,C_SEQ INT,WEBSITE STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' ;1.2 加载数据
LOAD DATA LOCAL INPATH '/data/software/sougou/SogouQ2.txt' INTO TABLE SOGOUQ2;
Load hdfs data:
LOAD DATA INPATH 'hdfs://shulaibao2:9010/home/hadoop/upload/test/sougou/SogouQ1.txt
' INTO TABLE SOGOUQ2;- 1.3 查看hdfs数据
hadoop fs -ls /user/hive/warehouse/hive_data.db
- 1.4 操作数据库
select count(*) from SOGOUQ2; select count(*) from SOGOUQ2 where WEBSITE like '%baidu%';
2 外部表
- 2.1 创建hdfs数据存储目录
hadoop fs -mkdir -p /home/hadoop/upload/hive/sogouq1
hdfs dfs -ls /home/hadoop/upload/hive/sogouq1- 2.2 创建表
CREATE EXTERNAL TABLE SOGOUQ1(DT STRING,WEBSESSION STRING,WORD STRING,S_SEQ INT,C_SEQ INT,WEBSITE STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' STORED AS TEXTFILE LOCATION '/home/hadoop/upload/hive/sogouq1';
Show tables;- 2.3 加载数据
Hadoop fs -copy /home/hadoop/upload/test/sougou/SogouQ1.txt /home/hadoop/upload/hive/sogouq1
hdfs关联:copy、mv
本地系统数据关联:copyFromLocal- 2.4 操作数据库
select count(*) from SOGOUQ1;
总结:【注】在删除表的时候,内部表将删除表的元数据和数据文件;而删除外部表的时候,仅仅删除外部表的元数据,不删除数据文件
最新文章
- WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案(转)
- 常用到的git,mvn,postgres,vim命令总结
- windows下nodejs环境配置
- 使用AppCan实现分享网站功能
- uva 387 A Puzzling Problem (回溯)
- UI4_UITableViewEdit
- QiQi and Symmerty
- setTimeout的若干坑
- CSS Filter
- Centos系统各种日志存详解
- Python 基础 一
- 【learning】多项式相关(求逆、开根、除法、取模)
- AJAX使用说明书
- 【BZOJ4196】【Noi2015】软件包管理器
- Arduino抢答器
- java LRUCache
- 关于jdango框架静态文件配置的问题
- 【Linux 网络编程】TCP网络编程中connect()、listen()和accept()三者之间的关系
- 【Linux 线程】同一个进程中的线程共享哪些资源
- Gson转换时,Double转式化