hive2.x版本有什么新特性?

2020-09-22 23:06发布

hive2.x版本有什么新特性?和hive1.x版本有什么区别?

hive2.x版本有什么新特性?和hive1.x版本有什么区别?

4条回答
@CcCc
2楼 · 2020-09-22 23:27

Apache Hive2.x版本推出了多个闪亮的大特性,这些都值得Hive开发者为之振奋。

Apache Hive是建立在Hadoop上的开源数据仓库框架,它提供类SQL语言HQL,以便读取、写入和管理Hadoop中的海量数据集。

Apache Hive从第一个release版本到Hive1.2.1的一系列功能都已被很多开发者熟知,国内不少厂商也使用到Hive1.1或1.2版本的特性。但是在2016年之后逐渐发布的Apache Hive2.x版本中,社区推出了多个闪亮的大特性,这些都值得Hive开发者为之振奋。本文将为大家介绍Apache Hive2.x版本的四个重大特性。

我们先总体来看一下这四个特性是什么:

  • LLAP

  • 支持使用HPL/SQL的存储过程语言

  • 更智能的成本优化器CBO

  • 全面详尽的监控和诊断工具

下面我们再将这些特性展开介绍。

通过LLAP达到亚秒级查询,极大提升性能

Hive2.1推出的LLAP是下一代分布式计算架构,它能够智能地将数据缓存到多台机器内存中,并允许所有客户端共享这些缓存的数据,同时保留了弹性伸缩能力。通过LLAP(Live Long and Process),Hive2.1进行了极大的性能优化。在Hive2.x开启LLAP与Apache Hive1.x进行对比测试,其性能提升约25倍。

同样基于Hive on Tez的TPC-DS查询,做“Hive1.x+Tez”和“Hive2.1+Tez+LLAP”的性能对比测试,结果是后者性能提升到前者的25倍了。

LLAP提供了一个高级的执行模式,它启用一个长时存活的守护程序去和HDFS DataNode的直接交互,也是一个紧密集成的DAG框架。这个守护程序中加入了缓存、预抓取、查询过程和访问控制等功能。短小的查询由守护程序执行,大的重的操作由YARN的Container执行。下面是Hive+Tez与Hive + Tez + LLAP的任务运行原理图,其中Task可以是group by、shuffle join 等Hive Task 。

支持使用HPL/SQL的存储过程

Hive2.0.0推出的Hive Hybrid Procedural SQL On Hadoop (HPL/SQL) 是一个在Hive上执行过程SQL的工具,它可以表达复杂的业务规则。

HPL/SQL具备以下特点:

  • 支持使用变量、表达式、控制流声明、迭代来实现业务逻辑,支持使用异常处理程序和条件处理器来实现高级错误处理。

  • 使SQL-on-Hadoop更加动态,即:支持使用高级表达式、各种内置函数,基于用户配置、先前查询的结果、来自文件或非Hadoop数据源的数据,即时动态地生成SQL条件。

  • 利用已有的存储过程SQL技能:大量的数据库开发者和数据分析师都熟悉传统数据库的存储过程语言,HPL/SQL有利于这部分技能的充分利用。相较于Python、Java或者Linux脚本,HPL/SQL让更多的BI分析师和开发者都能使用上Hadoop。

  • 让传统ETL开发更高效,因为它提供函数和声明。

  • 为BI/SQL开发者提供更高可读性和可维护性。

  • 方便集成和支持多种类型的数据仓库,即:可以实现单个脚本来处理包括Hadoop、RDBMS、NoSQL等多个系统的数据,开发者只需要考虑各个系统负载。

  • 广泛的兼容性和可移植性。

总的来说,Hive支持HPL/SQL是广大BI/SQL开发者的一大福音,通过Hive我们使用存储过程访问Hadoop数据了。

更智能的成本优化器CBO

Hive2.0开始持续不断地优化成本优化器CBO,尤其是在BI业务关注的TPC-DS查询上。

提供全面详尽的监控和诊断工具

可以通过新的Hive Server2 Web UI,LLAP Web UI和Tez Web UI查看Hive相关的HQL查询以及关联的作业状态和日志。丰富了Hive用户的运维和排错的手段。

当然,Hive2.x除了以上新特性外,还有其他的优化特性在持续不断的更新,例如Hive-on-Spark优化、事务ACID优化等等。


无需指教
3楼 · 2020-09-23 08:37

Apache Hive2.x版本推出了多个闪亮的大特性,这些都值得Hive开发者为之振奋。

Apache Hive是建立在Hadoop上的开源数据仓库框架,它提供类SQL语言HQL,以便读取、写入和管理Hadoop中的海量数据集。

