Hive

实验6 熟悉Hive的基本操作 一、实验目的 (1)理解Hive作为数据仓库在Hadoop体系结构中的角色。 (2)熟练使用常用的HiveQL。 二、实验平台 操作系统:Ubuntu18.04(或Ubuntu16.04)。 Hadoop版本:3.1.3。 Hive版本:3.1.2。 JDK版本:1.8。 三、数据集 由《Hive编程指南》(O’Reilly系列,人民邮电出版社)提供,下载地址: https://raw.githubusercontent.com/oreillymedia/programming_hive/master/ 阅读详情

MySQL安装

①官网下载mysql-server(yum安装)
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
若wget不可用,下载安装wget:yum -y install wget
②解压rpm -ivh mysql-community-release-el7-5.noarch.rpm
③安装yum install mysql-community-server
④重启mysql服务:service mysqld restart (以后开机不需启动mysql)
⑤进入mysql:mysql -u root
为root用户设置密码root:mysql> set password for ‘root’@‘localhost’ =password(‘root’);
以下步骤可选:
配置文件/etc/my.cnf加上编码配置:[mysql] default-character-set =utf8
远程连接设置:
把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户:
mysql> grant all privileges on . to root@’ %‘identified by ‘root’;
mysql>flush privileges; 刷新权限
如果是新用户而不是root,则要先新建用户:
mysql>create user ‘username’@’ %’ identified by ‘password’;

卸载MySQL

重新安装mysql之前需彻底清除mysql。
①查看是否有安装的mysql:rpm -qa |grep -i mysql
②依次卸载mysql各安装包:rpm -e --nodeps 安装包名字
③查看残留的mysql目录或文件:find / -name mysql 、 whereis mysql。
④依次删除查询出的各目录:rm -rf 目录名
⑤删除mysql 配置文件:/usr/my.cnf、 /root/.mysql_sercret。

注:
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
root用户密码错误

Hive安装与配置

①下载压缩包
官网下载地址:http://mirror.bit.edu.cn/apache/hive/
选择apache-hive-2.3.4-bin.tar.gz,在Windows里面下载。

②将压缩包从Windows传输到Linux当前目录下¬¬
SecureCRT 【File】→【Connect SFTP Session】开启sftp操作

③解压
解压安装到指定目录下/opt/module(/opt是系统自带目录,之下的/module是自己创建的)
修改解压目录名为hive。

④修改环境变量
修改etc/profile文件,添加HIVE_HOME安装路径。
Source命令更新etc/profile文件,使其生效。

⑤配置hive-env.sh
进入/opt/module/hive/conf目录,修改hive-env.sh.template的文件名为hive-env.sh。(可以使用cp或者mv命令)
cp hive-env.sh.template hive-env.sh
修改Hadoop的安装路径
HADOOP_HOME=/opt/module /hadoop-2.7.3
修改Hive的conf目录的路径
export HIVE_CONF_DIR=/opt/module/hive/conf

⑥配置hive-site.xml
进入/opt/module/hive/conf目录,修改default.xml.template的文件名为hive-site.xml。(可以使用cp或者mv命令)
cp hive- default.xml.template hive-site.xml
在最后添加以下属性:
<元数据库的链接地址 mysql -->

  <property>

   <name>javax.jdo.option.ConnectionURL</name>       
   <value>jdbc:mysql://bigdata131:3306/hivedb?createDatabaseIfNotExist=true</value>
   <description>JDBC connect string for a JDBC metastore</description>
    </property>

<指定mysql驱动 >
<mysql5的驱动是com.mysql.jdbc.Driver,mysql6以后的是com.mysql.cj.jdbc.Driver。>

  	 <property>

    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description> 
    </property>

<指定mysql用户名 -->

  <property>

    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
    <description>username to use against metastore database</description>             
            </property>

<指定mysql密码 请输入自己的MySQL连接密码 -->

  	<property>

    <name>javax.jdo.option.ConnectionPassword</name>
    <value>root</value>
    <description>password to use against metastore database</description> </property>

注:
查看Hive建库、建表默认的hdfs目录为/user/hive/warehouse

hive.metastore.warehouse.dir
/user/hive/warehouse
location of default database for the warehouse

MySQL Connector/J安装
①下载压缩包
官网下载地址:http://ftp.ntu.edu.tw/MySQL/Downloads/Connector-J/
mysql-connector-java-5.1.47.tar.gz

②将压缩包从Windows传输到Linux当前目录下¬¬
SecureCRT 【File】→【Connect SFTP Session】开启sftp操作

③解压
解压到指定目录下/opt/module(/opt是系统自带目录,之下的/module是自己创建的)

④拷贝驱动包
将驱动包mysql-connector-java-5.1.47-bin.jar复制到/opt/module/hive/lib目录中。

