2016-04-16 3 views
-1

Je voulais convertir des données avro d'un jour (~ 2 To) en parquet.Hive Augmentation considérable de la taille des données depuis la conversion d'avro en parquet

J'ai exécuté une requête Hive et les données ont été converties en parquet.

Mais la taille des données est passée à 6 To.

Qu'est-ce qui se serait passé que les données soient devenues trois fois plus grandes?

+0

Avez-vous défini un codec de compression spécifique pour votre table de parquets? AFAIK il utilise Snappy par défaut - pas cher sur le CPU mais pas très efficace sur le disque ... –

+0

Avez-vous essayé ORC au lieu de Parquet? * (le codec de compression par défaut est GZip, vous pouvez passer à Snappy ou None) * –

+0

J'ai oublié de définir la propriété pour la compression. Peut-être que ce n'est pas compressé par défaut. – user2942227

Répondre

-1

En règle générale, Parquet peut être plus efficace que Avro, car il s'agit d'un format colonne colonnes du même type sont adjacentes sur le disque. Cela permet aux algorithmes de compression d'être plus efficaces dans certains cas. Typiquement, nous utilisons Snappy qui est suffisant, facile sur le CPU et possède plusieurs propriétés qui le rendent adapté à Hadoop par rapport à d'autres méthodes de compression comme le zip ou le gzip. Principalement accrocheur est divisible; chaque bloc conserve les informations nécessaires pour déterminer le schéma. MParquet est un excellent format et nous avons été très heureux avec les performances des requêtes après avoir quitté Avro (et nous pouvons aussi utiliser Impapla qui est super rapide).

+0

J'ai oublié de définir la propriété pour la compression. Peut-être que ce n'est pas compressé par défaut. – user2942227

+0

J'ai oublié de définir la propriété pour la compression. Peut-être que ce n'est pas compressé par défaut. – user2942227