Hive架构
Hive部署
chown -R hadoop:hadoop apache–hive-3.1.3-bin hive
二、配置Hive
数据库连接地址粘贴到配置文件中
通过yum install –y mysql 安装mysql客户端,用于mysql命令的输入
二、创建一个Hive数据库(需要通过yum install –y mysql提前安装命令)
三、初始化
============================================================
Hive操作
通过ps -ef | grep 40991更详细查看
或者通过jps查看
Hive客户端
启动Hive客户端两种方式:
①、bin/hive即Hive的Shell客户端,直接写SQL
②、bin/hive —service hiveserver2 HiveServer2属于Hive内置的一个ThriftServer服务,提供Thrift端口供其他客户端链接:
HiveServer2 & Beeline(内置客户端)
DataGrip & DBeaver(第三方客户端)
③、写SQL语句
删除原来的驱动
添加自己本地下载好的文件
③、写好SQL,回车可以运行
数据库操作
表分类:
内部表
create table myhive.stu(id int,name string); # 在myhive数据库中创建stu表
# 指定分隔创建表 避免在下面查看表内容出现id和name不可见字符导致的紧凑
create table if not exists stu2(id int,name string) row format delimited fields terminated by 't';
insert into myhive.stu values(1,'jordan'),(2,"kobe");
外部表
两者对比:
①、先查看表类型
②、转换
数据的导入:
CREATE TABLE myhive.test_load(
dt string comment '时间(时分秒)',
user_id string comment '用户ID',
word string comment '搜索词',
url string comment '用户访问地址'
) comment '搜索引擎日志表' ROW FORMAT DELIMITED FIELDS TERMINATED BY 't';
# 本地linux系统上传
load data local inpath '/home/hadoop/search_log.txt' into table myhive.test_load;
# 本质上是文件移动
load data inpath '/tmp/search_log.txt' overwrite into table myhive.test_load
【基于HDFS进行load加载数据,元数据文件会消失(本质是被移动到表所在的目录中)】
②、从其他表加载数据
数据的导出:
①、将hive表中的数据导出到其他任意目录,例如linux本地磁盘,hdfs,mysql等
分桶表
复杂类型
UNION联合
虚拟列
函数
案例:
一、需求:
数据
二、ETL数据清洗:
三、指标
②、将Hive驱动包放到FineBI安装目录下,以及安装隔离插件
原文地址:https://blog.csdn.net/usa_washington/article/details/134767060
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_50314.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!