我是Spark的新手,正在尝试读取csv文件并获取文件中的第一列和第二列。尽管如此,csv文件是巨大的,我不想解析csv文件中的每一行。另外,运行collect()函数可能会导致进程崩溃,因为内存可能不足以支持返回的数据量。所以我想知道是否可以用csv数据的一个子集创建一个RDD。例如,是否可以生成包含csv文件的第10至1000行的RDD并忽略其他行。如何获取csv文件的子集作为Spark RDD
现在,我只有
csvdata = sc.textFile("hdfs://nn:port/datasets/sample.csv").map(lambda line: line.split(","))
这基本上整个CSV文件创建一个RDD。是否可以从csvdata创建一个RDD,其中只包含10到1000行?
非常感谢您提供的帮助。
http://stackoverflow.com/questions/15644859/how-to-read-specific-part-of-large-file-in-python – Ashalynd