Apache Hive从第一个release版本到Hive1.2.1的一系列功能都已被很多开发者熟知,国内不少厂商也使用到Hive1.1或1.2版本的特性。但是在2016年之后逐渐发布的Apache Hive2.x版本中,社区推出了多个闪亮的大特性,这些都值得Hive开发者为之振奋。本文将为大家介绍Apache Hive2.x版本的四个重大特性。

我们先总体来看一下这四个特性是什么:

  • LLAP

  • 支持使用HPL/SQL的存储过程语言

  • 更智能的成本优化器CBO

  • 全面详尽的监控和诊断工具

下面我们再将这些特性展开介绍。

通过LLAP达到亚秒级查询,极大提升性能

Hive2.1推出的LLAP是下一代分布式计算架构,它能够智能地将数据缓存到多台机器内存中,并允许所有客户端共享这些缓存的数据,同时保留了弹性伸缩能力。通过LLAP(Live Long and Process),Hive2.1进行了极大的性能优化。在Hive2.x开启LLAP与Apache Hive1.x进行对比测试,其性能提升约25倍。

同样基于Hive on Tez的TPC-DS查询,做“Hive1.x+Tez”和“Hive2.1+Tez+LLAP”的性能对比测试,结果是后者性能提升到前者的25倍了。

LLAP提供了一个高级的执行模式,它启用一个长时存活的守护程序去和HDFS DataNode的直接交互,也是一个紧密集成的DAG框架。这个守护程序中加入了缓存、预抓取、查询过程和访问控制等功能。短小的查询由守护程序执行,大的重的操作由YARN的Container执行。下面是Hive+Tez与Hive + Tez + LLAP的任务运行原理图,其中Task可以是group by、shuffle join 等Hive Task 。

支持使用HPL/SQL的存储过程

Hive2.0.0推出的Hive Hybrid Procedural SQL On Hadoop (HPL/SQL) 是一个在Hive上执行过程SQL的工具,它可以表达复杂的业务规则。

HPL/SQL具备以下特点:

  • 支持使用变量、表达式、控制流声明、迭代来实现业务逻辑,支持使用异常处理程序和条件处理器来实现高级错误处理。

  • 使SQL-on-Hadoop更加动态,即:支持使用高级表达式、各种内置函数,基于用户配置、先前查询的结果、来自文件或非Hadoop数据源的数据,即时动态地生成SQL条件。

  • 利用已有的存储过程SQL技能:大量的数据库开发者和数据分析师都熟悉传统数据库的存储过程语言,HPL/SQL有利于这部分技能的充分利用。相较于Python、Java或者Linux脚本,HPL/SQL让更多的BI分析师和开发者都能使用上Hadoop。

  • 让传统ETL开发更高效,因为它提供函数和声明。

  • 为BI/SQL开发者提供更高可读性和可维护性。

  • 方便集成和支持多种类型的数据仓库,即:可以实现单个脚本来处理包括Hadoop、RDBMS、NoSQL等多个系统的数据,开发者只需要考虑各个系统负载。

  • 广泛的兼容性和可移植性。

总的来说,Hive支持HPL/SQL是广大BI/SQL开发者的一大福音,通过Hive我们使用存储过程访问Hadoop数据了。

更智能的成本优化器CBO

Hive2.0开始持续不断地优化成本优化器CBO,尤其是在BI业务关注的TPC-DS查询上。

提供全面详尽的监控和诊断工具

可以通过新的Hive Server2 Web UI,LLAP Web UI和Tez Web UI查看Hive相关的HQL查询以及关联的作业状态和日志。丰富了Hive用户的运维和排错的手段。

当然,Hive2.x除了以上新特性外,还有其他的优化特性在持续不断的更新,例如Hive-on-Spark优化、事务ACID优化等等


我想吃肉
4楼 · 2020-09-23 09:32

hiveserver2是hiveserver的改进版本,相比而言,hiveserver2更加稳定,支持的功能更多。 直接使用hiveserver2就可以了。与 Hive LLAP 的交互查询。LLAP 是在 Hive 2.0 中引入的,在 2.1 中得到改进,性能比 Hive 1 提升 25 倍之多.

更可靠的 SQL ACID 事务支持,修复了超过 60 个稳定性相关问题.

通过更智能的 CBO 使得 ETL 速度提升 2 倍,更快的类型转换以及动态分区优化.程序化的 SQL 支持,简化 EDW 解决方案的移植.支持文本文件的向量化,引入一个选项用于快速分析,无需 ETL.全新的诊断和监控工具,包含全新 HiveServer2 UI, 全新 LLAP UI  以及改进了 Tez UI.总的来说,2.1 版本在 2.0 的基础上包含超过 2100 项新特性、提升和 Bug 修复。

