La ruche gzip fichier de décompression
J'ai chargé tas de .gz fichier dans HDFS et quand je crée une table brutes sur le dessus d'eux je vois le comportement étrange lors du calcul du nombre de lignes. En comparant le résultat du count(*) from le gz table par rapport à la non compressé résultats de la table de ~85% de différence. La table qui contient le fichier gz comprimé a moins de dossiers. Quelqu'un a vu?
CREATE EXTERNAL TABLE IF NOT EXISTS test_gz(
col1 string, col2 string, col3 string)
ROW FORMAT DELIMITED
LINES TERMINATED BY '\n'
LOCATION '/data/raw/test_gz'
;
select count(*) from test_gz; result 1,123,456
select count(*) from test; result 7,720,109
U pourrait saisir plus d'information? Comme le nom de fichier dans HDFS, le résultat de
select * from test
et select * from test_gz
OriginalL'auteur Marcin | 2013-01-30
Vous devez vous connecter pour publier un commentaire.
J'ai été en mesure de résoudre ce problème. D'une certaine façon le gzip fichiers n'ont pas été pleinement prise en décompressé dans map/reduce emplois (de la ruche ou de la coutume java map/reduce). Mapreduce travail que lire sur ~450 MO du fichier gzip et écrire les données HDFS sans lire le 3.5 fichier GZ. Étrange, pas d'erreurs à tous!
Étant donné que les fichiers ont été compressés sur un autre serveur, j'ai décompressé manuellement et re-compressé sur hadoop client-serveur. Après cela, j'ai téléchargé le nouveau comprimé de 3,5 GZ fichier HDFS, puis de la ruche a été pleinement en mesure de compter tous les enregistrements de la lecture de l'ensemble du fichier.
Marcin
OriginalL'auteur Marcin