对spark、hive、大数据和scala等都非常陌生。我正在尝试编写一个简单的函数,它接受一个sqlcontext,从s3加载一个csv文件并返回一个dataframe。问题是,这个特殊的csv使用^a(即.\001)字符作为分隔符,而且数据集很大,所以我不能对它执行“s/\001/,/g”。此外,字段可能包含逗号或其他我可能用作分隔符的字符。
我知道我正在使用的spark csv包有一个分隔符选项,但是我不知道如何设置它,以便它将\001作为一个字符而不是像转义的0、0和1那样读取。也许我应该用hivecontext什么的?
2条答案
按热度按时间zc0qhyus1#
对于spark 2.x和csv api,使用
sep
选项:mutmk8jj2#
如果您查看github页面,就会发现
delimiter
spark csv的参数(如您所述)。像这样使用: