什么是HiveServer和Thrift服务器

时间:2016-12-02 04:08:37

标签: hadoop hive

我刚刚开始学习Hive。我在Hive书籍或Hive教程中经常看到三个术语。 Hive Server,Hive Service和Thrift Server。 这些是什么 ? 他们是如何相关的? 有什么不同 ?。 什么时候使用这些? 请解释

1 个答案:

答案 0 :(得分:30)

  1. HiveServer2(HS2)是一种允许客户端执行的服务 查询Hive。 HiveServer2是HiveServer1的继承者 已被弃用。 HS2支持多客户端并发和 认证。它旨在为开放提供更好的支持 API客户端,如JDBC和ODBC。您可以在https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Overview
  2. 找到有关hiveserver的更多详细信息
  3. Hive Service只是在您的客户端节点上运行的守护进程 它将请求发送到Hive Server。

  4. Thrift是用于构建跨平台服务的RPC框架。它的 堆栈由4层组成:服务器,传输,协议和 处理器。您可以在此处找到有关图层的更多详细信息 https://thrift.apache.org/docs/concepts

  5. 所有这些之间的关系:

    • 基于Thrift的Hive服务是HS2的核心,负责 为Hive查询提供服务(例如,来自Beeline)。简单来说就是Hive server基于thrift协议,它从hive发送查询 客户端,即您的命令行界面或从HUE接口到 可以在您的HDFS或任何其他数据源中的基础数据。

    用法:

    • 在后台查询任何配置单元表或数据库时 自动将您的请求在蜂巢服务和。之间传输 配置单元服务器
    • 当您想要创建自己的服务或项目时,可以使用 节俭协议将帮助您创建图层,想一想 因为您正在使用库创建用户定义的函数,所以 在这种情况下,库将是节俭的。

    什么是Apache Thrift:它是可扩展的跨语言服务开发框架。

    当我们可以使用Apache Thrift时:开发使用以一种语言访问另一种语言开发的服务的Web服务。

    什么是HiveServer:这是一项允许远程客户端向hive提交请求的服务。使用各种编程语言,并检索结果。