在火花中从HDFS加载文件

时间:2018-04-19 15:16:11

标签: apache-spark hdfs

我正在尝试从HDFS运行这个spark程序,因为当我在本地运行时,我的电脑上没有足够的内存来处理它。有人可以告诉我如何从我的HDFS加载csv文件而不是在本地进行吗?这是我的代码:

import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
import org.apache.spark.sql.SaveMode;
import org.apache.spark.sql.SparkSession;
import org.apache.spark.sql.types.StructType;

public class VideoGamesSale {

public static void main(String[] args) {
    SparkSession spark = SparkSession
            .builder()
            .appName("Video Games Spark")
            .config("spark.master", "local")
            .getOrCreate();

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码从csv文件创建数据集/数据框。

Dataset<Row> csvDS = spark.read().csv("/path/of/csv/file.csv");

如果您想从目录中读取多个文件,可以使用下面的

Seq<String> paths = scala.collection.JavaConversions.asScalaBuffer(Arrays.asList("path1","path2"));
Dataset<Row> csvsDS = spark.read().csv(paths);