web-dev-qa-db-fra.com

qu'est-ce que HiveServer et Thrift server

Je viens de commencer à apprendre Hive. Il y a trois termes que j'ai souvent vus dans les livres Hive ou les tutoriels Hive. Hive Server, Hive Service et Thrift Server. Qu 'est ce que c' est ? comment sont-ils liés? Quelle est la différence ?. quand chacun d'eux est utilisé? S'il vous plaît, expliquez

  1. HiveServer2 (HS2) est un service qui permet aux clients d'exécuter des requêtes sur Hive. HiveServer2 est le successeur de HiveServer1 qui est devenu obsolète. HS2 prend en charge la simultanéité et l'authentification multi-clients. Il est conçu pour fournir une meilleure prise en charge des clients API ouverts tels que JDBC et ODBC. Vous pouvez trouver plus de détails sur hiveserver sur https://cwiki.Apache.org/confluence/display/Hive/HiveServer2+Overview
  2. Hive Service n'est rien d'autre qu'un démon qui s'exécute sur votre poste client qui envoie des requêtes à Hive Server.

  3. Thrift est un cadre RPC pour la création de services multiplateformes. Sa pile se compose de 4 couches: serveur, transport, protocole et processeur. Vous pouvez trouver plus de détails sur les couches sur https://thrift.Apache.org/docs/concepts .

Relation entre tous ces éléments:

  • Le service Hive basé sur Thrift est le cœur de HS2 et est responsable du service des requêtes Hive (par exemple, de Beeline). En termes simples, le serveur Hive est basé sur des protocoles d'épargne qui envoient des requêtes du client Hive, c'est-à-dire de votre interface de ligne de commande ou de l'interface HUE aux données sous-jacentes qui peuvent être dans votre HDFS ou toute autre source de données.

Usage:

  • Lorsque vous interrogez des tables ou des bases de données Hive, en arrière-plan automatiquement, vos demandes sont transférées entre le service Hive et le serveur Hive
  • lorsque vous souhaitez créer votre propre service ou projet, vous pouvez utiliser des protocoles d'épargne qui vous aideront à créer des couches, pensez-y lorsque vous créez vos fonctions définies par l'utilisateur à l'aide de bibliothèques, donc dans ce cas, les bibliothèques seront économes.

Qu'est-ce qu'Apache Thrift: C'est un cadre évolutif pour le développement de services multilingues.

Quand nous pouvons utiliser Apache Thrift: Développement d'un service Web qui utilise un service développé dans une langue d'accès qui est dans une autre langue.

Qu'est-ce que HiveServer: C'est un service qui permet à un client distant de soumettre des demandes à Hive. Utiliser une variété de langages de programmation et récupérer les résultats.

34
Rijul sahu