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整合

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

05-21 12:56