003 Impala | 安装前性能配置

为了更好的发挥Impala的性能,需要在impala的配置项,如下几点,

Short-Circuit Reads 开启HDFS短路读取

HDFS也有短路读取的功能,因此在安装Impala之前开启次功能,这样Impala可以直接从file system中直接读取文件,而不需要经过NameNode,DataNode进程。同时,短路读取,也可以最小化数据的额外拷贝。

需要libhadoop.so文件,Hadoop Native Library,要确保Impala的server和client能够同时读取到才行。

配置如下,

  1. 确保impala能够读取到core-site.xml和hdfs-site.xml,共享这些文件或者拷贝到impala配置目录,独享配置(此时,修改不会影响HDFS)
  2. 在Impala的所有节点中,修改hdfs-site.xml配置文件,如下,

 dfs.client.read.shortcircuit
 true


 dfs.domain.socket.path
 /var/run/hdfs-sockets/dn


 dfs.client.file-block-storage-locations.timeout.millis
 10000
  1. 确保/var/run/hdfs-sockets/dn目录对于root组是有读权限,如果不是root组,会报错如下,


    group error.png

修改之后,启动impala便可顺利,


change group.png
  1. 重启所有DataNodes

下图,是CDH的截图,改配置是HDFS的,但是可以给impala服务范围使用,如果开始,需要去HDFS的配置修改功能设置,


shortcircuit.png

提示,建议的 DataNode 数据目录权限 配置为处于非安全模式中的 755,使用 HDFS Short Circuit Reads 实现最佳 Impala 性能。至少一个 DataNode 角色组 (DataNode Group 1) 有无效值:700。您应了解在进行该更改之前,修改安全群集中的该配置值的含义。

需要将dfs.datanode.data.dir.perm设置为755,默认是700,


perm.png

Block Location Tracking 块位置追踪

让Impala知道HDFS块的元数据信息,包括磁盘数据块的位置等等,能够更好的增强效率
操作步骤,

  1. 对于每个DataNodes,修改hdfs-site.xml

 dfs.datanode.hdfs-blocks-metadata.enabled
 true
 
  1. 确保Impala能够读到hdfs-site.xml配置文件
  2. 重启DataNodes

你可能感兴趣的:(003 Impala | 安装前性能配置)