创新速度惊人,保持持续的增长势头。
所以直接 用2.x就行了。


我的网名不再改
5楼 · 2020-09-23 15:34

Apache Hive2.x版本推出了多个闪亮的大特性,这些都值得Hive开发者为之振奋。

Apache Hive是建立在Hadoop上的开源数据仓库框架,它提供类SQL语言HQL,以便读取、写入和管理Hadoop中的海量数据集。

Apache Hive从第一个release版本到Hive1.2.1的一系列功能都已被很多开发者熟知,国内不少厂商也使用到Hive1.1或1.2版本的特性。但是在2016年之后逐渐发布的Apache Hive2.x版本中,社区推出了多个闪亮的大特性,这些都值得Hive开发者为之振奋。本文将为大家介绍Apache Hive2.x版本的四个重大特性。

我们先总体来看一下这四个特性是什么:

  • LLAP

  • 支持使用HPL/SQL的存储过程语言

  • 更智能的成本优化器CBO

  • 全面详尽的监控和诊断工具

下面我们再将这些特性展开介绍。

通过LLAP达到亚秒级查询,极大提升性能

Hive2.1推出的LLAP是下一代分布式计算架构,它能够智能地将数据缓存到多台机器内存中,并允许所有客户端共享这些缓存的数据,同时保留了弹性伸缩能力。通过LLAP(Live Long and Process),Hive2.1进行了极大的性能优化。在Hive2.x开启LLAP与Apache Hive1.x进行对比测试,其性能提升约25倍。

同样基于Hive on Tez的TPC-DS查询,做“Hive1.x+Tez”和“Hive2.1+Tez+LLAP”的性能对比测试,结果是后者性能提升到前者的25倍了。

LLAP提供了一个高级的执行模式,它启用一个长时存活的守护程序去和HDFS DataNode的直接交互,也是一个紧密集成的DAG框架。这个守护程序中加入了缓存、预抓取、查询过程和访问控制等功能。短小的查询由守护程序执行,大的重的操作由YARN的Container执行。下面是Hive+Tez与Hive + Tez + LLAP的任务运行原理图,其中Task可以是group by、shuffle join 等Hive Task 。

支持使用HPL/SQL的存储过程

Hive2.0.0推出的Hive Hybrid Procedural SQL On Hadoop (HPL/SQL) 是一个在Hive上执行过程SQL的工具,它可以表达复杂的业务规则。

HPL/SQL具备以下特点:

  • 支持使用变量、表达式、控制流声明、迭代来实现业务逻辑,支持使用异常处理程序和条件处理器来实现高级错误处理。

  • 使SQL-on-Hadoop更加动态,即:支持使用高级表达式、各种内置函数,基于用户配置、先前查询的结果、来自文件或非Hadoop数据源的数据,即时动态地生成SQL条件。

  • 利用已有的存储过程SQL技能:大量的数据库开发者和数据分析师都熟悉传统数据库的存储过程语言,HPL/SQL有利于这部分技能的充分利用。相较于Python、Java或者Linux脚本,HPL/SQL让更多的BI分析师和开发者都能使用上Hadoop。

  • 让传统ETL开发更高效,因为它提供函数和声明。

  • 为BI/SQL开发者提供更高可读性和可维护性。

  • 方便集成和支持多种类型的数据仓库,即:可以实现单个脚本来处理包括Hadoop、RDBMS、NoSQL等多个系统的数据,开发者只需要考虑各个系统负载。

  • 广泛的兼容性和可移植性。

总的来说,Hive支持HPL/SQL是广大BI/SQL开发者的一大福音,通过Hive我们使用存储过程访问Hadoop数据了。

更智能的成本优化器CBO

Hive2.0开始持续不断地优化成本优化器CBO,尤其是在BI业务关注的TPC-DS查询上。

提供全面详尽的监控和诊断工具

可以通过新的Hive Server2 Web UI,LLAP Web UI和Tez Web UI查看Hive相关的HQL查询以及关联的作业状态和日志。丰富了Hive用户的运维和排错的手段。

当然,Hive2.x除了以上新特性外,还有其他的优化特性在持续不断的更新,例如Hive-on-Spark优化、事务ACID优化等等。


