Использование инструментов паркета для файлов в формате 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.)

Другие вопросы по тегам