欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

hive的安装及使用

时间:2023-07-09
文章目录

1、安装hive

1.1 安装 java1.2 hadoop 安装1.3 hive安装1.4 下载并安装Apache Derby 2、hive 使用参考 1、安装hive 1.1 安装 java

在Hive安装之前,Java必须在系统上已经安装。使用下面的命令来验证是否已经安装Java, 如果Java已经安装在系统上,就可以看到如下回应

在 java 官网 下载,傻瓜式安装即可

1.2 hadoop 安装

下载 hadoop
解压放到指定目录下,并进行如下配置环境变量(mac系统)

执行vim ~/.bash_profile 修改环境变量(linux 下应该是 ~/.bashrc)

export HADOOP_HOME=/usr/local/hadoop export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOMEexport HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native exportPATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

source ~/.bash_profile 将当前修改应用到正在运行的系统

使用如下命令进行验证

hadoop 配置
进入hadoop配置文件目录 $HADOOP_HOME/etc/hadoop

为了使用java开发Hadoop的项目,必须用java在系统的位置替换JAVA_HOME值重置hadoop-env.sh文件中的java环境变量

先用 /usr/libexec/java_home -V 查看java安装路径

修改 hadoop-env.sh 文件

修改 core-site.xml 文件,core-site.xml文件中包含如下信息,如使用Hadoop实例分配给文件系统的存储器,用于存储数据的内存限制的端口号,以及读/写缓冲器的大小

打开core-site.xml文件并在,标签之间添加以下属性

fs.default.name hdfs://localhost:9000

修改 hdfs-site.xml 文件,hdfs-site.xml 文件中包含如下信息,如复制数据的值,名称节点的路径,本地文件系统的数据节点的路径

更多配置参考:hive 安装

验证hadoop的安装

验证hadoop dfs

start-dfs.sh


踩坑记录:connection refused 错误
参考 1、Mac OS X 上搭建 Hadoop 开发环境指南
2、Permission denied (publickey,password,keyboard-interactive).

验证yarn脚本

start-yarn.sh

访问Hadoop的默认端口号为50070(hadoop 3 默认端口为9870)使用以下网址,以获取浏览器Hadoop服务

http://localhost:9870/

1.3 hive安装

下载hive
下载 hive 2.3.9,如下图所示

配置hive环境变量
通过 vim ~/.bash_profile,追加如下语句

export HIVE_HOME=/Applications/apache-hive-2.3.9-binexport PATH=$PATH:$HIVE_HOME/binexport CLASSPATH=$CLASSPATH:/Applications/hadoop-3.3.1/lib/*:.export CLASSPATH=$CLASSPATH:/Applications/apache-hive-2.3.9-bin/lib/*:.

执行 source ~/.bash_profile 使其生效

配置hive

cd $HIVE_HOME/confcp hive-env.sh.template hive-env.sh

编辑hive-env.sh文件添加以下行

export HADOOP_HOME=/Applications/hadoop-3.3.1

1.4 下载并安装Apache Derby

如上Hive安装成功完成。现在,需要一个外部数据库服务器配置metastore。我们使用Apache Derby数据库。

2、hive 使用

创建数据库

CREATE DATAbase [IF NOT EXISTS] ;

查询数据库

SHOW DATAbaseS;

删除数据库

DROp DATAbase [IF EXISTS] ;

创建表

CREATE TABLE [IF NOT EXISTS] [db_name.] table_name[(col_name data_type, col_name2 data_type2, ...)][COMMENT table_comment][ROW FORMAT row_format][STORED AS file_format]

如创建一张员工的表
CREATE TABLE IF NOT EXISTS employee ( id int, name String, salary String, destination String);

插入数据
在SQL创建表后,可以使用INSERT语句插入数据,在Hive中,可以使用LOAD DATA语句插入数据

LOAD DATA [LOCAL] INPATH [OVERWRITE] INTO TABLE

LOCAL是标识符指定本地路径;OVERWRITE 覆盖表中的数据;

更改表的名字

ALTER TABLE RENAME TO

增加一列

ALTER TABLE ADD COLUMNS (col_spec[, col_spec ...])

删除一列

ALTER TABLE DROP [COLUMN]

更改某一列的列名/类型

ALTER TABLE CHANGE

删除表

DROP TABLE [IF EXISTS] table_name;

查询语句 select

SELECT [ALL | DISTINCT] , , ..、FROM [WHERe ] [GROUP BY col_list] [HAVINg having_condition] [CLUSTER BY col_list | [DISTRIBUTE BY col_list] [SORT BY col_list]] [LIMIT number];

查询并排序

SELECt [ALL | DISTINCT] , , ..、FROM [WHERe where_condition] [GROUP BY col_list] [HAVINg having_condition] ORDER BY [LIMIT number];

从上面的语法可以看出hive的语法和mysql的语法是极其相似的

参考

1、易百教程-hive

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。