本篇
Hadoop版本为:2.7.2
Hive版本为:2.3.5
请严格按照版本来安装。
Hive 是一种底层封装了Hadoop 的数据仓库处理工具,使用类SQL 的HiveSQL 语言实现数据查询,所有Hive 的数据都存储在Hadoop 兼容的文件系统(例如,Amazon S3、HDFS)中。Hive 在加载数据过程中不会对数据进行任何的修改,只是将数据移动到HDFS 中Hive 设定的目录下,因此,Hive 不支持对数据的改写和添加,所有的数据都是在加载的时候确定的。Hive 的设计特点如下。
主要分为以下几个部分:
Hive中包含以下四类数据模型:表(Table)、外部表(External Table)、分区(Partition)、桶(Bucket)。
https://dlcdn.apache.org/hive/
如果嫌慢,可以网盘下载:链接:
https://pan.baidu.com/s/1axk8C4Zw7CUuP1b1SGPyPg?pwd=yyds
解压安装包到(D:\bigdata\hive\2.3.5),注意路径不要有空格。
Hive 的Hive_x.x.x_bin.tar.gz 高版本在windows 环境中缺少 Hive的执行文件和运行程序。
解决方法:
下载地址:http://archive.apache.org/dist/hive/hive-2.0.0/apache-hive-2.0.0-bin.tar.gz
或者网盘下载:https://pan.baidu.com/s/1exyrc51P4a_OJv2XHYudCw?pwd=yyds
替换后:
下载和拷贝一个 mysql-connector-java-5.1.47-bin.jar 到 $HIVE_HOME/lib 目录下。
官网下载地址:https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-java-5.1.47.zip
或者网盘下载:https://pan.baidu.com/s/1X6ZGyy3xNYI76nDoAjfVVA?pwd=yyds
配置文件目录(%HIVE_HOME%\conf)有4个默认的配置文件模板拷贝成新的文件名
原文件名 | 拷贝后的文件名 |
---|---|
hive-log4j.properties.template | hive-log4j2.properties |
hive-exec-log4j.properties.template | hive-exec-log4j2.properties |
hive-env.sh.template | hive-env.sh |
hive-default.xml.template | hive-site.xml |
后面Hive的配置文件用到下面这些目录:
先在Hive安装目录下建立 data 文件夹,
然后再到在这个文件夹下建
op_logs
query_log
resources
scratch 这四个文件夹,建完后如下图所示:
编辑 conf\hive-env.sh 文件:
根据自己的Hive安装路径(D:\bigdata\hive\2.3.5),添加三条配置信息:
# Set HADOOP_HOME to point to a specific hadoop install directory
HADOOP_HOME=D:\bigdata\hadoop\2.7.2
# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=D:\bigdata\hive\2.3.5\conf
# Folder containing extra libraries required for hive compilation/execution can be controlled by:
export HIVE_AUX_JARS_PATH=D:\bigdata\hive\2.3.5\lib
编辑 conf\hive-site.xml 文件:
根据自己的Hive安装路径(D:\bigdata\hive\2.3.5),修改下面几个参数的配置:
<property>
<name>hive.exec.local.scratchdir</name>
<value>D:/bigdata/hive/2.3.5/data/scratch</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.server2.logging.operation.log.location</name>
<value>D:/bigdata/hive/2.3.5/data/op_logs</value>
<description>Top level directory where operation logs are stored if logging functionality is enabled</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>D:/bigdata/hive/2.3.5/data/resources/${hive.session.id}_resources</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>Username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3307/hive?createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8</value>
<description>
JDBC connect string for a JDBC metastore.
To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL.
For example, jdbc:postgresql://myhost/db?ssl=true for postgres database.
</description>
</property>
修改后的 hive-site.xml 下载地址:https://pan.baidu.com/s/1PvTCc_6Cu-1HJ44E2vEFQg?pwd=yyds
Hadoop安装及启动,请看这篇博文:Windows下安装Hadoop(手把手包成功安装)
可以通过访问namenode和HDFS的Web UI界面(http://localhost:50070)
以及resourcemanager的页面(http://localhost:8088)
使用命令:
hadoop fs -mkdir /tmp
hadoop fs -mkdir /user/
hadoop fs -mkdir /user/hive/
hadoop fs -mkdir /user/hive/warehouse
hadoop fs -chmod g+w /tmp
hadoop fs -chmod g+w /user/hive/warehouse
或者使用命令:
hdfs dfs -mkdir /tmp
hdfs dfs -chmod -R 777 /tmp
在Hadoop管理台(http://localhost:50070/explorer.html#/)可以看相应的情况:
在%HIVE_HOME%/bin目录下执行下面的脚本:
hive --service schematool -dbType mysql -initSchema
可以发现,Hive会自动连接MySQL去创建schema hive,并执行脚本。
输入hive,进入hive:
至此,Hive在Windows下安装成功了!
文章浏览阅读558次。【前言】 组长前段时间给了个任务让研究下如何优化Mysql性能, 于是我就在网上搜索了些资料,整合了一下分享给大家。【正文】1.减少不使用查询缓存的查询语句 大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续_组长说考虑性能让我加索引
文章浏览阅读291次。前言闲来无事,穷折腾。最近我朋友在找工作,遇到一些面试题,或者遇到一些问题会及时跟我讨论。我则作为他的幕后军师,为他出谋划策。接下来我分享给大家一道简单的面试题。题目统计字符串中出现最多的字母与个数?分析1、验证数据是否字符串2、字符串转换为数组3、统计字符串出现的次数例:var str = 'aaaadddddssssgdhssssbbbbbuuuwmopqlsabcfws..._统计字符串中字母个数或统计最多字母数。
文章浏览阅读5.4k次,点赞13次,收藏111次。摘要:本案例讲述的案例为生鲜农产品冷链物流配送路径优化,涉及的目标函数成本包括碳排放成本、固定成本、运输成本、货损变质成本、时间惩罚成本。目标种类:单目标模型。求解方法:基础版蚁群算法+改进版蚁群算法。整体对标层级:硕士_配送仓库设计算法模型有哪些
文章浏览阅读579次,点赞27次,收藏23次。面向能源与环境需求,长期从事新能源材料与器件领域,重点围绕电化学能源存储与转化方向的关键材料与器件设计(包括锂/钠离子电池、超级电容器、全解水制氢、燃料电池、新型能源存储与转化器件等)。根据斯坦福大学的数据,他是2019年、2020年和2021年世界上前2%被引用最多的研究人员。他也是IEEE高级会员。会议将聚集相关领域内的专家学者和科研人员,围绕“能源中的光学材料”、“光伏发电”、“能源并网技术”等能源再生和发展研究展开讨论,共享研究成果和前沿技术,探讨发展趋势,扩宽科研思路,推进学术成果朝产业化发展。_第八届可再生能源与发展国际研讨会(iwred 2024)口号和使命
文章浏览阅读1.4k次。BigDecimal计算错误问题_java.lang.arithmeticexception: non-terminating decimal expansion; no exact r
文章浏览阅读139次。作者:邓子云[email protected] 转载请注明此处在一些传统行业项目的采购活动已经有比较成熟的管理体制和标准,例如机械工程项目或建筑工程项目等,但是软件项目的采购与外包管理工作尚未形成完备的管理体制和标准。 软件产品作为一种特殊的产品,具有高度地不可测量性和可变性。而软件企业的运作方式差别很大,许多软件企业软件能力成熟度不高,大部分企业还处于手工..._软件开发集成不专门面向中小企业采购原因
文章浏览阅读1.4k次,点赞23次,收藏19次。在大语言模型(LLM)端侧部署上,基于 MNN 实现的 mnn-llm 项目已经展现出业界领先的性能,特别是在 ARM 架构的 CPU 上。目前利用 mnn-llm 的推理能力,qwen-1.8b在mnn-llm的驱动下能够在移动端达到端侧实时会话的能力,能够在较低内存(_大模型 llm 推理详解 prefill decode
文章浏览阅读323次。第一步:模块安装pip install pandas第二步:使用(单个工作表为例)说明:如果有多个工作表,那么只要指定sheetname=索引,(第一个工作表为0,第二个工作表为1,以此类推)pd.read_excel(io, sheetname=0,header=0,skiprows=None,index_col=None,names=None,arse_cols=None,date_parse..._webui自动化 使用panda 读取某个单元格的数据 底层封装
文章浏览阅读839次。标题iOS面试题本面试题为个人使用版本,如后续流传出去,请转发的朋友务必注释一下,答案正确性有待商榷,本人的答案不代表权威,仅仅是个人理解。 文章内部有写混乱,将就着看吧。另外大部分图片加载不出来,,MARKDown格式也不太统一(各平台不一样),由于博主太懒不想改,不过不影响最终效果。标题更新日志2020年08月17日 更新了第23条的新的引申,关于NSTimer循环引用的根本原因, 以及优化方案标题一、硬技术篇1.对象方法和类方法的区别?对象方法能个访问成员变量。类方法中不能直接调用_coupang算法面经
文章浏览阅读897次,点赞18次,收藏22次。华电编译技术课程设计实验
文章浏览阅读1k次。两条循环语句:while语句、for语句While语句:作用:根据一定条件,重复执行一条语句或多条语句语法:while 真值表达式:语句块1else: (else语句可以省略)语句块2说明:1、先判断真值表达式,为True或False2、如果为True,则执行语句块1,再回到第一步3、如果为False,则执行语句块2,然后结束此while的执行4、else字句部可以省略注意事项:要控制..._python中循环上一句
文章浏览阅读918次。 在配置之前,要明确以下两点: 1.为什么要配置? 2.为什么要这么配置? 1.为什么要配置? 其实,作为tomcat,安装完成之后,已经能够作为网站服务器使用了。对于很多使用者来说,它已经足够了,所以,如果你的目的不是配置,而是使用,那么你很可能就不需要看下去了。 但是,tomcat单独作为网站服务器呢,有一些缺陷_整合apache和tomcat成功