配置参数管理

待补充。。。

资源分配管理(Admission Control)

Impala有资源池的概念,允许某些查询在特定的资源池执行,不过在白天不跑批/晚上不跑adhoc的DSS系统中,该机制并不常用(oracle、cgroup性质都类似),有兴趣可以参考《Impala Guide 中的Admission Control and Query Queuing》。

安全管理(跟一般的RDBMS差不多,只不过认证和授权是外部的,比较复杂)

Impala认证基于Kerberos框架《Enabling Kerberos Authentication for Impala》,Impala授权框架基于Sentry开源项目《Enabling Sentry Authorization for Impala》,从Impala 1.1.0开始加入,审计特性从1.1.1开始支持。

kerberos安装:https://www.jianshu.com/p/fc2d2dbd510b

kerberos介绍:https://www.cnblogs.com/ulysses-you/p/8107862.html

CDH集成Kerberos配置:https://blog.csdn.net/qxf1374268/article/details/79321951

如何在CDH5.12集群中启用Kerberos认证:https://blog.csdn.net/cy309173854/article/details/79288491

优化

启用short-circuit读

该特性使得Impala可以从文件系统直接读取本地数据,避免了和DataNodes通信的必要性,提升性能,它要求使用libhadoop.so(hadoop原生库)。tarball安装中不包含此库,.rpm, .deb, parcel中包含。

该特性可以通过修改hdfs-site.xml或Cloudera Manager修改。

启用块位置跟踪

该特性可以使得Impala更好地利用底层的磁盘,如果Impala不是由Cloudera Manager管理,则需要启用块位置跟踪特性。该特性同样可以通过hdfs-site.xml修改。

JDBC访问

JDBC 2.0及之后的版本可通过21050访问Impala,可通过impalad启动参数--hs2_port修改默认端口 。

在Impala 2.0+,可通过Cloudera JDBC Connector和Hive 0.13(0.12之前的版本无法访问2.0) JDBC访问。

连接串:jdbc:impala://Host:Port[/Schema];Property1=Value;Property2=Value;...

jdbc:hive2://myhost.example.com:21050/;auth=noSasl

jdbc:hive2://myhost.example.com:21050/;principal=impala/myhost.example.com@H2.EXAMPLE.COM -- Kerberos认证的Impala

当前版本的驱动在对Kudu表执行DML操作时,如果发生一些错误如唯一性约束违反,不会报错。如果有此要求,可以使用Kudu Java API而不是JDBC。

impala jdbc没有发布在共有的maven仓库中,需要自己从https://www.cloudera.com/downloads/connectors/impala/jdbc/2-5-43.html下载,并维护到本地maven仓库,https://github.com/onefoursix/Cloudera-Impala-JDBC-Example包含了一个例子,它使用就和普通的JDBC一样的,没什么特别的。

Impala支持的HDFS文件格式

其中Snappy在压缩率和解压效率之间取得平衡,是推荐的做法。Gzip可以得到最好的压缩率。如果数据几乎一直驻留内存,则不用考虑压缩,因为节省不了I/O。

默认情况下,Impala创建的就是文本文件格式的表。

Parquet是列式存储的二进制文件格式,适合于访问少数列的场景。要创建Parquet格式的表,可以在create table中声明STORED AS PARQUET;子句,如下:

[impala-host:21000] > create table parquet_table_name (x INT, y STRING) STORED AS PARQUET;

还可以直接从Parquet推断出列定义:

CREATE EXTERNAL TABLE ingest_existing_files LIKE PARQUET
'/user/etl/destination/datafile1.dat'
STORED AS PARQUET
LOCATION '/user/etl/destination';

Impala使用的端口列表

Component Service Port Access Requirement Comment

Impala Daemon

Impala Daemon Frontend Port

21000

External

Used to transmit commands and receive results by impala-shell and some ODBC drivers.

Impala Daemon

Impala Daemon Frontend Port

21050

External

Used to transmit commands and receive results by applications, such as Business Intelligence tools, using JDBC, the Beeswax query editor in Hue, and some ODBC drivers.

Impala Daemon

Impala Daemon Backend Port

22000

Internal

Internal use only. Impala daemons use this port for Thrift based communication with each other.

Impala Daemon

StateStoreSubscriber Service Port

23000

Internal

Internal use only. Impala daemons listen on this port for updates from the statestore daemon.

Catalog Daemon

StateStoreSubscriber Service Port

23020

Internal

Internal use only. The catalog daemon listens on this port for updates from the statestore daemon.

Impala Daemon

Impala Daemon HTTP Server Port

25000

External

Impala web interface for administrators to monitor and troubleshoot.

Impala StateStore Daemon

StateStore HTTP Server Port

25010

External

StateStore web interface for administrators to monitor and troubleshoot.

Impala Catalog Daemon

Catalog HTTP Server Port

25020

External

Catalog service web interface for administrators to monitor and troubleshoot. New in Impala 1.2 and higher.

Impala StateStore Daemon

StateStore Service Port

24000

Internal

Internal use only. The statestore daemon listens on this port for registration/unregistration requests.

