Impala-CDH550 译| Impala介绍

Posted 程序猿的搞笑生活

tags:

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

Impala介绍

       Impala提供了可以直接在HADOOPHDFSHBASE或者AmazonS3上快速地,交互地SQL查询。并且为了在使用统一存储平台上保持一致,ImpalaHIVE一样使用相同的元数据、SQL语法(HIVE SQL)、ODBC和用户接口(在HUE上的查询界面)。这样就会提供一个熟悉的、统一的平台去进行实时的或者批量的查询。

 

       Impala是大数据查询的一个工具。Impala不是要去替换基于MapReduce的批处理框架,比如HiveHive这些基于MapReduce的批处理框架最适合长时间的处理批量作业,比如涉及到提取、转换、加载(ETL)这种类型作业的批处理。

 

Impala的优势

       Impala可以提供:

     相似的数据科学和分析人员已经熟知的SQL接口

     能够在Hadoop中查询大量数据(big data)的能力

     在集群环境中分布式查询。(Distributed queries in acluster environment, for convenient scaling and to make use of cost-effectivecommodity hardware.

     有不需要复制、导入导出步骤就能分享不同组件之间数据文件的能力。例如:Pig写操作,Hive做转化,Impala查询。Impala可以读写Hive表,允许Impala做简单的数据交换,用于分析HIVE产生的数据。

     大数据的处理和分析使用单一系统,这样,用户就可以避免复杂的ETL过程和建模过程。(Single system for bigdata processing and analytics, so customers can avoid costly modeling and ETLjust for analytics.)

 

 

ImpalaCDH上是如何工作的

       下图为在Cloudera环境中,Impala的定位:

      


       Impala的解决方案由以下几个部分组成:

     客户端 – HueODBC客户端,JDBC客户端和Impala Shell等实体可以和Impala进行交互。这些接口通畅用于发出查询请求,或者完成管理任务,例如连接到Impala

     Hive Metastore – 存储着Impala可用数据的信息。例如,Impala通过元数据可以得知哪些数据库时可用的,这些数据库的结构是什么样的。当你通过Impalasql语句(声明)去创建、删除、修改对象结构、加载数据到表中等操作,元数据相关的改变会通过专门的目录服务(Catalog)自动地广播给所有的Impala节点。这个服务在Impala 1.2版本时引进。

     Impala – 是运行在DataNode上的进程,用于协调和执行SQL。每一个Impala实例都可以接受、计划和协调从客户端发来的查询。

     HBASEHDFS – 是被查询的数据存储。

 

下面是Impala对于查询执行的处理方式:

  1. Impala提供了标准的查询接口,应用通过ODBC或者JDBC发送SQL查询到Impala上。在集群中,应用可以连接任意一个Impalad进程,那么这个impalad进行就变成了这个查询的协调者。

  2. Impala验证SQL的语法正确性并分析和决定集群中的哪些Impalad实例需要执行哪些任务。

  3. HDFSHBASE等服务,给本地的impalad访问并提供数据。

  4. 每个Impalad实例都会给协调的那个Impalad返回数据,并且这个协调的Impalad再给客户端返回最终的结果数据。

 

Impala的主要特点

       Impala提供的支持有:

     HIVE查询语言(HiveQL)最常见的SQL-92特性,包括selectjoin和聚合函数等。

     HDFSHBASEAmazon Simple StorageSystem (S3),包括:

-  HDFS文件格式:TextParquetAvroSequenceFileRCFile的限定。

压缩格式:SnappyGZIPDeflateBZIP

     通用的数据访问接口包括:

-      JDBC驱动。

-      ODBC驱动。

-      Hue提供的Impala查询界面。

     impala-shell 控制台命令接口。

     Kerberos认证。

 

 


以上是关于Impala-CDH550 译| Impala介绍的主要内容,如果未能解决你的问题,请参考以下文章

与Tame Impala畅游时空坠入迷幻

客快物流大数据项目(七十):Impala入门介绍

Impala 介绍及部署优化

开发篇——Impala介绍

Impala基本架构介绍

从零自学Hadoop(23):Impala介绍及安装