Hadoop-Impala学习笔记之管理
配置参数管理
待补充。。。
资源分配管理(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 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学习笔记之管理的更多相关文章
- Hadoop入门学习笔记---part3
2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...
- Hadoop入门学习笔记---part1
随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力, ...
- Hadoop入门学习笔记---part4
紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...
- Hadoop入门学习笔记---part2
在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...
- impala学习笔记
impala学习笔记 -- 建库 CREATE DATABASE IF NOT EXISTS database_name; -- 在HDFS文件系统中创建数据库,需要指定要创建数据库的位置. CREA ...
- Hadoop入门学习笔记(一)
Week2 学习笔记 Hadoop核心组件 Hadoop HDFS(分布式文件存储系统):解决海量数据存储 Hadoop YARN(集群资源管理和任务调度框架):解决资源任务调度 Hadoop Map ...
- MongoDB学习笔记—权限管理
1.MongoDB权限介绍 a 上篇文章中,我们在Linux下配置了MongoDB环境并且将其设置为服务随机器启动而启动,那么接下来这篇文章我们就来简单说一下MongoDB下对登录用户权限的管理. b ...
- Hadoop概括——学习笔记<一>
之前有幸在MOOC学院抽中小象学院hadoop体验课. 这是小象学院hadoop2.X概述第一章的笔记 第一章主要讲的是hadoop基础知识.老师讲的还是比较全面简单的,起码作为一个非专业码农以及数据 ...
- Hadoop概括——学习笔记<一>转
前言 第一章主要讲的是hadoop基础知识.老师讲的还是比较全面简单的,起码作为一个非专业码农以及数据库管理人员,也能狗大致了解其特点 首先是概括图(以hadoop2.0为例) 一.Hadoop基础 ...
- hadoop spark学习笔记
http://www.csdn.net/article/2015-06-08/2824889 hive:是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sq ...
随机推荐
- 更为复杂C程序的运行时结构
运行环境 win 10 企业版 1809 17763.194,MinGW V3.14 32位,Bundled V3.13.2,Bundled GDB V8.2. 在C语言中,栈的方向是从高地址向低地址 ...
- tomcat体系结构
总体架构解析 Server: 一个StandardServer类实例就表示一个Server容器,TOMCAT启动的时候首先会启动一个Server,一个Server包括多个Service Service ...
- python3 Django集成Ueditor富文本编辑器
1.下载 python3: https://github.com/twz915/DjangoUeditor3/ (直接下载zip) 2.解压,解压打开后找到DjangoUeditor将DjangoUe ...
- c#重命名文件,报错“System.NotSupportedException”类型的未经处理的异常在 mscorlib.dll 中发生”
修改远程服务器的文件名,报错“System.NotSupportedException”类型的未经处理的异常在 mscorlib.dll 中发生”,“System.NotSupportedExcept ...
- domain logic approaches
领域逻辑组织可以分为三种主要的模式:事务脚本(Transaction Script).领域模型(Domain Model)和表模块(Table Module)” 1.domain logic appr ...
- Python 字符串的索引
字符串是字符的有序集合,可以通过其位置来获得具体的元素.在 python 中,字符串中的字符是通过索引来提取的,索引从 0 开始. python 可以取负值,表示从末尾提取,最后一个为 -1,倒数第二 ...
- 1、Linux的安装及基本配置
1.安装 2.登录后开启root用户 https://www.cnblogs.com/suhfj-825/p/8611436.html https://www.cnblogs.com/suhfj-82 ...
- Angular7上手体验
准备工具 Node.js Angular requires Node.js version 8.x or 10.x. 查看当前你的node版本可以在CMD中输入 node -v npm -v 开发工具 ...
- Linux系统下的网络配置
一.修改配置文件,重启后设置不丢失 [Red Hat Linux/CentOS] 使用ifconfig查看使用的网口: [root@localhost /]# ifconfig 修改对应网口配置文件: ...
- JavaScript 对象部署 Iterator 接口
const name = { first:"hello", last:"world", fullname: "hello world" } ...