1

我有一个 spark 2.0 java 应用程序,它使用 sparks csv 读取实用程序将 CSV 文件读入数据帧。问题是有时 100 个输入文件中有 1 个可能是无效的(损坏的 gzip),这会导致作业失败:

java.lang.IllegalStateException: Error reading from input

当我以前将文件作为文本文件读取并手动解析 CSV 时,我能够编写自定义 TextInputFormat 来处理异常。在使用 spark 的 CSV 阅读器时,我不知道如何指定客户 TextInputFormat。任何帮助,将不胜感激。

当前读取 CSV 的代码:

        Dataset<Row> csv = sparkSession.read()
            .option("delimiter", parseSettings.getDelimiter().toString())
            .option("quote", parseSettings.getQuote())
            .option("parserLib", "UNIVOCITY")
            .csv(paths);

谢谢,内森

4

0 回答 0