0
Ich bin sehr neu zu funken. Ich habe eine CSV-Datei mit nur 2 Spalten. Die CSV-Datei ist groß (30 Millionen Zeilen). Ich versuche, spark-csv_2.10:1.2.0
zu verwenden, um es auf Datenrahmen zu laden.Ausnahme beim Lesen csv in Funken
Ich verwende den folgenden Code ein:
df = sqlContext.read.load('file:///path/file_third.csv',
format='com.databricks.spark.csv',
header='true',
inferSchema='true')
ich folgende Fehler bekommen:
[Stage 2:> (0 + 8)/10]16/08/04 15:32:57 ERROR Executor: Exception in task 1.0 in stage 2.0 (TID 3)
com.univocity.parsers.common.TextParsingException: Length of parsed input (1000001) exceeds the maximum number of characters defined in your parser settings (1000000).
Identified line separator characters in the parsed content. This may be the cause of the error. The line separator in your parser settings is set to '\n'. Parsed content:
Und der folgende Hinweis kommt. Ich schätze, es ist nicht in der Lage, Zeilenumbruch zu verstehen.
Hint: Number of characters processed may have exceeded limit of 1000000 characters per column. Use settings.setMaxCharsPerColumn(int) to define the maximum number of characters a column can have
Ensure your configuration is correct, with delimiters, quotes and escape sequences that match the input format you are trying to parse
Parser Configuration: CsvParserSettings:
Auto configuration enabled=true
Autodetect column delimiter=false
Autodetect quotes=false
Column reordering enabled=true
Empty value=null
Escape unquoted values=false
Header extraction enabled=null
Headers=[1235187239212711042, 0006]
Ignore leading whitespaces=false
Ignore trailing whitespaces=false
Input buffer size=128
Input reading on separate thread=false
Keep escape sequences=false
Line separator detection enabled=false
Maximum number of characters per column=1000000
Maximum number of columns=20480
Normalize escaped line separators=true
Null value=
Number of records to read=all
Row processor=none
RowProcessor error handler=null
Selected fields=none
Skip empty lines=true
Unescaped quote handling=STOP_AT_DELIMITERFormat configuration:
CsvFormat:
Comment character=\0
Field delimiter=,
Line separator (normalized)=\n
Line separator sequence=\n
Quote character="
Quote escape character=\
Quote escape escape character=null
Wie löst man diesen Fehler?
Lassen Sie mich wissen, wenn Sie den gleichen Fehler für eine kleine Probe (<10.000 Zeilen) der Daten –
@ Umberto bekommen, ja ich bekomme diesen Fehler für eine kleinere Datei nicht. Gibt es eine Möglichkeit, eine so große Datei in Spark zu lesen? – Vraj
Könnte der folgende Fehler sein [SPARK-14103] (https://issues.apache.org/jira/browse/SPARK-14103) Wenn Sie ein spezielles Feld verwenden, erkennt der Parser die Zeilenumbrüche nicht und versucht, unendlich mehr hinzuzufügen und mehr Zeilen zu einer einzigen Spalte und stürzt ab. –