3

S3 に保存されているテキスト ファイルを読み取り、Spark データフレームを使用して ORC 形式で S3 に書き戻すことに成功しました。-inputDf.write().orc(outputPath);
私ができないのは、snappy 圧縮で ORC 形式に変換することです。コーデックをスナッピーに設定して書き込み中にオプションを指定しようとしましたが、Sparkはまだ通常のORCとして書き込んでいます。Spark Dataframes を使用して S3 への Snappy 圧縮を使用して ORC 形式で書き込むにはどうすればよいですか?

4

1 に答える 1

3

同じ問題に直面している人にとって、Spark 2.0 ではデフォルトでこれが可能です。ORC のデフォルトの圧縮形式は snappy に設定されています。

public class ConvertToOrc {
    public static void main(String[] args) {
        SparkSession spark = SparkSession
                .builder()
                .appName("OrcConvert")
                .getOrCreate();
        String inputPath = args[0];
        String outputPath = args[1];

        Dataset<Row> inputDf = spark.read().option("sep", "\001").option("quote", "'").csv(inputPath);
        inputDf.write().format("orc").save(outputPath);

   }
}
于 2016-10-05T13:35:42.123 に答える