3、hue与其他框架的集成

3.1、hue与hadoop的HDFS以及yarn集成

第一步:更改所有hadoop节点的core-site.xml配置

记得更改完core-site.xml之后一定要重启hdfs与yarn集群



<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>



第二步:更改所有hadoop节点的hdfs-site.xml



<property>
      <name>dfs.webhdfs.enabled</name>
      <value>true</value>
    </property>



第三步:重启hadoop集群

在node01机器上面执行以下命令



cd /export/servers/hadoop-2.6.0-cdh5.14.0
sbin/stop-dfs.sh
sbin/start-dfs.sh
sbin/stop-yarn.sh
sbin/start-yarn.sh



 

第四步:停止hue的服务,并继续配置hue.ini



cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf

vim hue.ini



配置我们的hue与hdfs集成



[[hdfs_clusters]]
    [[[default]]]
 
 
fs_defaultfs=hdfs://node01.hadoop.com:8020
webhdfs_url=http://node01.hadoop.com:50070/webhdfs/v1
hadoop_hdfs_home=/export/servers/hadoop-2.6.0-cdh5.14.0
hadoop_bin=/export/servers/hadoop-2.6.0-cdh5.14.0/bin
hadoop_conf_dir=/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop

 

配置我们的hue与yarn集成



[[yarn_clusters]]
    [[[default]]]
 
 
      resourcemanager_host=node01
      resourcemanager_port=8032
      submit_to=True
      resourcemanager_api_url=http://node01:8088
      history_server_api_url=http://node01:19888

 

3.2、配置hue与hive集成

如果需要配置hue与hive的集成,我们需要启动hive的metastore服务以及hiveserver2服务(impala需要hive的metastore服务,hue需要hive的hiveserver2服务)

更改hue的配置hue.ini

修改hue.ini



[beeswax]
 
 
  hive_server_host=node03.hadoop.com
  hive_server_port=10000
  hive_conf_dir=/export/servers/hive-1.1.0-cdh5.14.0/conf
  server_conn_timeout=120
  auth_username=root
  auth_password=123456
 
 
 
[metastore]
 
 
  #允许使用hive创建数据库表等操作
  enable_new_create_table=true

启动hive的metastore服务

去node03机器上启动hive的metastore以及hiveserver2服务



cd /export/servers/hive-1.1.0-cdh5.14.0
nohup bin/hive --service metastore & (如果配置了hive的环境变量,则可以省略bin/的路径)
nohup bin/hive --service hiveserver2 &(如果配置了hive的环境变量,则可以省略bin/的路径)



 

重新启动hue,然后就可以通过浏览器页面操作hive了

 

3.3、配置hue与impala的集成

停止hue的服务进程

修改hue.ini配置文件



[impala]
 
 
  server_host=node03
  server_port=21050
  impala_conf_dir=/etc/impala/conf

3.4、配置hue与mysql的集成

找到databases 这个选项,将这个选项下面的mysql注释给打开,然后配置mysql即可,大概在1547行



[[[mysql]]]
      nice_name="My SQL DB"
      engine=mysql
      host=node03.hadoop.com
      port=3306
      user=root
      password=123456



 

3.5、重新启动hue的服务



cd /export/servers/hue-3.9.0-cdh5.14.0/
build/env/bin/supervisor



 

 

3.6、解决hive以及impala执行权限不足的问题

在我们hive当中执行任意的查询,只要是需要跑MR的程序,就会报错,发现权限不够的异常,具体详细信息如下:

 



INFO  : Compiling command(queryId=root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0): select count(1) from mystu



INFO  : Semantic Analysis Completed


INFO  : Returning Hive schema: Schema(fieldSchemas:[FieldSchema(name:_c0, type:bigint, comment:null)], properties:null)



INFO  : Completed compiling command(queryId=root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0); Time taken: 0.065 seconds



INFO  : Concurrency mode is disabled, not creating a lock manager



INFO  : Executing command(queryId=root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0): select count(1) from mystu



INFO  : Query ID = root_20180625191616_d02efd23-2322-4f3d-9cb3-fc3a06ff4ce0



INFO  : Total jobs = 1



INFO  : Launching Job 1 out of 1



INFO  : Starting task [Stage-1:MAPRED] in serial mode



INFO  : Number of reduce tasks determined at compile time: 1



INFO  : In order to change the average load for a reducer (in bytes):



INFO  :   set hive.exec.reducers.bytes.per.reducer=<number>



INFO  : In order to limit the maximum number of reducers:



INFO  :   set hive.exec.reducers.max=<number>



INFO  : In order to set a constant number of reducers:



INFO  :   set mapreduce.job.reduces=<number>



ERROR : Job Submission failed with exception 'org.apache.hadoop.security.AccessControlException(Permission denied: user=admin, access=EXECUTE, inode="/tmp":root:supergroup:drwxrwx---



 

我们需要给hdfs上面的几个目录执行权限即可



hdfs  dfs  -chmod o+x /tmp

hdfs  dfs  -chmod o+x  /tmp/hadoop-yarn

hdfs  dfs  -chmod o+x  /tmp/hadoop-yarn/staging



 

或者我们可以这样执行



hdfs  dfs  -chmod -R o+x /tmp



可以将/tmp目录下所有的文件及文件夹都赋予权限

继续执行hive的任务就不会报错了

=========================================================

课程总结:

impala:sql语句的一个查询工具,
特点:比较快
缺点:占用内存大

impala架构:
impala-server:从节点 主要用于执行sql语句的查询
impala-catalog:主节点 主要用于存储元数据信息
impala-state-store: 主节点 主要用于保存一些sql语句的执行状态

impala的安装:没有提供tar.gz的安装包,使用rpm的安装包来进行安装
下载一个rpm的仓库,5个G,所有的大数据软件都可以通过rpm包方式来进行安装

制作本地的yum源 搞定
第一个:配置文件
第二个:httpd服务
第三个:rpm的仓库

进行安装 搞定

impala的配置: 搞定
impala需要三个核心配置文件 hdfs-site.xml core-site.xml hive-site.xml
impala的配置文件也得需要更改

impala的语法的使用:

进入impala-shell之前的一些参数
impala-shell -q 与hive -e 类似,不进入impala的shell交互窗口直接执行sql语句
impala-shell -f 与hive -f 类似,直接执行sql脚本
impala-shell -r 刷新元数据信息,进入impala-shell之前刷新元数据信息,全量的刷新,如果数据量比较大,性能消耗比较大

进入impala-shell之后的一些参数
refresh dbName.tabName 局部的刷新,只刷新某张已经存在的表的元数据信息
invalidate metadata 全量的刷新,,适用于hive当中新建的数据库或者数据库表的情况

impala的建库建表语法:与hive建库建表一模一样,参见hive的表创建

impala的sql语法:与hive的sql语法类似,参见hive的sql语法

impala的数据导入的几种方式: 搞定
load datal 这种加载数据的方式,只能从hdfs上面加载数据
insert into table select


impala java 开发 了解


------------------------------------------

hue:主要是与其他的各个框架整合使用,hue本身不提供任何的功能

可以与hdfs,以及yarn整合
可以与hive以及impala整合
可以与mysql整合

编译的时候可能会通不过:删了重新编译