欢迎投稿

今日深度:

Impala——1.概述,

Impala——1.概述,


标签(空格分隔): Impala


Impala是什么

官方论文

Impala对存储在HDFS,HBase的Apache Hadoop数据和存储在Amazon S3上的数据提供快速,交互式的SQL查询。 除了使用相同的统一存储平台外,Impala还使用了与Apache Hive相同的元数据、SQL语法(Hive SQL)、ODBC驱动程序和UI(Hue中的Impala查询UI)。
这为实时查询或面向批处理的查询提供了熟悉且统一的平台。
Impala是可用于查询大数据的工具的补充。Impala不会取代构建在MapReduce上的批处理框架,如Hive。 基于MapReduce构建的Hive和其他框架最适合
长时间运行的批处理作业,例如涉及批处理ETL类型的作业。。

使用Impala的好处

Impala提供:

  • 数据科学家和分析师熟悉的SQL界面。
  • 能够在Apache Hadoop中查询大量数据(“大数据”)。
  • 在集群环境中进行分布式查询,以便于扩展和使用具有成本效益的普通硬件。
  • 能够在不同组件之间共享数据文件,无需复制或导出/导入步骤; 例如,可以使用Pig写数据,使用Hive进行转换并使用Impala进行查询。 Impala可以读取和写入Hive表,也支持使用Impala进行简单的数据内部交换,以便对Hive生成的数据进行分析。
  • 用于大数据处理和分析的单一系统,因此客户可以避免昂贵的建模和ETL
    分析。

Impala如何工作在Hadoop上

Impala解决方案由以下组件组成:

  • 客户端Clients - 实体包括Hue,ODBC客户端,JDBC客户端和Impala Shell都可以与Impala进行交互。
    这些界面通常用于发出查询或完成管理任务,例如连接到Impala。
  • Hive Metastore - 存储有关Impala可用数据的信息。例如,Metastore让Impala知道可用的数据库以及这些数据库的结构。比如你可以通过Impala SQL语句创建、删除和更改schema,将数据加载到表中等等,相关的元数据更改都是通过Impala 1.2中引入的专用目录服务自动向所有Impala节点广播。
  • Impala - 此进程在DataNode上运行,协调和执行查询。Impala的每个实例都可以从Impala客户端接收、计划和协调查询。查询分布在Impala节点上,
    这些节点然后充当worker执行并行查询片段。
  • HBase和HDFS - 要查询的数据的存储。

使用Impala执行的查询处理如下:

  1. 用户应用程序通过ODBC或JDBC向Impala发送SQL查询,这些驱动提供标准化查询接口。用户应用程序可以连接到群集中的任何impalad。这个impalad成了查询的协调员。
  2. Impala解析查询并对其进行分析,以确定impalad实例需要执行哪些任务在整个集群。计划执行以实现最佳效率。
  3. 本地impalad实例访问HDFS和HBase等服务以提供数据。
  4. 每个impalad将数据返回给协调impalad,后者将这些结果发送给客户端client。

基本的Impala特性

Impala为以下方面提供支持:

  • Hive查询语言(HiveQL)的最常见SQL-92功能,包括SELECT,join和aggregate函数。
  • HDFS,HBase和Amazon Simple Storage System(S3)存储,包括:

    • HDFS文件格式:CSV,Parquet,Avro,SequenceFile和RCFile。
    • 压缩编解码器:Snappy,GZIP,Deflate,BZIP。
  • 通用数据访问接口,包括:

    • JDBC驱动程序。
    • ODBC驱动程序。
    • Hue Beeswax和Impala Query UI。
  • impala-shell命令行界面。
  • Kerberos身份验证。

www.htsjk.Com true http://www.htsjk.com/hive/25431.html NewsArticle Impala——1.概述, 标签(空格分隔): Impala Impala是什么 官方论文 Impala对存储在HDFS,HBase的Apache Hadoop数据和存储在Amazon S3上的数据提供快速,交互式的SQL查询。 除了使用相同的统一存...
评论暂时关闭