Impala Catalog Daemon

Catalog Service Port

26000

Internal

Internal use only. The catalog service uses this port to communicate with the Impala daemons. New in Impala 1.2 and higher.

Impala Daemon

KRPC Port

27000

Internal

Internal use only. Impala daemons use this port for KRPC based communication with each other.

Impala Daemon

Llama Callback Port

28000

Internal

Internal use only. Impala daemons use to communicate with Llama. New in Impala 1.3and higher.

Impala Llama ApplicationMaster

Llama Thrift Admin Port

15002

Internal

Internal use only. New in Impala 1.3 and higher.

Impala Llama ApplicationMaster

Llama Thrift Port

15000

Internal

Internal use only. New in Impala 1.3 and higher.

Impala Llama ApplicationMaster

Llama HTTP Port

15001

External

Llama service web interface for administrators to monitor and troubleshoot. New in Impala 1.3 and higher.

Hadoop-Impala学习笔记之管理的更多相关文章

  1. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  2. Hadoop入门学习笔记---part1

    随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力, ...

  3. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  4. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  5. impala学习笔记

    impala学习笔记 -- 建库 CREATE DATABASE IF NOT EXISTS database_name; -- 在HDFS文件系统中创建数据库,需要指定要创建数据库的位置. CREA ...

  6. Hadoop入门学习笔记(一)

    Week2 学习笔记 Hadoop核心组件 Hadoop HDFS(分布式文件存储系统):解决海量数据存储 Hadoop YARN(集群资源管理和任务调度框架):解决资源任务调度 Hadoop Map ...

  7. MongoDB学习笔记—权限管理

    1.MongoDB权限介绍 a 上篇文章中,我们在Linux下配置了MongoDB环境并且将其设置为服务随机器启动而启动,那么接下来这篇文章我们就来简单说一下MongoDB下对登录用户权限的管理. b ...

  8. Hadoop概括——学习笔记<一>

    之前有幸在MOOC学院抽中小象学院hadoop体验课. 这是小象学院hadoop2.X概述第一章的笔记 第一章主要讲的是hadoop基础知识.老师讲的还是比较全面简单的,起码作为一个非专业码农以及数据 ...

  9. Hadoop概括——学习笔记<一>转

    前言 第一章主要讲的是hadoop基础知识.老师讲的还是比较全面简单的,起码作为一个非专业码农以及数据库管理人员,也能狗大致了解其特点 首先是概括图(以hadoop2.0为例)  一.Hadoop基础 ...

  10. hadoop spark学习笔记

    http://www.csdn.net/article/2015-06-08/2824889 hive:是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sq ...

随机推荐

  1. asch相关的linux基础知识分享

    本文针对的人群:会用putty.SecureCRT.xhsell等工具ssh连接到自己的asch服务器上,但不怎么会执行命令的人.高手请绕路~ 本文主要围绕受托人搭建.维护涉及相关的内容进行Linux ...

  2. PHP 多个构造函数

    class A { function __construct() { $a = func_get_args(); $i = func_num_args(); if (method_exists($th ...

  3. nginx上通过ssl证书将http转发为https

    环境:阿里云linux,ngnix 1.16.0 ,ssl证书,XXXX.jar 0.自行在阿里云上下载免费的ssl证书.里面有2个文件.key和pem后面要用到. 1.首先将项目在linux上跑起来 ...

  4. in与exists和not in 与 not exists的区别

    1.in 与 exists: 外表大,用IN:内表大,用EXISTS: 原理: 用in:外表使用了索引,直接作hash连接: 用exists:内表使用了索引,外表作loop循环再进行匹配: 2.not ...

  5. [ipsec][strongswan] 使用wireshark查看strongswan ipsec esp ikev1 ikev2的加密内容

    一,编译,启用strongswan的save-keys plugin ./configure --prefix=/root/OUTPUT --exec-prefix=/root/OUTPUT --en ...

  6. 新建的小程序没有app.js,app.json等文件

    因为在创建的时候没有勾选 建立普通快速启动模板,而我在创建的时候没有发现有这个选项可以选择. 解决办法:把之前创建过的文件夹整个删掉,不能只删内容.然后再重新新建项目,就会出现  建立普通快速启动模板 ...

  7. ORA-00600: 内部错误代码, 参数: [kcm_headroom_warn_1], [], [], [], [], [], [], [], [], [], [], []

    SQL*Plus: Release 11.2.0.4.0 Production on 星期三 1月 1 08:53:48 2003 Copyright (c) 1982, 2013, Oracle. ...

  8. JAVA8 中 LocalDateTime的使用小栗子

    LocalDate givenDate = LocalDate.parse("2019-04-23",DateTimeFormatter.ofPattern("yyyy- ...

  9. mysql 处理utf8mb4的问题

    jdbc端的characterEncoding=utf8 无法改为utf8mb4 测试: create table utf8mb4_test (name1 varCHAR(20) CHARACTER ...

  10. C++实验三

    part2 graph.h #ifndef GRAPH_H#define GRAPH_H// 类Graph的声明 class Graph { public: Graph(char ch, int n) ...