什么是Impala?

Impala是用于处理存储在Hadoop集群中的大量数据的MPP(大规模并行处理)SQL查询引擎。 它是一个用C ++和Java编写的开源软件。 与其他Hadoop的SQL引擎相比,它提供了高性能和低延迟。

换句话说,Impala是性能最高的SQL引擎(提供类似RDBMS的体验),它提供了访问存储在Hadoop分布式文件系统中的数据的最快方法。

为什么选择Impala?

Impala通过使用标准组件(如HDFS,HBase,Metastore,YARN和Sentry)将传统分析数据库的SQL支持和多用户性能与Apache Hadoop的可扩展性和灵活性相结合。使用Impala,与其他SQL引擎(如Hive)相比,用户可以使用SQL查询以更快的方式与HDFS或HBase进行通信。

Impala可以读取Hadoop使用的几乎所有文件格式,如Parquet,Avro,RCFile。

Impala将相同的元数据,SQL语法(Hive SQL),ODBC驱动程序和用户界面(Hue Beeswax)用作Apache Hive,为面向批量或实时查询提供熟悉且统一的平台。

与Apache Hive不同,Impala不基于MapReduce算法。 它实现了一个基于守护进程的分布式架构,它负责在同一台机器上运行的查询执行的所有方面。

因此,它减少了使用MapReduce的延迟,这使Impala比Apache Hive快。

Impala的优点

以下是Cloudera Impala的一些值得注意的优点的列表。使用impala,您可以使用传统的SQL知识以极快的速度处理存储在HDFS中的数据。

由于在数据驻留(在Hadoop集群上)时执行数据处理,因此在使用Impala时,不需要对存储在Hadoop上的数据进行数据转换和数据移动。

使用Impala,您可以访问存储在HDFS,HBase和Amazon s3中的数据,而无需了解Java(MapReduce作业)。您可以使用SQL查询的基本概念访问它们。

为了在业务工具中写入查询,数据必须经历复杂的提取 - 变换负载(ETL)周期。但是,使用Impala,此过程缩短了。加载和重组的耗时阶段通过新技术克服,如探索性数据分析和数据发现,使过程更快。

Impala正在率先使用Parquet文件格式,这是一种针对数据仓库场景中典型的大规模查询进行优化的柱状存储布局。

Impala的功能

以下是cloudera Impala的功能 -Impala可以根据Apache许可证作为开源免费提供。

Impala支持内存中数据处理,即,它访问/分析存储在Hadoop数据节点上的数据,而无需数据移动。

您可以使用Impala使用类SQL查询访问数据。

与其他SQL引擎相比,Impala为HDFS中的数据提供了更快的访问。

使用Impala,您可以将数据存储在存储系统中,如HDFS,Apache HBase和Amazon s3。

您可以将Impala与业务智能工具(如Tableau,Pentaho,Micro策略和缩放数据)集成。

Impala支持各种文件格式,如LZO,序列文件,Avro,RCFile和Parquet。

Impala使用Apache Hive的元数据,ODBC驱动程序和SQL语法。

关系数据库和Impala

Impala使用类似于SQL和HiveQL的Query语言。 下表描述了SQL和Impala查询语言之间的一些关键差异。Impala关系型数据库

Impala使用类似于HiveQL的类似SQL的查询语言。关系数据库使用SQL语言。

在Impala中,您无法更新或删除单个记录。在关系数据库中,可以更新或删除单个记录。

Impala不支持事务。关系数据库支持事务。

Impala不支持索引。关系数据库支持索引。

Impala存储和管理大量数据(PB)。与Impala相比,关系数据库处理的数据量较少(TB)。

Hive,Hbase和Impala

虽然Cloudera Impala使用与Hive相同的查询语言,元数据和用户界面,但在某些方面它与Hive和HBase不同。 下表介绍了HBase,Hive和Impala之间的比较分析。HBaseHiveImpala

HBase是基于Apache Hadoop的宽列存储数据库。 它使用BigTable的概念。Hive是一个数据仓库软件。 使用它,我们可以访问和管理基于Hadoop的大型分布式数据集。Impala是一个管理,分析存储在Hadoop上的数据的工具。

HBase的数据模型是宽列存储。Hive遵循关系模型。Impala遵循关系模型。

HBase是使用Java语言开发的。Hive是使用Java语言开发的。Impala是使用C ++开发的。

HBase的数据模型是无模式的。Hive的数据模型是基于模式的。Impala的数据模型是基于模式的。

HBase提供Java,RESTful和Thrift API。Hive提供JDBC,ODBC,Thrift API。Impala提供JDBC和ODBC API。

支持C,C#,C ++,Groovy,Java PHP,Python和Scala等编程语言。支持C ++,Java,PHP和Python等编程语言。Impala支持所有支持JDBC / ODBC的语言。

