文件为20 GB,行结束字符为␀。下面是PySpark代码:
text_file = sc.textFile(file_name)
counts = text_file.flatMap(lambda line: line.split("␀"))
counts.count()
错误如下: 换行前的字节太多:2147483648
问题:如何在大型自定义行结束文件中使用PySpark读取?
答案 0 :(得分:1)
您可以使用与creating spark data structure from multiline record
相同的技巧rdd = sc.newAPIHadoopFile(
'/tmp/weird',
'org.apache.hadoop.mapreduce.lib.input.TextInputFormat',
'org.apache.hadoop.io.LongWritable',
'org.apache.hadoop.io.Text',
conf={'textinputformat.record.delimiter': '␀'}
).values()