启动hive
①启动Hadoop:start-all.sh
②初始化Metastore架构:schematool -dbType mysql -initSchema
③启动Hive:hive
hive> 进入hive shell
④创建/删除/修改/查看 数据库、表、视图,向表中装载数据,查询数据等等。

注:
①启动hive报错:Exception in thread “main” java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: KaTeX parse error: Expected '}', got 'EOF' at end of input: …a.io.tmpdir%7D/%7Bsystem:user.name%7D,原因是hive-site.xml里的临时目录没有设置好。
修改${system:Java.io.tmpdir}为自己创建的临时目录/opt/module/hive/tmp。

  <property>  <name>Hive.exec.local.scratchdir</name>
   <value>${system:Java.io.tmpdir}/${system:user.name}</value> 
  <description>Local scratch space for Hive jobs</description> 
  </property> <property>  <name>hive.downloaded.resources.dir</name>
  <value>${system:java.io.tmpdir}/${hive.session.id}_resources</value> 
  <description>Temporary local directory for added resources in the
  remote file system.</description>  </property> <property>
<name>hive.server2.logging.operation.log.location</name>
<value>${system:java.io.tmpdir}/${system:user.name}/operation_logs</value>
<description>Top level directory where operation logs are stored if logging functionality is enabled</description> </property>
  <property>
<name>hive.querylog.location</name>
<value>${system:java.io.tmpdir}/${system:user.name}</value>
<description>Location of Hive run time structured log file</description>   </property>

②schematool -dbType mysql -initSchema时报错:Schema initialization FAILED! Metastore state would be inconsistent !!
网上教程都是说在文件头部加上mysql的连接配置,但是hive-site.xml.templat中原本是有derby的配置,这样就会被下面的derby配置覆盖,导致初始化失败。方法就是可以将mysql配置放在最下面,或者删除derby的配置。
删除derby的配置产生的metastore_db目录。

③hive命令(如show databases ,show tables),会报出如下错误:Failed with exception Java.io.IOException:java.lang.IllegalArgumentException: java.NET.URISyntaxException: Relative path in absolute URI: s y s t e m : u s e r . n a m e 找 到 h i v e − s i t e . x m l 的 &lt; n a m e &gt; h i v e . e x e c . l o c a l . s c r a t c h d i r &lt; / n a m e &gt; 的 值 里 面 的 {system:user.name} 找到hive-site.xml的&lt;name&gt;hive.exec.local.scratchdir&lt;/name&gt;的值里面的 system:user.name找到hive−site.xml的<name>hive.exec.local.scratchdir</name>的值里面的{system.user.name}改为${user.name}。

Hive应用实例:wordcount

