- L’équipe plateforme de données de LINE a décidé d’arrêter progressivement l’utilisation de Hive et de migrer vers un environnement Spark
- Méthode de migration : remplacer le moteur, puis modifier les requêtes en cas de problème
- Exemples de modifications de requêtes :
- En cas d’utilisation de tables temporaires (
CREATE TEMPORARY TABLE)
- En cas d’utilisation de conversions de type implicites qui enfreignent la politique ANSI (
Store Assignment Policy)
- En cas de problème avec une UDF existante
- En cas d’introduction d’une nouvelle UDF
- En cas d’utilisation d’opérations ensemblistes sur le type map
- Lorsqu’il faut supprimer plusieurs partitions
- Après la migration, certaines données spécifiques manquaient, ce qui a conduit à une phase de troubleshooting
- Cinq types de problèmes observés et leurs réponses :
- Après l’exécution d’une requête, une partie des résultats manque
- Impossible de lire les données lorsqu’il existe des sous-répertoires sous un répertoire de partition
- Lors de l’exécution d’un job, la suppression du répertoire de partition provoque l’échec des requêtes utilisant cette partition
- Lorsqu’on lit des données depuis une partition pour les écrire dans une autre partition de la même table, une
AnalysisException se produit (Cannot overwrite a path that is also being read from)
- Les résultats sont dupliqués et chargés en double
- En plus d’OpenChat, l’équipe prévoit de migrer d’ici la fin de l’année vers Spark l’ensemble des centaines de requêtes de plusieurs domaines dont elle est actuellement responsable
Aucun commentaire pour le moment.