2017-08-30 1 views
0

J'ai une table partitionnée sur la colonne de la date dans la ruche et je peux transférer les données de l'importation dans la table partitionnée de la ruche pour la première fois. lorsque j'ai effectué cela, il a créé tous les dossiers de date correctement et les données ont été chargées dans chaque dossier dans l'emplacement hdfs de la table hive. Maintenant, lorsque je veux importer et ajouter à nouveau les données dans la même table de ruche avec la nouvelle date de mise à jour (qui crée un nouveau dossier de partition de date dans l'emplacement de ruche hdfs) et charge de nouvelles données dans la table. Comment effectuer cela en utilisant l'opération d'importation sqoop?Comment faire pour importer des données importées dans une table ruche partieitoned qui crée un nouveau dossier partitionné sur la même colonne partitionnée? Ci-dessous est mon scénario

Répondre

0

Modélisez vos données de manière plus gérable. Utiliser la date de création pour le partitionnement date non mise à jour. Dans ma connaissance ruche ne prend pas en charge la mise à jour des partitions, il peut y avoir des solutions de contournement pour cela, mais il peut être lourd. Utilisez donc un champ qui ne va pas changer en tant que clé de partition. Utilisez-vous une partition statique lors de la première importation de Sqoop? Pour autant que je sache, l'importation de sqoop ne supporte que l'importation de partitionnement statique usnig sauf si vous utilisez hcatelog. Si vous avez d'autres solutions s'il vous plaît shere, j'ai une situation similaire et j'ai résolu comme décrit ci-dessus.