impala

Posted nacyswiss

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了impala相关的知识,希望对你有一定的参考价值。

一、impala基本介绍?  所有的计算都是基于内存来的,官方推荐每台服务器的内存最少128G起

impala是cloudera提供的一款高效率的sql查询工具,提供实时的查询效果,官方测试性能比hive块3到10倍,其sql查询比sparkSQL还要快,号称是当前大数据领域最快的查询sql工具。

impala是参照谷歌的新三篇论文CaffeinePregelDremel)当中Dremel实现而来其中旧三篇论文分别是(BigTableGFSMapReduce分别对应我们即将学的HBase和已经学过的HDFS以及MapReduce

impala是基于hive并使用内存进行计算,兼顾数据仓库,具有实时,批处理,多并发等优点。

二、impala与hive的关系?

impala是基于hive的大数据分析查询引擎,直接使用hive的元数据库metadata,意味着impala元数据都存储在hive的metadata当中,并且impala兼容hive的绝大多数sql语法。所以需要安装impala的话,必须先安装hive,保证hive安装成功,并且还需要启动hive的metastore服务。

impala支持95%以上的所有的hive的语法,可以无缝的兼容hive的绝大多数的语法
基本上所有的hive的任务都可以无缝迁移到impala上面来

三、impala的优点和缺点?

优点:

1、impala比较快,非常快,特别快,因为所有的计算都可以放入内存当中进行完成,只要你内存足够大。

2、摈弃了MR的计算,改用C++来实现,有针对性的硬件优化。

3、具有数据仓库的特性,对hive的原有数据做数据分析。

4、支持ODBC、JDBC远程访问。

缺点:

1、基于内存计算,对内存依赖性较大。

2、改用C++编写,意味着维护难度增大。

3、基于hive、与hive共存亡、紧耦合。

4、稳定性不如hive,不存在数据丢失的情况。

四、impala的架构以及查询计划?

技术图片

 

以上是关于impala的主要内容,如果未能解决你的问题,请参考以下文章

从多个分区读取多个镶木地板文件

impala基本命令操作和Python调用样例