Apache Hive 3架构是怎么样的

发布时间:2021-12-10 11:14:40 作者:小新
来源:亿速云 阅读:203

这篇文章主要介绍Apache Hive 3架构是怎么样的,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Apache Tez

Apache Tez是Hive on Tez服务的Hive执行引擎,该服务包括Cloudera Manager中的HiveServer(HS2)。Tez不支持MapReduce。在Cloudera集群中,如果旧脚本或应用程序指定要执行的MapReduce,则会发生异常。大多数用户自定义函数(UDF)不需要更改即可在Tez上执行,而无需执行MapReduce。

使用有向无环图(DAG)的表达式和数据传输原语,在Tez而不是MapReduce上执行Hive查询可以提高查询性能。在Cloudera数据平台(CDP)中,Hive通常仅使用Tez引擎,并且在Hive on Tez启动时会自动启动和管理Tez AM。您提交给Hive的SQL查询的执行方式如下:

Hive on Tez在临时容器上运行任务,并使用标准的YARN shuffle服务。


数据存储和访问控制

支持Hive 3设计的主要架构更改之一使Hive对元数据内存资源和文件系统或对象存储有了更多的控制。从Hive 2到Hive 3的以下体系结构的变更提供了更高的安全性:

默认情况下,CDP私有云基础版将Hive数据存储在HDFS上,CDP公共云将Hive数据默认存储在S3上。在公有云中,Hive仅将HDFS用于存储临时文件。Hive 3通过以下方式针对对象存储(例如S3)进行了优化:

Hive的主要授权模型是Ranger。Hive强制实施Ranger中指定的访问控制。与其他安全方案相比,该模型提供了更强的安全性,并且在管理策略方面具有更大的灵活性。

此模型仅允许Hive访问数据仓库。如果未启用Ranger安全服务或其他安全性,则默认情况下,CDP私有云基础版的 Hive将基于用户模拟使用基于存储的授权(SBA)。

HDFS权限变更

在CDP私有云基础版中,SBA严重依赖于HDFS访问控制表(ACL)。ACL是HDFS中权限系统的扩展。默认情况下,CDP私有云基础版打开HDFS中的ACL,为您提供以下优势:


事务处理

您可以利用以下事务处理特性来部署新的Hive应用程序类型:

ACID表是默认的表类型。

默认情况下启用ACID不会导致性能或操作过载。

您不需要对ACID表分桶。


Hive客户端变更

CDP私有云基础版支持瘦客户端Beeline在命令行上工作。您可以从命令行运行Hive管理命令。Beeline使用JDBC连接到Hive on Tez来执行命令。解析、编译和执行操作在Hive on Tez中进行。Beeline支持Hive CLI支持的许多命令行选项。但Beeline不支持hive -e set key=value的方式配置Hive Metastore。

通过使用hive 关键字、命令选项和命令调用Beeline,可以输入受支持的Hive CLI命令。例如,hive -e set。使用Beeline代替不再受支持的胖客户端Hive CLI具有许多优点,包括较低的开销。Beeline不会使用整个Hive代码库。执行查询所需的少量守护程序简化了监视和调试。

Hive on Tez会强制执行白名单和黑名单设置,您可以使用SET命令对其进行更改。使用黑名单,您可以限制内存配置更改,以防止不稳定。您可以在具有不同白名单和黑名单的Tez实例上配置多个Hive,以建立不同级别的稳定性。


Apache Hive Metastore共享

Hive、Impala和其他组件可以共享远程的Hive元存储。在CDP公共云中,HMS使用预安装的MySQL数据库。在公有云上,您几乎不需要配置或者很少的配置HMS。

     

整合Spark

Spark和Hive表使用Hive Warehouse Connector进行互操作。

您可以使用Hive Warehouse Connector从Spark访问ACID表和外部表。您不需要Hive Warehouse Connector即可从Spark读取Hive外部表并从Spark写入Hive外部表。您不需要HWC即可读取或写入Hive外部表。Spark用户只是直接从Hive中读取或写入。您可以读取ORC或Parquet格式的Hive外部表。但您只能以ORC格式写Hive的外部表。


查询批处理和交互式工作负载的执行

您可以使用JDBC命令行工具(例如Beeline)或使用JDBC / ODBC驱动程序和BI工具(例如Tableau)连接到Hive。客户端与同一个Hive on Tez版本的实例进行通信。您可以为每个实例配置设置文件以执行批处理或交互式处理。

以上是“Apache Hive 3架构是怎么样的”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. Apache Flink®生态所面临的机遇与挑战
  2. 如何实现Apache Hive 和Spark的对比分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

apache hive

上一篇:Flink 1.11与Hive批流一体数仓的示例分析

下一篇:如何读懂Ka及Ks

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》