新特性官方:http://www.cloudera.com/content/cloudera-content/cloudera-docs/CDH5/latest/Impala/Cloudera-Impala-Release-Notes/cirn_new_features.html?scroll=new_features
- 十进制数据类型允许您存储fixed-precision值,使用货币或其他分数值,主要使代表值准确,避免舍入误差。此功能包括增强内置函数,数值常量和算术表达式。详情查看 DECIMAL Data Type (CDH 5 Only) 其语法为:
DECIMAL[(precision[,scale])]
- CDH5 中,impala 可以使用 HDFS 缓存特性加快频繁访问的数据的速度,减少 cpu 使用率。当数据缓存到 hdfs cache 中时,impala 可以直接从缓存中读取数据而不需要读磁盘并且减少额外的内存拷贝。
- Centralized Cache Management in HDFS
- impala 中使用 HDFS Caching,参考 sing HDFS Caching with Impala (CDH 5 Only)
- Impala 可以使用基于 Sentry 的授权策略,详细说明可以参考:Enabling Sentry Authorization for Impala
- Impala 支持其他 hadoop 组件创建的 Parquet 格式的文件,你可以在建表语句中指定 Parquet 格式,Impala 中创建 parquet 格式的表,请参考:Using the Parquet File Format with Impala Tables
- ORDER BY 查询不再要求必须带 limit 子句,如果需要排序的结果集的大小超过了内存限制,则会使用临时的磁盘空间用于排序,ORDER BY 语法为:
ORDER BY col1 [, col2 ...] [ASC | DESC] [NULLS FIRST | NULLS LAST]
,详细说明见:ORDER BY Clause - LDAP 连接可以使用 SSL 或者 TLS 加密,详细说明参考:Enabling LDAP Authentication for Impala
- 增加以下内建函数:
EXTRACT()
,用于从一个 TIMESTAMP 字段返回一个 date 或者 time 的字段,详细说明参考:Date and Time FunctionsTRUNC()
,用于将一个 date/time 类型的字段裁剪为一个特定格式的值,如年、月、日、小时等等,详细说明参考:Date and Time FunctionsADD_MONTHS()
ROUND()
,对 DECIMAL 类型的值四舍五入,详细说明参考:Mathematical FunctionsSTDDEV
,STDDEV_SAMP
,STDDEV_POP
Functions 和VARIANCE
,VARIANCE_SAMP
,VARIANCE_POP
FunctionsMAX_INT()
、MIN_SMALLINT()
等,用于判断数组是否超过最大值和最小值。IS_INF()
和IS_NAN()
,用于判断是否为数值。
SHOW PARTITIONS
语句用于查看分区情况,详细说明参考:SHOW Statement- 添加 impalad 进程设置参数让你设置所有查询的初始化内存值,详细说明参考:Using YARN Resource Management with Impala (CDH 5 Only)
- CDH 5.1 中可以利用 Llama 高可用的特性,详细说明参考:Using Impala with a Llama High Availability Configuration
CREATE TABLE
语句支持STORED AS AVRO
,详细说明参考:Using the Avro File Format with Impala Tables- impala-shell 中添加
SUMMARY
命令用于查看摘要信息,详细说明参考:Using the SUMMARY Report for Performance Tuning COMPUTE STATS
语句性能改进:NDV
函数通过生成本地代码加快速度- 在 1.4.0 或者更高版本,不再统计 NULL 值,其值被看做为 -1,详细说明参考:How Impala Uses Statistics for Query Optimization
- 分区性能改进。之前只能处理3000个分区,现在没有这个限制,详细说明参考:Partition Pruning for Queries
- impala-shell 支持 UTF-8 字符的输入和输出,可以通过参数
--strict_unicode
控制是否忽略不合法的 Unicode 字符。
impala1.4.0 rpm包下载地址:http://archive.cloudera.com/impala/redhat/6/x86_64/impala/1.4.0/RPMS/x86_64/
impala1.4.0 源码包下载地址:http://archive.cloudera.com/cdh5/cdh/5/