Impala 简单使用指南

本文详细介绍了Impala作为大数据分析引擎的优点与缺点,包括其基于内存的高效计算、对多种文件格式的支持、与Hive的无缝集成等优势,以及对内存的高依赖性和不支持的特定Hive功能等限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Impala优点

 1. 基于内存运算,不需要讲中间结果写入磁盘,省去IO
 2. 无序转换成MapReduce程序,直接访问HDFS,Hbase中的数据进行作业调度,速度快
 3. 使用了支持data locality的IO调度机制:尽可能将数据和计算分配在同一台机器上,减少网络开销
 4. 支持各种文件格式,如TEXTFILE 、SEQUENCEFILE 、RCFile、Parquet。//不支持orc
 5. 可以访问hive的metastore,对hive数据直接做数据分析。

Impala缺点

 1. 对内存的依赖较大,且完全依赖于hive
 2. 当新的记录、文件被添加到hdfs中的数据目录时,该表需要被刷新

Impala架构

 1. Impalad:
		接收client的请求、Query执行并返回给中心协调节点;
		子节点上的守护进程,负责向statestore保持通信,汇报工作。
  2. Catalog:
		分发表的元数据信息到各个impalad中;
		接收来自statestore的所有请求。
  3. Statestore:
  		收集各个impalad进程的资源信息,各节点状态信息
impala-shell 小例子

在这里插入图片描述

Options:
  -h, --help            show this help message and exit
  -i IMPALAD, --impalad=IMPALAD
                        <host:port> of impalad to connect to
                        [default: hadoop106:21000]
  -q QUERY, --query=QUERY
                        Execute a query without the shell [default: none]
  -f QUERY_FILE, --query_file=QUERY_FILE
                        Execute the queries in the query file, delimited by ;
                        [default: none]
  -k, --kerberos        Connect to a kerberized impalad [default: False]
  -o OUTPUT_FILE, --output_file=OUTPUT_FILE
                        If set, query results are written to the given file.
                        Results from multiple semicolon-terminated queries
                        will be appended to the same file [default: none]
  -B, --delimited       Output rows in delimited mode [default: False]
  --print_header        Print column names in delimited mode when pretty-
                        printed. [default: False]
  --output_delimiter=OUTPUT_DELIMITER
                        Field delimiter to use for output in delimited mode
                        [default: \t]
  -s KERBEROS_SERVICE_NAME, --kerberos_service_name=KERBEROS_SERVICE_NAME
                        Service name of a kerberized impalad [default: impala]
  -V, --verbose         Verbose output [default: True]
  -p, --show_profiles   Always display query profiles after execution
                        [default: False]
  --quiet               Disable verbose output [default: False]
  -v, --version         Print version information [default: False]
  -c, --ignore_query_failure
                        Continue on query failure [default: False]
  -r, --refresh_after_connect
                        Refresh Impala catalog after connecting
                        [default: False]
  -d DEFAULT_DB, --database=DEFAULT_DB
                        Issues a use database command on startup
                        [default: none]
  -l, --ldap            Use LDAP to authenticate with Impala. Impala must be
                        configured to allow LDAP authentication.
                        [default: False]
  -u USER, --user=USER  User to authenticate with. [default: root]
  --ssl                 Connect to Impala via SSL-secured connection
                        [default: False]
  --ca_cert=CA_CERT     Full path to certificate file used to authenticate
                        Impala's SSL certificate. May either be a copy of
                        Impala's certificate (for self-signed certs) or the
                        certificate of a trusted third-party CA. If not set,
                        but SSL is enabled, the shell will NOT verify Impala's
                        server certificate [default: none]
  --config_file=CONFIG_FILE
                        Specify the configuration file to load options. File
                        must have case-sensitive '[impala]' header. Specifying
                        this option within a config file will have no effect.
                        Only specify this as a option in the commandline.
                        [default: /root/.impalarc]
  --live_summary        Print a query summary every 1s while the query is
                        running. [default: False]
  --live_progress       Print a query progress every 1s while the query is
                        running. [default: False]
  --auth_creds_ok_in_clear
                        If set, LDAP authentication may be used with an
                        insecure connection to Impala. WARNING: Authentication
                        credentials will therefore be sent unencrypted, and
                        may be vulnerable to attack. [default: none]
  --ldap_password_cmd=LDAP_PASSWORD_CMD
                        Shell command to run to retrieve the LDAP password
                        [default: none]
  --var=KEYVAL          Define variable(s) to be used within the Impala
                        session. [default: none]

