Hinweis zum Zusammenführen mehrerer Parkettdateien zu einer Parkettdatei
Sie können einfach mit Parkettwerkzeugen zusammenführen. Als JAR verteilt scheint jedoch keinen Hadoop-Client zu enthalten, daher ist es lokal. Konnte nicht ausgeführt werden.
# java -jar parquet-tools-1.9.0.jar cat test.parquet
org/apache/hadoop/fs/Path
Daher müssen Sie es selbst erstellen. Ich habe es unter Bezugnahme auf die folgende Site erstellt. https://www.lancork.net/2016/10/inspect-parquet-files-using-parquet-tools/
Verwenden Sie die auf dem CentOS7.5-Server eingerichtete (über die GUI)
** 1. Installieren Sie möglicherweise benötigte Pakete **
# yum install gcc gcc-c++ java-1.8.0-openjdk-devel boost-devel openssl-devel
** 2. Maven installieren **
# wget http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
# tar zxvf apache-maven-3.3.9-bin.tar.gz
** 3. Installieren Sie Thrift **
# wget -nv http://archive.apache.org/dist/thrift/0.12.0/thrift-0.12.0.tar.gz
# tar zxvf thrift-0.12.0.tar.gz
# cd thrift-0.12.0/
# ./configure -disable-gen-erl -disable-gen-hs -without-ruby -without-haskell -without-erlang -without-php -without-nodejs
# make install
** 4. Laden Sie den vollständigen Quellcode herunter ** https://github.com/apache/parquet-mr Laden Sie den vollständigen Quellcode über den obigen Link herunter.
# unzip parquet-mr-master.zip
# cd parquet-mr-master/
** 5. Bauen ** Führen Sie den Befehl mvn unter [aktuelles Verzeichnis] / parquet-mr-master / aus Ich habe ↑ nicht bemerkt und es lief unter [aktuelles Verzeichnis] / parquet-mr-master / parquet-tools, also war ich süchtig danach.
mvn clean package -Plocal
Unter [aktuelles Verzeichnis] / parquet-mr-master / parquet-tools / target Eine Datei mit dem Namen parquet-tools-1.12.0-SNAPSHOT.jar (Stand: 8. Mai 2020) wird generiert. Verwenden Sie dies zum Zusammenführen.
Jede Parkettdatei, die zusammengeführt werden sollte, war in Ordnung, daher habe ich die unten verlinkte Datei verwendet, die von Google veröffentlicht wurde. http://anson.ucdavis.edu/~clarkf/
Überprüfen Sie, ob Sie den Inhalt sehen können
# java -jar ./parquet-tools-1.12.0-SNAPSHOT.jar cat test.parquet
timeperiod = 01/01/2016 00:00:05
flow1 = 0
occupancy1 = 0.0
speed1 = 0.0
flow2 = 0
occupancy2 = 0.0
speed2 = 0.0
flow3 = 0
occupancy3 = 0.0
speed3 = 0.0
timeperiod = 01/01/2016 00:00:35
flow1 = 0
occupancy1 = 0.0
speed1 = 0.0
flow2 = 0
occupancy2 = 0.0
speed2 = 0.0
flow3 = 0
occupancy3 = 0.0
speed3 = 0.0
···(Kürzung)···
Verschmelzen
# java -jar ./parquet-tools-1.12.0-SNAPSHOT.jar merge ./data/*.parquet ./merge.parquet
Warning: file data/part-r-00000-ddaee723-f3f6-4f25-a34b-3312172aa6d7.snappy.parquet is too small, length: 16979
Warning: file data/part-r-00001-ddaee723-f3f6-4f25-a34b-3312172aa6d7.snappy.parquet is too small, length: 18350
···(Kürzung)···
Warning: you merged too small files. Although the size of the merged file is bigger, it STILL contains small row groups, thus you don't have the advantage of big row groups, which usually leads to bad query performance!
Ich erhalte eine Warnung, dass die Leistung beim Zusammenführen abnimmt, aber ich konnte zusammenführen.
das ist alles.
Recommended Posts