设置 impala 可以使用的最大内存:在上面的 IMPALA_SERVER_ARGS 参数值后面添加 -mem_limit=70% 即可。
如果需要设置 impala 中每一个队列的最大请求数,需要在上面的 IMPALA_SERVER_ARGS 参数值后面添加 -default_pool_max_requests=-1 ,该参数设置每一个队列的最大请求数,如果为-1,则表示不做限制。
在节点74上创建hive-site.xml、core-site.xml、hdfs-site.xml的软链接至/etc/impala/conf目录并作下面修改在hdfs-site.xml文件中添加如下内容:
<property> <name>dfs.client.read.shortcircuit</name> <value>true</value> </property> <property> <name>dfs.domain.socket.path</name> <value>/var/run/hadoop-hdfs/dn._PORT</value> </property> <property> <name>dfs.datanode.hdfs-blocks-metadata.enabled</name> <value>true</value> </property>
同步以上文件到其他节点。
2.2创建socket path
在每个节点上创建/var/run/hadoop-hdfs:
# mkdir -p /var/run/hadoop-hdfs
2.3用户要求
impala 安装过程中会创建名为 impala 的用户和组,不要删除该用户和组。
如果想要 impala 和 YARN 和 Llama 合作,需要把 impala 用户加入 hdfs 组。
impala 在执行 DROP TABLE 操作时,需要把文件移到到 hdfs 的回收站,所以你需要创建一个 hdfs 的目录 /user/impala,并将其设置为impala 用户可写。同样的,impala 需要读取 hive 数据仓库下的数据,故需要把 impala 用户加入 hive 组。
impala 不能以 root 用户运行,因为 root 用户不允许直接读。
创建 impala 用户家目录并设置权限:
sudo -u hdfs hadoop fs -mkdir /user/impala sudo -u hdfs hadoop fs -chown impala /user/impala
查看 impala 用户所属的组:
# groups impala impala : impala hadoop hdfs hive
由上可知,impala 用户是属于 imapal、hadoop、hdfs、hive 用户组的 。
2.4启动服务
在 74节点启动:
# service impala-state-store start # service impala-catalog start
2.5使用impala-shell
使用impala-shell启动Impala Shell,连接 74,并刷新元数据
#impala-shell Starting Impala Shell without Kerberos authentication Connected to bd-dev-hadoop-70:21000 Server version: impalad version 2.3.0-cdh5.5.1 RELEASE (build 73bf5bc5afbb47aa7eab06cfbf6023ba8cb74f3c) *********************************************************************************** Welcome to the Impala shell. Copyright (c) 2015 Cloudera, Inc. All rights reserved. (Impala Shell v2.3.0-cdh5.5.1 (73bf5bc) built on Wed Dec 2 10:39:33 PST 2015) After running a query, type SUMMARY to see a summary of where time was spent. *********************************************************************************** [bd-dev-hadoop-70:21000] > invalidate metadata;








