Tous les produits
Search
Centre de documentation

Object Storage Service:Utiliser Hive sur un cluster EMR pour traiter les données stockées dans OSS-HDFS

Dernière mise à jour :Aug 18, 2026

Cette rubrique explique comment utiliser Hive sur un cluster E-MapReduce (EMR) pour traiter les données stockées dans OSS-HDFS.

Prérequis

  • Vous avez créé un cluster EMR V3.42.0 ou version ultérieure, ou EMR V5.8.0 ou version ultérieure, en sélectionnant le service Hive. Pour plus d'informations, consultez la section Créer un cluster.

  • OSS-HDFS est activé sur un bucket et les autorisations d'accès à OSS-HDFS sont configurées. Pour savoir comment activer OSS-HDFS, consultez la section Activer OSS-HDFS et accorder des autorisations d'accès.

Procédure

  1. Exécutez la commande suivante dans le terminal pour vous connecter à Hive.

    Pour connaître les autres méthodes de connexion, consultez la section Méthodes de connexion à Hive.

    hive
  2. Exécutez la commande suivante dans le terminal pour vous connecter à Hive.

    Pour connaître les autres méthodes de connexion, consultez la section Méthodes de connexion à Hive.

    hive
  3. Ajoutez des partitions à une table existante.

    L'ajout de partitions à une table existante permet de stocker ses données dans des unités plus petites. Vous pouvez spécifier des conditions de requête basées sur ces partitions. Ainsi, seules les partitions répondant aux conditions spécifiées sont analysées, ce qui améliore les performances des requêtes.

    • Syntaxe de la commande

      ALTER TABLE <table_name> ADD [IF NOT EXISTS] PARTITION <pt_spec> [PARTITION <pt_spec> PARTITION <pt_spec>...] LOCATION 'location';

      Le tableau suivant décrit les paramètres de la commande ci-dessus.

      Paramètre

      Obligatoire

      Description

      table_name

      Oui

      Nom de la table à laquelle vous souhaitez ajouter des partitions.

      IF NOT EXISTS

      Non

      Ce paramètre permet d'ignorer l'erreur si la table contient déjà une partition portant le même nom. Si le paramètre IF NOT EXISTS n'est pas spécifié et qu'une partition du même nom que celle que vous souhaitez ajouter existe déjà, l'opération échoue et une erreur est renvoyée.

      pt_spec

      Oui

      Partitions à ajouter. La valeur de ce paramètre suit le format (partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). Dans ce format, partition_col représente les noms des colonnes de clé de partition, et partition_col_value leurs valeurs. Les noms des colonnes de clé de partition ne sont pas sensibles à la casse, tandis que leurs valeurs le sont.

      location

      Oui

      Chemin OSS utilisé pour stocker les données d'une partition.

    • Exemples

      L'exemple de code suivant montre comment ajouter une partition à une table nommée sale_detail afin de stocker les enregistrements de vente de la région Chine (Hangzhou) pour le mois de décembre 2021, et spécifier le chemin OSS utilisé pour stocker les données de cette partition :

      ALTER TABLE sale_detail ADD IF NOT EXISTS PARTITION (sale_date='202112', region='hangzhou') LOCATION 'oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/path/2021/';