Databricks csv parser - самый быстрый путь к отказоустойчивости - PullRequest
0 голосов
/ 08 октября 2019

При чтении в огромном текстовом файле с разделителями я хотел бы выдать ошибку, если какая-либо из записей искажена. Databricks поддерживает это с опцией FAILFAST.

val raw = spark.sqlContext.read.format("com.databricks.spark.csv").
option("header","true").
option("inferSchema","false").
option("delimiter","|").
option("mode","FAILFAST").
load("/path/to/huge/file")

В зависимости от размера файла, выполняемой вами обработки и т. Д., Может произойти сбой, если неправильно сформированные строки находятся в файле достаточно далеко.

Каким было бы самое быстрое преобразование или что-то еще, что просто заставило бы спарк прочитать весь файл? Я надеялся, что установка true для inferSchema сделает это, потому что у меня было тогда впечатление, что это вызывает еще один проход через данные, но не сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...