Hive学习——单机版Hive的安装
目录
一、基本概念
(一)什么是Hive
(二)优势和特点
(三)Hive元数据管理
二、Hive环境搭建
1.自动安装脚本
2./opt/soft/hive312/conf目录下创建hive配置文件hive-site.xml
3.拷贝一个jar包到hive下面的lib目录下
4.删除hive的guava,拷贝hadoop下的guava
5.重启环境变量
6.启动hadoop服务
7.启动历史服务器
8.Hive初始化数据到mysql中
一、基本概念
(一)什么是Hive
Hive是基于Hadooop的数据仓库解决方案,将结构化的数据文件映射为数据库表,Hive提供类sql的查询语言HQL(Hive Query Language),Hive让更多的人使用Hadoop。
Hive官网:https://hive.apache.org/
(二)优势和特点
- 提供了一个简单的优化模型
- HQL类SQL语法,简化MR开发
- 支持在不同的计算框架上运行
- 支持在HDFS和HBase上临时查询数据
- 支持用户自定义函数、格式
- 常用于ETL操作和BI
- 稳定可靠(真是生产环境)的批处理
- 有庞大活跃的社区
- MapReduce执行效率更快,Hive开发效率更快
(三)Hive元数据管理
记录数据仓库中模型的定义、各层级间的映射关系
Hive存储在关系数据库中,默认的Hive默认数据库是Derby,轻量级内嵌SQL数据库,Derby非常适合测试和演示,存储在.metastore_db目录中,实际生产一般存储在MySql中,修改配置文件hive-site.xml。
HCatalog:将Hive元数据共享给其他应用程序。
hive的数据存储在hdfs上,Hive的select语句交给mapreduce来操作,减少写mapreduce的操作。
二、Hive环境搭建
1.自动安装脚本
(解压、修改文件名、配置环境变量)
#! /bin/bash
echo 'auto install begining...'# global var
hive=trueif [ "$hive" = true ];thenecho 'hive install set true'echo 'setup apache-hive-3.1.2-bin.tar.gz'tar -zxf /opt/install/apache-hive-3.1.2-bin.tar.gz -C /opt/soft/mv /opt/soft/apache-hive-3.1.2-bin /opt/soft/hive312sed -i '73a\export PATH=$PATH:$HIVE_HOME/bin' /etc/profilesed -i '73a\export HIVE_HOME=/opt/soft/hive312' /etc/profilesed -i '73a\# HIVE_HOME' /etc/profileecho 'setup hive success!!!'
fi
2./opt/soft/hive312/conf目录下创建hive配置文件hive-site.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property><name>hive.metastore.warehouse.dir</name><value>/opt/soft/hive312/warehouse</value><description></description>
</property>
<property><name>hive.metastore.db.type</name><value>mysql</value><description></description>
</property>
<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://192.168.180.141:3306/hive147?createDatabaseIfNotExist=true</value><description></description>
</property>
<property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.cj.jdbc.Driver</value><description></description>
</property>
<property><name>javax.jdo.option.ConnectionUserName</name><value>root</value><description></description>
</property>
<property><name>javax.jdo.option.ConnectionPassword</name><value>root</value><description></description>
</property>
<property><name>hive.metastore.schema.verification</name><value>false</value><description>关闭schema验证</description>
</property>
<property><name>hive.cli.print.current.db</name><value>true</value><description>提示当前数据库名</description>
</property>
<property><name>hive.cli.print.header</name><value>true</value><description>查询输出时带列名一起输出</description>
</property>
</configuration>
3.拷贝一个jar包到hive下面的lib目录下
4.删除hive的guava,拷贝hadoop下的guava
[root@lxm147 lib]# ls ./ | grep mysql-connector-java-8.0.29.jar
mysql-connector-java-8.0.29.jar[root@lxm147 lib]# ls ./ | grep guava-19.0.jar
guava-19.0.jar[root@lxm147 lib]# rm -f ./guava-19.0.jar [root@lxm147 lib]# ls ./ | grep guava-19.0.jar [root@lxm147 lib]# find /opt/soft/hadoop313/ -name guava*
/opt/soft/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar
/opt/soft/hadoop313/share/hadoop/hdfs/lib/guava-27.0-jre.jar[root@lxm147 lib]# cp /opt/soft/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar ./[root@lxm147 lib]# ls ./ | grep guava-27.0-jre.jar
guava-27.0-jre.jar
5.重启环境变量
source /etc/profile
6.启动hadoop服务
start-dfs.sh
start-yarn.sh
7.启动历史服务器
[root@lxm147 hive312]# mr-jobhistory-daemon.sh start historyserver
8.Hive初始化数据到mysql中
[root@lxm147 hive312]# schematool -dbType mysql -initSchema
如果初始化出现错误,需要将mysql数据库中的hive147删除,然后hive再重新初始化
相关文章:
Hive学习——单机版Hive的安装
目录 一、基本概念 (一)什么是Hive (二)优势和特点 (三)Hive元数据管理 二、Hive环境搭建 1.自动安装脚本 2./opt/soft/hive312/conf目录下创建hive配置文件hive-site.xml 3.拷贝一个jar包到hive下面的lib目录下 4.删除hive的guava,拷贝hadoop下的guava 5…...
uprobe 实战
观测数据源 目前按照我的理解,和trace相关的常用数据源–探针 大致分为四类。 内核 Trace point kprobe 用户程序 USDT uprobe 在用户程序中,USDT是所谓的静态Tracepoint。和内核代码中的Trace point类似。实现方式是在代码开发时,使用USDT…...
华为OD机试 - 求最大数字(Python)| 真题+思路+考点+代码+岗位
求最大数字 题目 给定一个由纯数字组成以字符串表示的数值,现要求字符串中的每个数字最多只能出现2次,超过的需要进行删除;删除某个重复的数字后,其它数字相对位置保持不变。 如34533,数字3重复超过2次,需要删除其中一个3,删除第一个3后获得最大数值4533 请返回经过删…...
雨水情测报与大坝安全监测系统
压电式雨量传感器产品概述传感器由上盖、外壳和下盖组成,壳体内部有压电片和电路板,可以固定在外径50mm立柱上和气象站横杆上。传感器采用冲击测量原理对单个雨滴重量进行测算,进而计算降雨量。雨滴在降落过程中受到雨滴重量和空气阻力的作用…...
抖音广告投放形式有哪些?新品牌进入抖音怎么建立口碑
坐拥5亿用户的抖音平台,已经成为各大品牌的兵家必争之地。想要在这块宣传的“高地”,做出声量,就必须了解抖音广告投放形式有哪些。这里整理的这份抖音广告投放指南,你一定不能错过。一、抖音为何如此牛想要弄清楚抖音广告的投放形…...
Beefxss使用教程图文教程(超详细)
「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 Beefxss一、首次使用二、修改账号密码三、自带练习页面四、简单使用五、工具界面介绍六、功能演示1、网页重定向2、社工弹窗3、功能颜色标识…...
【Python学习笔记】35.Python3 CGI编程(2)
前言 本章继续介绍Python的CGI编程。 通过CGI程序传递checkbox数据 checkbox用于提交一个或者多个选项数据,HTML代码如下: 实例 <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>csdn教程(csd…...
博客等级说明
CSDN 博客等级是按照用户的博客积分数量进行的设定,为 Lv1 至 Lv10 共 10 个等级,不同的等级创作者可以享受到不同的权益待遇。例如,皮肤奖励、自定义域名、客服优先处理、自定义文章标签等特权。您需要提高博客积分进一步提升等级࿰…...
STL——容器适配器、deque
一、容器适配器 1.适配器 适配器是一种设计模式(设计模式是一套被反复使用的、多数人所知晓的、经过分类编目的、代码设计经验的总结),该种模式是将一个类的接口转换成客户希望的另外一个接口。 2.STL标准库中stack和queue的底层结构 stack…...
VBA数组和Excel工作表数据传递
本文介绍如何利用 VBA 的数组(Array) 来提高 Excel 单元格和外部数据传输的性能。如果数量比较大,通过 Array 来传输数据比直接操作单元格要快若干倍。 将 Range 的数据写入 VBA Array 将 Range 数据写入 VBA 的数组非常简单。下面的例子演示了用法&am…...
PyQt5保姆级入门教程——从安装到使用
目录 Part1:安装PyQt5 Part 2:PyCharm配置PyQt5 Part 3:PyQt5设计界面介绍 Part 4:PyQt5设计UI 今天看了多个大佬的教程,总算是把PyQt5开发弄好了,每个部分都要看几个人的十分不方便,我十分…...
1.6 epoll实战使用
文章目录1、连接池2、epoll两种工作模式2.1、LT模式2.2、ET模式3、后端开发面试题4、epoll验证1、连接池 将每一个套接字和一块内存进行绑定,连接池就是一个结构体数组,通过链表来维护一个空闲连接。 1、ngx_get_connection(int fd)从空闲链表取一个空闲…...
JDK定时、Spring定时、时间轮定时小结
Timer使用一个线程,一个小根堆。线程执行根上的任务,小根堆会根据执行时间戳重新调整,根上的任务是下一个执行的任务。 DelayedQueue维护一个优先级队列,本质也是一个数组方式的堆。任务生成时也有时间戳,只提供存储。…...
关于cFosSpeed如何配置
cFosSpeed配置一、检查Calibration Done情况二、优化Ping时间和线路校准三、测网速四、cFosSpeed控制台五、配置参数一、检查Calibration Done情况 安装完毕,激活成功后。 右键------>选项------>设置, 打开适配器信息,查看Calibra…...
YOLOV5输出的txt里面有什么猫腻(用于图像分类竞赛中提升图像信息密度)
背景概括: kaggle最近举办了一场医学乳腺癌检测的比赛(图像分类) 比赛官网地址 给的数据是dcm的专业的医学格式,自己通过DICOM库转为png后,发现该图像胸部不同的患者乳腺大小不一,简言之乳腺的CT有效图在…...
vue+axios常用操作
vueaxios常用操作vue2axios请求拦截依赖项http.jsvue2axios设置请求头依赖项http.js获取并设置请求头api.jsa.vuevue2axios请求拦截 依赖项 “vue”: “^2.6.11” “axios”: “^0.21.0” “element-ui”: “^2.13.2”(做弹窗提示,可以不用) http.js // 引入axi…...
Xshell连接阿里云服务器搭建网站
一、建设一个网站的基本要求 申请一个独立的域名申请一台云服务器ECS在服务器上安装网站环境,如:Apache发布网站内容至云服务器将第一步注册的域解析至云服务器的外网IP地址进行ICP备案 二、用户访问网站的过程 在浏览器上输入域名浏览器自动调用DNS&…...
嵌入式ARM设计编程(三) 处理器工作模式
文章和代码已归档至【Github仓库:hardware-tutorial】,需要的朋友们自取。或者公众号【AIShareLab】回复 嵌入式 也可获取。 一、实验目的 (1) 通过实验掌握学会使用msr/mrs 指令实现ARM 处理器工作模式的切换,观察不…...
jenkins构建报错:.java:16: error: package javafx.util does not exist
1、报错 jenkins构建报错 package javafx.util does not exist2、报错原因 代码发现使用了javafx类,该类仅存在OracleJDK中,OpenJDK中没有该类。 jenkins服务器安装的是openjdk 3、卸载OpenJDK 具体不概述了 4、离线安装OracleJDK 1)…...
【第三天】策略模式
前言 策略模式是针对不同算法给出不同实现的方式,解耦代码,减少代码中if.....else代码书写量。 一、策略模式UNL类图 对象角色Context 上下文对象,依赖Strategy接口,一般像Context传入Strategy实现对象,执行策略方法…...
以应用为导向,看声纹识别中的音频伪造问题
声纹识别,又称说话人识别,是根据语音信号中的声纹特征来识别话者身份的过程,也是一种重要的生物认证手段。历经几十年的研究,当前声纹识别系统已取得了令人满意的性能表现,并在安防、司法、金融、家居等诸多领域中完成…...
RocketMQ源码分析之CommitLog消息存储机制
1、消息存储分析 1.1 DefaultMessageStore 概要 其核心属性如下: messageStoreConfig 存储相关的配置,例如存储路径、commitLog文件大小,刷盘频次等等。CommitLog commitLog comitLog 的核心处理类,消息存储在 commitlog 文件中…...
亿级高并发电商项目-- 实战篇 --万达商城项目 九(广告服务、安装Redis优化用户缓存、广告服务实现类等开发)
专栏:高并发---分布式项目 亿级高并发电商项目-- 实战篇 --万达商城项目搭建 一 (商家端与用户端功能介绍、项目技术架构、数据库表结构等设计) 亿级高并发电商项目-- 实战篇 --万达商城项目搭建 一 (商家端与用户端功能介绍、项…...
FreeMarker生成word文档,固定word模板
该方法也就是通过freemarker生成固定的word文档,动态的word模板布局不能用该方法。 也就是必须有一个固定的模板文档是.ftl类型 如果初始文件为 需要手动改为: 也就是所有需要替换的地方,都需要有${XX}替换。 主要步骤为: 将 w…...
前端必学的CSS制作Switch动画开关按钮演示
目录 前言 CSS 制作的 Switch 动画开关按钮 1.Html构建 2.CSS编写 3.完整代码 index.html文件 style.css文件 总结 前言 随着前端技术的不断发展与进步,界面交互的样式要求和美感也越来越高,很多网页的交互都加上了css动画,这里作者给大家分享一…...
C语言运算符(左值右值,基本运算符)
一.数据对象,左值,右值,运算符 数据对象:用于存储值的数据存储区域统称,而使用变量名是标识对象的一种方法(还有指针,后面会教的) 左值:用于标识特定数据对象的名称或表…...
【自学Python】一文读懂Python字符串是否是数字
Python字符串是否是数字 Python字符串是否是数字教程 在开发过程中,有时候我们需要判断一个 字符串 是否是 数字 形式,在 Python 中,判断字符串是否只由数字组成的函数为 isnumeric() 。 isnumeric() 函数只能判断 unicode 字符串…...
【PTA Advanced】1146 Topological Order(C++)
目录 题目 Input Specification: Output Specification: Sample Input: Sample Output: 思路 C 知识UP 代码 题目 This is a problem given in the Graduate Entrance Exam in 2018: Which of the following is NOT a topological order obtained from the given dire…...
基于stm32mp157的嵌入式linux+qt项目实战物联网毕业设计选题之智慧医疗项目
stm32mp157开发板FS-MP1A是华清远见自主研发的一款高品质、高性价比的Linux单片机二合一的嵌入式教学级开发板。开发板搭载ST的STM32MP157高性能微处理器,集成2个Cortex-A7核和1个Cortex-M4 核,A7核上可以跑Linux操作系统,M4核上可以跑FreeRT…...
Java实现邮件发送功能
确定发件人邮箱和密码某些邮箱服务器为了增加邮箱本身密码的安全性,给 SMTP 客户端设置了独立密码(有的邮箱称为“授权码”) 对于开启了独立密码的邮箱, 这里的邮箱密码必需使用这个独立密码(授权码) 确认发件人邮箱的 SMTP 服务器地址发件人邮箱的 SMTP 服务器地址, 必须…...
临朐网站建设定制/搜索数据
第五十三天打卡 1143. 最长公共子序列 提示 中等 1.3K company 字节跳动 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新的字符串:它是…...
软件下载网站怎么做/搜索引擎优化网页
本博客采用 CC BY-NC-SA 4.0 进行许可 转载于:https://www.cnblogs.com/GavinZheng/p/10799212.html...
江苏专业做网站的公司/数字营销网站
转自:http://blog.chinaunix.net/uid-9688646-id-3087625.html 一个由C/C编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数参数值,局部变量的值等。其操作方式类似于数据结构中…...
设计中国第一架飞机/武汉seo外包平台
GPIO库函数介绍 重要函数 //1个初始化函数 void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct); //2个读取输入电平函数 uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); 作用:读取某个GPIO的输入电平,实际操作GPIOx_IDR寄存…...
p2p网站如何做测试工具/活动宣传推广方案怎么写
Alice 和 Bob 是一场射箭比赛中的对手。比赛规则如下: Alice 先射 numArrows 支箭,然后 Bob 也射 numArrows 支箭。分数按下述规则计算: 箭靶有若干整数计分区域,范围从 0 到 11 (含 0 和 11)。箭靶上每个…...
服务器搭建网站视频教程/合肥seo公司
题目链接 这里的n很大10{100},数字十分大不能使用int、double等类型存储,需要使用字符串存储。 统计数字每位数上数字的和,再对于位数数字和转化为文字拼音。 #include <stdio.h> #include<string.h> int main(){char a[1002];…...