Использование инструментов паркета для файлов в формате hdfs
Я скачал и собрал parquet-1.5.0 из https://github.com/apache/parquet-mr.
Теперь я хочу выполнить некоторые команды для моих файлов паркета, которые находятся в hdfs. Я попробовал это:
cd ~/parquet-mr/parquet-tools/src/main/scripts
./parquet-tools meta hdfs://localhost/my_parquet_file.parquet
и я получил:
Ошибка: не удалось найти или загрузить основной класс parquet.tools.Main
1 ответ
Скачать банку Скачать банку из репозитория Maven или из любого места по вашему выбору. Просто погугли это. Время этого поста я могу получить паркет инструменты здесь.
Если вы вошли в окно hadoop:
wget http://central.maven.org/maven2/org/apache/parquet/parquet-tools/1.9.0/parquet-tools-1.9.0.jar
Эта ссылка может перестать работать через несколько дней. Так что получите новую ссылку из репозитория Maven.
Построить банку Если вы не можете загрузить банку, вы также можете собрать банку из исходного кода. Клонируйте репозиторий parquet-mr и постройте банку из источника
git clone https://github.com/apache/parquet-mr
мвн чистый пакет
Примечание: вам нужно maven на вашей коробке, чтобы собрать исходный код.
Чтение файла паркета Эти команды можно использовать для просмотра содержимого файла паркета.
Проверьте схему для файла s3 / hdfs:
hadoop jar parquet-tools-1.9.0.jar schema s3://path/to/file.snappy.parquet
hadoop jar parquet-tools-1.9.0.jar schema hdfs://path/to/file.snappy.parquet
Содержание файла заголовка:
hadoop jar parquet-tools-1.9.0.jar head -n5 s3://path/to/file.snappy.parquet
Проверьте содержимое локального файла:
java -jar parquet-tools-1.9.0.jar head -n5 /tmp/path/to/file.snappy.parquet
java -jar parquet-tools-1.9.0.jar schema /tmp/path/to/file.snappy.parquet
Больше команд:
hadoop jar parquet-tools-1.9.0.jar –help
Сценарий построен на предположении, что parquet-tools-<version>.jar
находится в каталоге с именем lib
рядом с самим файлом скрипта, вот так:
$ find -type f
./parquet-tools
./lib/parquet-tools-1.10.1-SNAPSHOT.jar
Вы можете настроить такой макет файла, выполнив следующие команды из корня git-репозитория parquet-mr (конечно, возможны многие альтернативные способы и места установки):
mkdir -p ~/.local/share/parquet-tools/lib
cp parquet-tools/src/main/scripts/parquet-tools ~/.local/share/parquet-tools/
cp parquet-tools/target/parquet-tools-1.5.0.jar ~/.local/share/parquet-tools/lib
После этого вы можете запустить ~/.local/share/parquet-tools/parquet-tools
, (Я проверил это с версией 1.10.1-SNAPSHOT, хотя вместо 1.5.0.)