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 ...
随机推荐
- 使用DevExpress.XtraTabbedMdi.XtraTabbedMdiManager控件来加载MDI窗体
使用DevExpress.XtraTabbedMdi.XtraTabbedMdiManager控件来加载MDI窗体 [csharp] view plaincopyprint? <SPAN ...
- 使用OMS查询Api Management的调用日志
打开Azure portal,找到要操作的Api Management 实例,点击菜单Monitoring/Logs Schema Tab页搜索"diagnostics",选中Lo ...
- cmd中mysql主键id自增,在添加信息时发生错误,再次成功添加时,id已经跳过错误的信息继续自增。
id 自增,在往这个表里添加信息时 发生错误,再次添加 id数值已经跳过之前
- Spark入门到精通--(第九节)环境搭建(Hive搭建)
上一节搭建完了Hadoop集群,这一节我们来搭建Hive集群,主要是后面的Spark SQL要用到Hive的环境. Hive下载安装 下载Hive 0.13的软件包,可以在百度网盘进行下载.链接: h ...
- NAT(Network Address Translation)
一.概述 NAT英文全称是“Network Address Translation”,中文意思是“网络地址转换”,它是一个IETF(Internet Engineering Task Force, I ...
- 搭建docker私有仓库
保存镜像的地方成为仓库(registry).目前有2种仓库:公共仓库和私有仓库. 最方便的是使用公共仓库上传和下载镜像,下载不需要注册,上传需要到公共仓库注册.公共仓库网站:https://hub.d ...
- 《图解HTTP》读书笔记(六:HTTP状态码)
状态码的职责是当客户端向服务器端发送请求时, 描述返回的请求结果. 借助状态码, 用户可以知道服务器端是正常处理了请求, 还是出现了错误. 状态码类别 HTTP状态码由三个十进制数字组成,第一个十进制 ...
- tomcat部署公共jar包
如果每次打war包都要把所有依赖jar放在WEB-INF/lib下,是很傻的做法,war包很大,也浪费内存.参考之前jboss上部署公共jar的经验,tomcat实现起来想来也不困难. 1. 参照ma ...
- 使用TCP通信文件上传
客服端读取本地文件,吧文件上传到服务器,服务器在吧上传的文件保存到服务器硬盘上方法分析1:客户端使用本地字节输入流读取要上传的文件 2:客户端使用网络字节输出流,吧读取到的文件上传到服务器 3:服务器 ...
- iphone X 底部留白 之 ionic3 项目
在全局css中加入 @media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit- ...