常用Impala外部shell
  • -h :显示帮助命令
  • -i:指定连接的impalad守护进程的主机,端口号默认21000
  • -q: 运行一个 SQL命令
  • -f : 执行一个SQL脚本
  • -o : 将查询结果输出到指定的文件
  • -c : 查询过程中忽略失败sql ,继续执行其他SQL
  • -r : 建立连接后刷新Impala元数据
  • -p : 显示查询计划
  • -B : 去格式化输出
  • --output_delimiter=character : 指定分隔符
  • --print_header : 打印列名
Impala内部shell
  • -help: 显示帮助信息
  • shell:在不退出impala的情况下,执行hdfs 或 linux命令,去操作hdfs或linux文件系统
  • connect: 连接impalad主机
  • refresh : 增量刷新元数据信息
  • invalidate metadata: 全部刷新元数据库
Impala中不支持的hive相关操作
1.Impala基本数据类型不支持Binary
2.Impala创建数据库时不支持with dbproperties()
3. 对复杂数据类型支持不完全,//基本别使用
删除数据库
Impala不支持修改数据库语法,alter database
当数据库被使用时,无法进行删除/强制删除cascade
向表中导入数据时
不支持导入load local data ==>不支持导入本地数据
不支持export import
删除分区时
不支持一次性删除多个分区
查询
1.不支持cluster by ,distribute by,sort by //因为不会转化为mapreduce程序
2.Impala不支持分桶表
3.不支持collect_set(col)和explode(col) //数组类型支持的不行
Impala存储格式
不支持orc格式存储

总结:

除了上述与hive的不同,其他的语法和hive差不多...
手把手视频详细讲解项目开发全过程,需要的小伙伴自行百度网盘下载,链接见附件,永久有效。 课程简介 从零开始讲解大数据分布式计算的发展及Impala的应用场景,对比Hive、MapReduce、Spark等类似框架讲解内存式计算原理,基于Impala构建高性能交互式SQL分析平台 课程亮点 1,知识体系完备,从小白到大神各阶段读者均能学有所获。 2,生动形象,化繁为简,讲解通俗易懂。 3,结合工作实践及分析应用,培养解决实际问题的能力。 4,每一块知识点, 都有配套案例, 学习不再迷茫。 适用人群 1、对大数据感兴趣的在校生及应届毕业生。 2、对目前职业有进一步提升要求,希望从事大数据行业高薪工作的在职人员。 3、对大数据行业感兴趣的相关人员。 课程内容 第一章:内存式计算发展 1.分布式计算的发展 2.大数据分布式计算分类 3.Impala内存式计算诞生 第二章:Impala原理初探 1.Impala的设计思想 2.ImpalaHive之间的联系 3.Impala的分布式架构详解 4.Impala角色概念详解 第三章:基于Cloudera镜像部署分布式Impala 1.基于CDH5.14构建本地Yum镜像 2.企业级分布式Impala部署 3.企业级配置与Hadoop集成 4.企业级配置与Hive集成 5.主从架构及元数据服务管理 第四章:Impala企业实战开发案例 1.基于企业案例实现Impala集群管理 2.Impala最全SQL语法详解 3.实战开发Impala数据库与表管理 4.基于分析案例实现Impala数据管理 5.Impala与应用系统集成JDBC 第五章:Impala原理深入 1.Impala各角色功能详解 2.Impala任务提交原理 3.Impala元数据同步原理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值