Aller au contenu principal
Version: 1.3.1.0

Hive Warehouse Connector (HWC)

Le Hive Warehouse Connector (HWC) intègre Spark SQL à Hive via HiveServer2 (HS2) et LLAP. Il est conçu pour la lecture et l'écriture des tables Hive (y compris ACID) et pour l'application des politiques d'autorisation Hive lorsque nécessaire.

Versions utilisées

  • Spark 3.5.x (par défaut : 3.5.4)
  • Hive 4.0.1
  • Scala 2.12.18
  • Calcite 1.25.0
  • Avatica 1.12.0

Ces valeurs peuvent être surchargées via les propriétés système sbt (par exemple : -Dspark.version=3.5.6).

Téléchargements (Nexus)

Les artefacts sont actuellement publiés en version 1.3.1, compatibles avec ODP 1.3.1.0.

ArtefactLien
Jar assembly (fat)https://nexus.clemlab.com/repository/spark-packages/com/hortonworks/hive/hive-warehouse-connector_2.12/1.3.1/hive-warehouse-connector_2.12-1.3.1-assembly.jar
Jar principalhttps://nexus.clemlab.com/repository/spark-packages/com/hortonworks/hive/hive-warehouse-connector_2.12/1.3.1/hive-warehouse-connector_2.12-1.3.1.jar
Sourceshttps://nexus.clemlab.com/repository/spark-packages/com/hortonworks/hive/hive-warehouse-connector_2.12/1.3.1/hive-warehouse-connector_2.12-1.3.1-sources.jar
Javadochttps://nexus.clemlab.com/repository/spark-packages/com/hortonworks/hive/hive-warehouse-connector_2.12/1.3.1/hive-warehouse-connector_2.12-1.3.1-javadoc.jar
POMhttps://nexus.clemlab.com/repository/spark-packages/com/hortonworks/hive/hive-warehouse-connector_2.12/1.3.1/hive-warehouse-connector_2.12-1.3.1.pom

Fonctionnalités prises en charge

Le tableau ci-dessous résume ce qui est couvert et pris en charge.

Domaine fonctionnelStatutRemarques
Modes de lecture (lecteur direct, JDBC, accès sécurisé)Pris en charge-
Contrôle du cache d'accès sécuriséPris en chargespark.hadoop.secure.access.cache.disable.
Mode de lecture JDBC (client/cluster)Pris en charge-
Extension Spark SQL pour le lecteur directPris en chargespark.sql.extensions=com.hortonworks.spark.sql.rule.Extensions.
Écritures par lots (DataFrame writer)Pris en chargeÉcrit en staging puis LOAD DATA.
Écritures en streaming vers les tables ACIDPris en chargeSink HiveStreamingDataSource.
API de session HWC (opérations catalogue, executeUpdate, commitTxn, close)Pris en chargeVoir la page API.
Métriques Spark executorPartielUtilise les métriques Spark et le listener HWC, pas de packaging supplémentaire.
Intégration PySparkPris en chargePackage python/ + jar d'assembly.
Intégration sparklyrNon livrénon inclus ici.
Intégration ZeppelinManuelAjouter le jar et la conf Spark ; non packagé.

Si vous dépendez d'une fonctionnalité non incluse (helpers sparklyr, modèles de configuration Zeppelin), vous pouvez toujours utiliser le connecteur en ajoutant le jar d'assembly et en définissant les configurations Spark manuellement.

Par où commencer

  • Commencez par Démarrage pour une configuration minimale et un exemple en Spark shell.
  • Utilisez Configuration et Modes de lecture pour choisir l'accès sécurisé ou le lecteur direct.
  • Utilisez Écritures et streaming pour la configuration des écritures par lots et en streaming.
  • Consultez Limitations et types avant un déploiement en production.