ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Hive API

2022-07-04 11:02:12  阅读:136  来源: 互联网

标签:hdfs dfs hadoop hive API Hive mysql log4j


  1. 配置MySQL

只需要在master节点上启动MySQL即可

注意需要创建hive用户,并设置MySQL远程可以访问

• mysql -hlocalhost -uroot -p123456
• GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' IDENTIFIED BY '123456'
• GRANT ALL PRIVILEGES ON *.* TO 'hive'@'localhost' IDENTIFIED BY '123456'
• FLUSH PRIVILEGES
  1. 安装Hive

• 上传apache-hive-1.2.1-bin.tar.gz,解压后重命名为hive-1.2.1
• MySQL的驱动包mysql-connector-java-5.1.39-bin.jar,将解压出来的jar放入hive 的lib目录下

  1. 配置环境变量

• 配置hive环境变量
sudo vi /etc/profile
export HIVE_HOME=/home/hadoop/hive-1.2.1
export PATH=$PATH:$HIVE_HOME/bin:$PATH
export CLASSPATH=$CLASSPATH:$HIVE_HOME/lib
source /etc/profile
• 修改/conf/hive-env.sh文件
HADOOP_HOME=/home/hadoop/hadoop-2.7.2
export HIVE_CONF_DIR=/home/hadoop/hive-1.2.1/conf

  1. 配置HDFS存储位置

• Hive配置文件里要用到HDFS的一些路径,需要手动创建如下路径:
• hdfs dfs -mkdir -p /hive/warehouse
• hdfs dfs -mkdir -p /hive/logs
• hdfs dfs -mkdir -p /hive/tmp
• hdfs dfs -chmod 733 /hive/warehouse
• hdfs dfs -chmod 733 /hive/logs
• hdfs dfs -chmod 733 /hive/tmp
• 创建本地的目录
• mkdir -p /home/hadoop/hive-1.2.1/hivedata/logs

  1. 配置文件

hive-site.xml

• cp hive-default.xml.template hive-site.xml

<property><name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master:3306/metastore?createDatabaseIfNotExist=true</value></property>
<property><name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value></property>
<property><name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value></property>
<property><name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value></property>
<property><name>hive.metastore.warehouse.dir</name>
<value>/hive/warehouse</value></property>
<property><name>hive.exec.scratchdir</name><value>/hive/tmp</value>
</property>

配置log4j

• 创建配置文件:
• cp hive-exec-log4j.properties.template hive-exec-log4j.properties
• cp hive-log4j.properties.template hive-log4j.properties
• 修改两个文件中的配置: • hive.log.dir=/home/hadoop/hive-1.2.1/logs
• log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter

启动hive

• 确保hdfs启动
• 初始化mysql数据库:schematool --dbType mysql -initSchema
问题.ls: cannot access '/home/hadoop/spark-2.0.2/lib/spark-assembly-.jar': No such file or
directory
原因.spark升级到spark2以后,原有lib目录下的大JAR包被分散成多个小JAR包,原来的sparkassembly-
.jar已经不存在
解决.打开hive的安装目录下的bin目录,找到hive文件
修改成:sparkAssemblyPath=ls ${SPARK_HOME}/jars/*.jar

• 启动hive:hive

• 测试hive
hive> create TABLE test( id INT, name string); (观察hdfs下路径)
hive> show tables;

标签:hdfs,dfs,hadoop,hive,API,Hive,mysql,log4j
来源: https://www.cnblogs.com/attack204/p/16442175.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有