`
smileyboy2009
  • 浏览: 15410 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

hive 3.x 功能介绍

阅读更多

Apache Hive 3表
使用Hive,您可以创建托管表或外部表。

在Hive 3中,Hive可以完全控制托管表。只有通过Hive才能访问和更改托管表中的数据。除临时表外,托管表是具有ACID(原子性,一致性,隔离性和持久性)属性的事务表。由于Hive可以完全控制托管表,因此Hive可以广泛地优化这些表。如果您需要绕过Hive直接在文件系统上访问数据,则可以使用外部表或存储处理程序,例如Druid或HBase。

以下矩阵列出了您可以使用Hive创建的表类型,是否支持ACID属性,所需的存储格式和密钥操作。

表类型 酸 文件格式 插入 更新/删除
管理:CRUD交易 是 ORC 是 是
托管:仅插入事务 是 任何 是 没有
管理:临时 没有 任何 是 没有
外部 没有 任何 是 是
托管表存储类型默认为优化行列(ORC)。如果通过在表创建期间未指定任何存储来接受默认值,或者如果指定ORC存储,则结果是具有插入,更新和删除(CRUD)功能的ACID表。如果指定任何其他存储类型,例如text,CSV,AVRO或JSON,则结果是仅插入ACID表。您无法更新或删除表中的列。

下表和后续部分介绍了托管(事务)表和外部表之间的其他差异:
表类型 安全 Spark访问 优化
管理(交易) 仅限游侠授权,无SBA 是的,使用Hive Warehouse Connector 统计和其他
外部 Ranger或SBA,需要HDFS中的ACL 是的,直接文件访问 有限
交易表
事务(ACID)表驻留在Hive仓库中。为了实现ACID合规性,Hive必须管理表,包括访问表数据。CRUD(创建,检索,更新和删除)表中的数据必须采用ORC文件格式。仅插入表支持所有文件格式。Hive旨在支持相对较低的事务率,而不是作为在线分析处理(OLAP)系统。您可以使用SHOW TRANSACTIONS命令列出打开和中止的事务。

Hive 3中的事务表与非ACID表相同。Hive 3事务表中不需要进行分段或排序。这些表与本机云存储兼容。

Hive支持每个事务一个语句,可以包含任意数量的行,分区或表。

外部表格
外部表数据不归Hive所有或控制。如果要使用Hive以外的工具直接在文件级别访问数据,通常使用外部表。Hive 3不支持外部表的以下功能:

 

分享到:
评论

相关推荐

    hive3.x编译spark3.x包

    标题“hive3.x编译spark3.x包”表明我们要讨论的是关于如何在Hive 3.x版本上编译与之兼容的Spark 3.x版本的二进制包。这个过程通常涉及到以下步骤: 1. **环境准备**:首先确保你已经安装了Java开发环境(JDK),...

    Hive2.x系列驱动,

    标题 "Hive2.x系列驱动" 指的是Hive版本2.x的客户端连接器,这些驱动程序使得应用程序能够与Hive服务器进行交互,执行SQL查询并获取数据。Hive是一个基于Hadoop的数据仓库工具,它允许用户使用SQL语言处理存储在HDFS...

    HIVE3 深度剖析 – 技术点解读与应用对接方式建议

    本文将从 HIVE 架构的演进看 HIVE 的发展趋势,介绍 HIVE3.X 和 HIVE2.X 的差异点,讨论周边生态如 SPARK/DATAXhow to 对接 HIVE3.x,并提供大数据应用对接 HIVE3.x 的建议。 一、HIVE 架构演进 HIVE 的发展过程中...

    apache-hive-2.3.3-bin.tar.gz

    7. **Hive Execution Engine**:负责将HQL转换为MapReduce任务或Tez任务(在Hive 2.x版本中,默认执行引擎是Tez,它提供了比MapReduce更高的性能)。 8. **Hive Web UI**:提供一个Web界面,用于监控Hive服务器的...

    HIVE资料.zip

    Hive主要应用于大数据处理领域,特别是那些基于Hadoop的数据处理任务,其设计目标是为大规模数据集提供便捷的数据提取、转化和加载(ETL)功能,以及数据分析。 ### Hive核心概念 1. **元数据(Metadata)**:Hive...

    CentOS7.x安装hive.pdf

    Hive是一个建立在Hadoop之上的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,用于查询和处理存储在HDFS上的大规模数据集。 3. 安装Hive: - 进入Hive安装包所在目录,并解压到...

    hive安装.txt

    Hive 是一种数据仓库工具,它可以将结构化的数据文件映射为一张数据库表,并提供简单的 SQL 查询功能,使 MapReduce 编写者可以不必学习 MapReduce 编程,也可以利用 Hive 进行数据处理。 #### 二、环境准备 在...

    hive函数.docx

    本文档旨在详细介绍Hive中的各种内置函数及其使用方法,这些内容主要源自Apache官方文档并已翻译成中文。Hive是一种基于Hadoop的数据仓库工具,它提供了类SQL的查询语言“HiveQL”,使用户可以方便地进行数据提取、...

    Hive操作笔记(呕心沥血制作)

    Hive 提供了数据汇总、分析和查询功能,非常适合批处理分析任务。本笔记将详细介绍 Hive 的概念、安装过程、常见错误处理以及 MySQL 作为元数据存储的配置。 1. **Hive 概念** Hive 将非结构化或半结构化的数据...

    spark-3.0.2-bin-hadoop2.7-hive1.2.tgz

    Hive是基于Hadoop的数据仓库工具,用于将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,适合大规模数据集的离线分析。Hive 1.2是Hive的一个稳定版本,它增强了性能和稳定性,支持更多的SQL特性,并改进了...

    Spark不能使用hive自定义函数.doc

    通常情况下,Spark 2.x 版本支持 Hive 2.x 或更高版本。可以通过升级或降级其中之一来实现版本兼容。 2. **正确配置 ClassPath**: - 将包含 Hive UDF 的 jar 包添加到 Spark 的 ClassPath 中。这可以通过修改 ...

    spark-2.3.1-bin-hadoop2-without-hive.tgz

    3. **Hive-Spark交互**: 通过设置`spark.sql.hive.thriftServer.singleSession`为`true`,使Hive Thrift Server在每个连接上只启动一个Spark会话,以优化资源利用率。 4. **Spark-Hadoop版本匹配**: 确保Hadoop和...

    jdbc-hive.jar.rar

    这里"1.2.1000"可能是Hive的一个特定构建或补丁版本,通常正式版本号为"1.2.x",而"x"是一个小版本号,"1000"可能是内部版本编号或者是开发版本的标识。标签中的"java"和"hadoop"进一步强调了这是Java编程语言与...

    hive3.1.2编译.doc

    在本文中,我们将深入探讨如何在Hive 3.1.2版本中进行源码编译,以便使其兼容Spark 3.x。这个过程涉及到解决依赖冲突、修改源代码以及适应新版本的Spark和Hadoop。以下是一步步的详细步骤: 首先,确保你已经准备好...

    Apache Hive.zip

    6. **ACID特性**: Hive 2.x引入了事务支持,实现了基本的ACID(原子性、一致性、隔离性、持久性)特性,提高了数据的一致性和可靠性。 7. **Hive on Tez / Spark**: 除了默认的MapReduce执行引擎,Hive还支持Tez和...

    spark--bin-hadoop3-without-hive.tgz

    本压缩包“spark--bin-hadoop3-without-hive.tgz”提供了Spark二进制版本,针对Hadoop 3.1.3进行了编译和打包,这意味着它已经与Hadoop 3.x兼容,但不包含Hive组件。在CentOS 8操作系统上,这个版本的Spark已经被...

    hive需要用到的jar

    3. **Zookeeper jar**:如果 Hive 配置了 Zookeeper 作为元数据的协调服务,那么也需要包含 `zookeeper.jar`,它提供了对 Zookeeper API 的支持。 4. **Hive 元数据存储相关 jar**:如果 Hive 使用 MySQL、Derby 或...

    hadoop,hbase,hive版本整合兼容性最全,最详细说明【适用于任何版本】

    本文将介绍Hadoop、HBase、Hive以及ZooKeeper的版本整合兼容性,以及如何根据版本找到兼容性信息。 首先,Hadoop是一个开源的分布式存储和计算框架,它由HDFS和MapReduce两部分组成。HDFS用于存储大数据,而...

    spark-2.3.1-bin-hadoop2.9-without-hive.tgz

    3. **修改POM.xml**:根据需要修改或添加依赖,例如,如果你想包含Hive支持,你需要在这里进行相应的配置。 4. **编译和构建**:使用Maven的`mvn clean package`命令来编译源码并创建可部署的Spark二进制包。 ...

Global site tag (gtag.js) - Google Analytics