相关问题推荐

  • 回答 10

    创建test文件夹hadoop fs -mkdir /test

  • 回答 7

    Hadoop的三大核心组件分别是:1、HDFS(Hadoop Distribute File System):hadoop的数据存储工具。2、YARN(Yet Another Resource Negotiator,另一种资源协调者):Hadoop 的资源管理器。3、Hadoop MapReduce:分布式计算框架。HDFS是一个高度容错性的系统,适合部...

  • 回答 18

    hbase依靠HDFS来存储底层数据。Hadoop分布式文件系统(HDFS)为HBase提供了高可靠性的底层存储支持,HBase中的所有数据文件都存储在Hadoop HDFS文件系统上。

  • 回答 24

    HBase分布式数据库具有如下的显著特点:容量大:HBase分布式数据库中的表可以存储成千上万的行和列组成的数据。面向列:HBase是面向列的存储和权限控制,并支持独立检索。列存储,其数据在表中是按照某列存储的,根据数据动态的增加列,并且可以单独对列进行...

  • 回答 19

    解决问题的层面不一样首先,Hadoop和Apache Spark两者都是大数据框架,但是各自存在的目的不尽相同。Hadoop实质上更多是一个分布式数据基础设施: 它将巨大的数据集分派到一个由普通计算机组成的集群中的多个节点进行存储,意味着您不需要购买和维护昂贵的服务...

  • 回答 14

    1、HBase写快读慢,HBase的读取时长通常是几毫秒,而Redis的读取时长通常是几十微秒。性能相差非常大。2、HBase和Redis都支持KV类型。但是Redis支持List、Set等更丰富的类型。3、Redis支持的数据量通常受内存限制,而HBase没有这个限制,可以存储远超内存大小...

  • 回答 15

    列式存储格式是指以列为单位存储数据的数据存储格式,相比于传统的行式存储格式,它具有压缩比高、读I/O少(此处指可避免无意义的读I/O)等优点,目前被广泛应用于各种存储引擎中。对于HBase而言,它并不是一个列式存储引擎,而是列簇式存储引擎,即同一列簇中...

  • 回答 14

    一、简单理解Hadoop是一个大象:一个hadoop集群主要包含三个主要的模块:Mapreduce,hdfs,yarn。mapreduce是一个分离在合并的计算框架,注意他不是一个集群,而是一个编程框架。hdfs是一个分布式文件系统,是一个分布式集群,用于存放数据。yarn集群是负责集群...

  • 回答 12

    01 网络公开数据集02 数据报采集03 网络爬虫04 日志收集05 社会调查06 业务数据集07 埋点采集08 传感器采集09 数据交易平台10 个人数据收集

  • 回答 9

    1 Hadoop 各个目录的解释bin:Hadoop管理脚本和使用脚本所在目录, sbin目录下的脚本都是使用此目录下的脚本实现的。etc:Hadoop的所有配置文件所在的目录,所有hadoop的配置在etc/hadoop目录下include:对外提供的库的头文件lib :对外提供的动态编程库和静态...

  • 回答 4

    HDFS存储机制,包括HDFS的写入过程和读取过程两个部分: 1、写入过程:  1)客户端向namenode请求上传文件,namenode检查目标文件是否已存在,父目录是否存在。2)namenode返回是否可以上传。3)客户端请求第一个 block上传到哪几个datanode服务器上。4)nam...

  • Shuffle 发生在哪里?2021-04-28 20:11
    回答 4

    adoop核心:MapReduce原理。 MR的核心是shuffle,被称为奇迹发生的地方。 shuffle,弄乱,洗牌的意思。partition 分区,sort 排序,spill溢出,disk 磁盘下面是官方对shuffle的配图: phase 阶段,fetch 最终,merge 合并...

  • 回答 2

    Shuffle阶段分为两部分:Map端和Reduce端。一 map端shuffle过程;1-内存预排序:默认每个map有100M内存进行预排序(为了效率),超过阈值,会把内容写到磁盘;    此过程使用快速排序算法;2-根据key和reducer的数量进行分区和排序;首先根据数据所属的Parti...

  • 回答 3

    大数据时代需要1存储大量数据2快速的处理大量数据3从大量数据中进行分析 

  • Hadoop有哪几种模式?2021-04-27 20:20
    回答 3

    hadoop的四种模式。1、本地模式:本地模式就是解压源码包,不需要做任何的配置。通常用于开发调试,或者感受hadoop。2、伪分布模式:在学习当中一般都是使用这种模式,伪分布模式就是在一台机器的多个进程运行多个模块。虽然每一个模块都有相应的进程,但是却...

  • 回答 1

    进入和退出安全模式 [root@localhost bin]# ./hdfs dfsadmin -safemode enter15/08/03 07:26:24 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where ......

没有解决我的问题,去提问