hadoop搭建、mysql、hive部署(三)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: hadoop搭建、mysql、hive部署

三、 hive安装,数据筛选


3.1 解压数据包,配置环境变量


tar -xzvf hive-1.1.0-cdh5.4.5.tar.gz -C /opt/ #解压文件
mv hive-1.1.0-cdh5.4.5.tar.gz hive #修改名称
 vi /etc/profile #修改环境变量

将hive的bin目录,添加到环境变量PATH中,保存退出。


export HIVE_HOME=/opt/hive  
export PATH=$HIVE_HOME/bin:$PATH 


执行source命令,使Hive环境变量生效。


source /etc/profile 


3.2 由于hive 需要将元数据,存储到MySQL中。所以需要拷贝/opt/software目录下的 mysql-connector-java-5.1.26-bin.jar 到 hive 的 lib 目录下。


3.3 下面配置Hive,切换到/opt/hive/conf目录下,创建hive的配置文件hive-site.xml。


cd /software/hive/conf


touch hive-site.xml


使用 vi 打开 hive-site.xml 文件。


vi hive-site.xml


将下列配置添加到 hive-site.xml 中。


<configuration>  
   <property>  
       <name>javax.jdo.option.ConnectionURL</name>  
<value>jdbc:mysql://hadoop:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false</value>  
    </property>  
    <property>  
       <name>javax.jdo.option.ConnectionDriverName</name>
       <value>com.mysql.jdbc.Driver</value>  
    </property>  
    <property>  
                <name>javax.jdo.option.ConnectionUserName</name>
                <value>root</value>  
    </property>  
    <property>  
                <name>javax.jdo.option.ConnectionPassword</name>
       <value>123456</value>  
    </property>  </configuration> 


由于Hive的元数据会存储在Mysql数据库中,所以需要在Hive的配置文件中,指定mysql的相关信息。


javax.jdo.option.ConnectionURL:数据库链接字符串。


此处的主机名,需要设置为自身系统的主机名。这里的主机名为:hadoop


javax.jdo.option.ConnectionDriverName:连接数据库的驱动包。


javax.jdo.option.ConnectionUserName:数据库用户名。


javax.jdo.option.ConnectionPassword:连接数据库的密码。


此处的数据库的用户名及密码,需要设置为自身系统的数据库用户名及密码。



3.4 另外,还需要告诉Hive,Hadoop的环境配置。所以我们需要修改 hive-env.sh 文件。


首先我们将 hive-env.sh.template 重命名为 hive-env.sh。


mv /opt/hive/conf/hive-env.sh.template  /opt/hive/conf/hive-env.sh 


使用 vi 打开hive-env.sh文件。


vi hive-env.sh 


追加 Hadoop的路径,以及 Hive配置文件的路径到文件中。


# Set HADOOP_HOME to point to a specific hadoop install directory # HADOOP_HOME=${bin}/../../hadoop 
HADOOP_HOME=/opt/hadoop  # Hive Configuration Directory can be controlled by: # export HIVE_CONF_DIR=
export HIVE_CONF_DIR=/opt/hive/conf 


3.5 下一步是配置MySQL,用于存储Hive的元数据。


schematool -initSchema -dbType mysql


如果出现1045错误或者视频里最后的错误,多半删除数据库再创建就行



首先,需要保证 MySQL 已经启动。执行以下命令,查看MySQL的运行状态。


service mysqld status 


若没有启动,执行启动命令。


service mysqld start 
或者systemctl restart mysqld


3.6 开启MySQL数据库。


mysql -u root -p 


输入密码进入数据库


创建名为 hive 的数据库,编码格式为 latin1,用于存储元数据。


mysql> create database hive CHARACTER SET latin1; 


查看数据库 hive是否创建成功。


mysql> show databases; 


输入exit 退出 MySQL


mysql> exit; 


3.7 执行测试。由于Hive对数据的处理,依赖MapReduce计算模型,所以需要保证Hadoop相关进程已经启动。( /opt/hadoop/sbin/start-all.sh )


启动Hadoop后,在终端命令行界面,直接输入hive便可启动Hive命令行模式。


输入HQL语句查询数据库,测试Hive是否可以正常使用。


hive> show databases; 



最后全部搭建成功,是左栏的hive库里有如下数据表才可,否则在mysql安装成功和hive失败的情况下,下面左栏是没有数据的。


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
97 2
|
2月前
|
分布式计算 资源调度 Hadoop
【赵渝强老师】部署Hadoop的本地模式
本文介绍了Hadoop的目录结构及本地模式部署方法,包括解压安装、设置环境变量、配置Hadoop参数等步骤,并通过一个简单的WordCount程序示例,演示了如何在本地模式下运行MapReduce任务。
|
3月前
|
SQL 分布式计算 Hadoop
手把手的教你搭建hadoop、hive
手把手的教你搭建hadoop、hive
227 1
|
3月前
|
SQL 分布式计算 关系型数据库
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
124 3
|
3月前
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
146 0
|
3月前
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
62 0
|
3月前
|
SQL 分布式计算 关系型数据库
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
80 0
|
3月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
209 6
|
27天前
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
63 4
|
2月前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
147 2