HBase提供对触发器的支持。Hive不提供任何触发器支持。Impala不提供对触发器的任何支持。

所有这三个数据库 -是NOSQL数据库。

可用作开源。

支持服务器端脚本。

按照ACID属性,如Durability和Concurrency。

使用分片进行分区。

Impala的缺点

使用Impala的一些缺点如下 -Impala不提供任何对序列化和反序列化的支持。

Impala只能读取文本文件,而不能读取自定义二进制文件。

每当新的记录/文件被添加到HDFS中的数据目录时,该表需要被刷新。

java impala_impala 概述相关推荐

  1. 第1章 Java语言概述

    第1章 Java语言概述 声明 0. Java语言应用场景 1. 软件开发介绍 2. 计算机编程语言介绍 3. Java语言概述 4. Java程序运行机制及运行过程 5. Java的环境搭建  5. ...

  2. Java语言概述与简单程序

    Java语言概述 1. Java语言平台 1,J2EE(Java 2 Platform Enterprise Edition) 企业版 : 开发企业环境下的应用程序,主要针对web程序开发 2,J2S ...

  3. Java NIO系列教程(一) Java NIO 概述

    一.阻塞IO与非阻塞IO 阻塞IO: 通常在进行同步I/O操作时,如果读取数据,代码会阻塞直至有 可供读取的数据.同样,写入调用将会阻塞直至数据能够写入.传统的Server/Client模式会基于TP ...

  4. [JAVA_开课吧资源]第一周 Java语言概述、Java语言基础

    主题一 Java语言概述 » JDK介绍及其基本组件 Sun公司利用Java开发工具箱(Java Development Toolkit ,JDK)发布Java的各个版本.JDK由开发和测试Java程 ...

  5. java 语言概述(零)

    2019独角兽企业重金招聘Python工程师标准>>> java 语言概述 1.软件:系统软件 vs 应用软件 2.语言的分类:第一代:机器语言 第二代:汇编语言 第三代:高级语言( ...

  6. 第一章:Java语言概述

    Java语言的诞生.特点 java之父Jgosling团队在开发"Green"项目时,发现C缺少垃圾回收系统,还有可移植的安全性.分布程序设计.和多线程功能.最后,他们想要一种易于 ...

  7. Java继承概述以及Java继承案例和继承的好处

    Java继承概述 1.多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些相同属性和行为,只要继承那个类即可. 2.在Java中通过extends关键字可以实现类与类的 ...

  8. review_core_basic_java(1)java程序设计概述

    [0]README 1)本文部分文字描述转自 "core java volume 1" 旨在review "review_core_basic_java(1)java程序 ...

  9. java程序可分为两个基本文件_1 Java语言概述答案

    第1章 Java语言概述 一.判断题 1.Java语言是一种解释执行的语言,这个特点是Java语言的一个缺点.(F)2.Java源程序的文件名一定要与文件中某个类的名称一致.(T) 3.Java语言采 ...

最新文章

  1. centos7ftp服务器的搭建
  2. 喜得千金,升级做爸爸喽
  3. 在线生成 CSS3 的工具
  4. freeRtos学习笔记 (7)信号量
  5. 【渝粤题库】陕西师范大学400010 当代西方社会思潮评析 作业(专升本)
  6. USB Camera摄像头(UVC 与 gspca)
  7. 数据结构之树和二叉树的应用:二叉排序树(BST)
  8. L2-4 哲哲打游戏 (25 分)
  9. adb命令安装apk到手机_安装在手机上自动化测试apk-傻猴
  10. php 变量源码,PHP源码中变量存储方式
  11. 5元以下纯铜小摆件_【拍4斤发5斤】早餐饼干网红早餐代餐曲奇酥性小饼干零食500g6元优惠券券后价5.8元...
  12. 德国黑客使用租用的计算机资源攻击散列算法
  13. 管理新语:新员工进来,竟然连起码的技能培训都没有
  14. 软件测试和web前端该怎么选择
  15. FPGA-VGA驱动
  16. 校园学生疫情防范监控小程序 毕业设计-附源码281444
  17. 商品模块的业务流程图
  18. Windows中的键盘快捷方式大全
  19. 把计算机过程描述,计算机解决问题的过程
  20. uniapp自定义导航栏的开发

热门文章

  1. python 模块(Module)和包
  2. R语言-向量自回归模型VAR的实现
  3. github关联域名,创建个人网站教程终结篇
  4. 入门科普,围绕JVM的各种外挂技术
  5. include、ViewStub、merge优化布局标签
  6. RuoYi-Vue————权限管理
  7. 大数据分析:Java 下降,华为平均月薪高达 35K,分析 89 万招聘数据有这些发现!
  8. “衣+”挑战百度 图像识别搜索引擎
  9. 开源的ResearchKit:苹果将如何颠覆未来医疗?
  10. 管中窥豹,物联网之我见