①建数据源文件并上传到hdfs的/user/input目录下
②建数据源表t1:create table t1 (line string);
③装载数据:load data inpath ‘/user/input’ overwrite into table t1;
④编写HiveQL语句实现wordcount算法,建表wct1保存计算结果:
create table wct1 as select word, count(1) as count from (select explode (split (line, ’ ')) as word from t1) w group by word order by word;
⑤查看wordcount计算结果:
在这里插入图片描述

Hive的安装配置及原理 完美解决解压hive缺少hive-site.xml文件,和安全模式无法启动hive等问题 Hive原理 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。 Hvie是建立在Hadoop上的数据仓库基础架构。它提供了一系列的工... 阅读详情

相关推荐

2、Hive:启动Hive

Hive:启动Hive

m0_53336038的博客 6925

centos 7.x 安装 mysql 8.x

1. 安装 wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm yum -y localinstall mysql80-community-release-el7-11.noarch.rpm yum -y install mysql-community-server 2. 启动并设置开机启动 systemctl start mysqld systemctl enable mysqld systemc.

286

[Hive]五、Hive 源码编译

G:\Bigdata\2.hive\大数据技术之Hive源码编译。

weixin_44428807的博客 1729

Mysql8 CentOS7 rpm和rpm Bundle安装

当下载包:wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm 或者执行下载后上传,可以使用该百度网盘地址 链接: https://pan.baidu.com/s/1dXIr8ypfwBCcURpTgXwREg 提取码: s2ca 安装:rpm -ivh mysql80-community-release-el7-11.noarch.rpm 查看:cd /etc/yum.repos.d/ 下面是否有mysq

it_lihongmin的博客 3322

hive 重启后台hive服务

停止hive [root@zjj101 conf]# jps 22353 NodeManager 90933 DataNode 22105 ResourceManager 90808 NameNode 41900 Jps 77644 RunJar [root@zjj101 conf]# kill -9 77644 [root@zjj101 conf]# 启动hive shell命令: [root@zjj101 conf]# nohup hive --service hiveserver2 &

张俊杰 的博客 9018

【Hive】Mac安装Hive

一. 安装 hive安装:brew install hive mysql安装:brew install mysql 启动mysql:bash mysql.server start 二. 元数据库配置 Hive默认用derby作为元数据库。这里我们用mysql来存储元数据,下面作一些初始化配置 登录mysql:mysql -u root 创建数据库:create database metast...

藏经阁 | 玄苦 1213

Hive 安装 以及使用 DataGrip 连接 Hive

Hive 安装 以及使用 DataGrip 连接 HiveHive 安装说明Hive 安装前的准备Hive 安装Hive 启动Hive 安装常见的问题 Hive 安装说明 ① 环境说明 Hadoop 环境已通过腾讯云服务器完成搭建,我是将 hive 安装到 该 hadoop 集群的某个节点了 Mysql 中间件使用的是阿里云的产品 ② 版本说明 Hadoop 2.7.5 +Hive 2.1.1 + Mysql 8.0.18 + Centos 7 + DataGrip 2021 Hive 安装前的准备 ① 搭

半吊子Kyle的博客 6857

hive安装

一、前提:二、安装步骤:1、上传jar包至/usr/local/soft2、解压并重命名3、配置环境变量三、配置HIVE文件1、配置hive-env.sh2、配置hive-site.xml3、配置日志4、修改默认配置文件5、上传MySQL连接jar包四、修改MySQL编码1、 编辑配置文件2、加入以下内容:3、 重启mysql五、初始化HIVE六、进入hive七、后续配置八、测试hivehive中的几种存储格式TextFile格式:文本格式RCFile:ORCFile:Parquet:安装hive所需要的虚

m0_64372793的博客 1328

Hive和MySQL的部署、配置Hive元数据存储到MySQL、Hive服务的部署

Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的 SQL 查询功能,可以将 SQL 语句转换为 MapReduce 任务来执行。Hive 定义了一种简单的类 SQL 查询语言,称为 HQL(Hive Query Language),它允许熟悉 SQL 的用户查询数据。

2301_78038072的博客 6770

Hive on Spark and Spark sql on Hive

结构上Hive On Spark和SparkSQL都是一个翻译层,把一个SQL翻译成分布式可执行的Spark程序。Hive和SparkSQL都不负责计算。Hive的默认执行引擎是mr,还可以运行在Spark和Tez。Spark可以连接多种数据源,然后使用SparkSQL来执行分布式计算。Hive On Spark 配置1、首先安装包要选择对,否则就没有开始了。Hive版本:apache-hive-...

代灿灿灿的博客 3226

hive基本操作

hive 基本操作的命令和hive 实用命令等,有利与学习hive和mysql

Hive以及Hive安装部署

文章目录1.Hive简介1.1什么是Hive1.2为什么使用Hive1.3Hive的特点1.4Hive架构图1.5Hive与Hadoop的关系1.6Hive与传统数据库对比2.HIVE的安装部署1.derby版hive直接使用1、解压hive2.修改目录名称3.初始化元数据库4.启动5.创建数据库6.创建表7.插入数据8.可能遇到的问题9.Hive启动报错Safe mode2.基于mysql管理元数据版hive1、解压hive2.修改目录名称3.检测服务器mysql数据库4.配置mysql允许外网访问5.退

望山。 2349

大数据实验六实验报告:熟悉Hive的基本操作

“大数据技术原理与应用”课程实验报告 题目:实验六:熟悉Hive的基本操作 姓名:小猪猪 日期:2022/5/15 1、实验环境: 设备名称 LAPTOP-9KJS8HO6 处理器 Intel(R) Core(TM) i5-10300H CPU @ 2.50GHz 2.50 GHz 机带 RAM 16.0 GB (15.8 GB 可用) 主机操作系统 Windows 10 家庭中文版 虚拟机操作系统 ubuntukylin-16.04 Hadoop 版本 3.1.3 JDK 版本 1.8 Java IDE:Eclipse 系统类型 64 位操作系统, 基于 x64 的处理器 笔和触控 没有可用于此显示器的笔或触控输入 2、实验内容与完成情况: 1.创建一个内部表 stocks,字段分隔符为英文逗号,表结构如下所示: stocks 表结构:

从Hive on YARN到Hive on Spark

本实战通过配置 Hive 与 Spark 集成,分别基于 YARN(MapReduce)和 Spark 引擎执行词频统计任务,验证了 Hive on Spark 在查询性能上的显著优势,同时展示了 Hadoop、Hive 和 Spark 的协同部署与关键配置步骤。

howard2005的专栏 1778

基于PLC的图书馆机器人设计与仿真

本文设计了一种基于PLC的图书馆机器人系统,该系统能提升图书馆自动化管理水平,选用西门子S7-1200系列PLC作为核心控制单元,结合电机驱动、传感器采集以及超声波避障等技术,设计出机器人行走、图书识别与分拣的功能模块,系统借助条形码扫描模块获取图书信息,将其分析后与设定的存放位置做对比,精准达成图书的存取和归还。仿真结果显示,机器人执行任务时运动控制响应时间是0.35秒,避障成功率为98.3%,图书识别准确率高达99.4%,在控制系统方面,运用STEP7-MICRO/WIN软件编程,结合WINCC设计组态

weixin_44553616的博客 1925

MacOS Intel芯片实战:Docker Compose一键部署Dify全流程解析

本文详细解析了在搭载Intel芯片的MacOS系统上,使用Docker Compose一键部署开源LLM应用开发平台Dify的全流程。内容涵盖环境准备、Docker配置与镜像加速、代码拉取与配置初始化、服务启动与问题排查,以及访问验证与初步探索,旨在帮助开发者快速在本地搭建私有化AI应用开发环境。

ik678901234的博客 620

【Hive】Hive安装

第二章 Hive安装第三章 DDL(Data Definition Language)数据定义第四章 DML(Data Manipulation Language)数据操作第五章 Hive查询第六章 Hive的基础知识第七章 Hive函数第八章 分区表和分桶表第九章 文件格式和压缩第十章 企业级调优附录:常见错误及解决方案。

weixin_44917201的博客 1397

arcgis密度分析

密度分析 密度分析是指根据输入的要素数据集计算整个区域的数据集状况,从而产生一个连续的密度表面。通过计算密度,将每个采样点的值散布到整个研究区域,并获得输出栅格中每个像元的密度值。在 ArcGIS 中,分布密度的计算方法有点密度分析、线密度分析和核密度分析三种。 1.点密度分析 导入实验数据居民点图层和道路图层 在自定义里勾选空间分析模块Spatial Analyst 点击空间分析工具中密度分析内的点密度分析, 参数设置如下,其中输出像元大小表示输出栅格数据集的像元大小。值越小.

Jasenjane的博客 2万+

hive on spark 还是 spark on hive?

在运行sql的时候,hive on spark 还是 spark on hive 到底是什么呢?它们是一个东西吗?区别是什么?

chashugu2022的博客 2288

Fluent VOF造波从入门到放弃?手把手教你用k-w SST模型搞定波浪模拟

本文详细介绍了使用Fluent VOF和k-w SST模型进行波浪模拟的实战技巧,从参数设置到结果优化,帮助用户避开常见误区。通过工业项目验证的配置方案,提升波浪模拟的准确性和计算效率,特别适合处理多相流和复杂湍流场景。

weixin_27102543的博客 422

恒玄BES2700ZP开发实战:从零搭建嵌入式音频系统

本文详细介绍了恒玄BES2700ZP蓝牙音频SoC的开发实战,从环境搭建、SDK架构解析到蓝牙音频、AI语音集成及低功耗优化。重点探讨了如何利用其多核架构实现高性能音频处理和LE Audio支持,为开发者提供从零构建嵌入式音频系统的完整指南。

o1p2q3r的博客 919

Hive配置

hive配置

qq_51180928的博客 1372

某物data魔改与变种算法还原(含加解密Py纯算)

某物data加解密、设备指纹魔改、变异、自定义加密分析与纯算还原

吴秋霖的博客 1281

【HIVE】 hive 导入导出csv(全)

Hive 导入csv文件H 1、检查是否有hive-serde 包 1.1 进入hive lib目录 cd /usr/local/service/hive/lib 1.2 发现hive version 是2.1.1 ,查看是否添加了hive-serde-2.1.1.jar(我这里已经添加了,没添加的看后续1.3) ll hive-serde-2.1.1.jar 1.3 没添加的,直接下载,放到lib目录下 cd /usr/local/service/hive/lib...

Zsigner的博客 4261

国科大学习资料--计算机视觉--期末考试解析

国科大学习资料–计算机视觉(胡占义)–期末考试解析 ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;

无名何许人的博客 2467

rk3568 Android12 默认授予预装app权限

默认授予预装应用权限可以避免用户在每次使用应用时都要重复同意权限请求。尽管在Android 12中,用户对权限的管理有了更高的控制权,但这也可能导致用户在频繁使用预装应用时感到繁琐和不必要的干扰。通过默认授权,减少了这种麻烦。一些厂商可能会根据其定制的Android系统(如Samsung的One UI、Xiaomi的MIUI)要求某些预装应用默认获得权限,以便应用能够提供厂商特定的功能。这也有助于设备厂商提供统一和稳定的服务,不至于因为权限问题导致某些功能无法使用。

weixin_35723192的博客 661
上一篇: Redis安装以及使用
下一篇: Spark
javaeee1
博客等级 码龄9年 1粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值