【发布时间】:2017-02-16 08:02:53
【问题描述】:
我正在尝试将数据从 csv 文件加载到 Hive。我正在使用 Spark 的 JAVA API 来执行此操作。我想知道如何使用 spark 数据帧在 hive 中加载数据。
以下是我尝试使用 JSON 制作的内容:
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.sql.SQLContext;
public class first {
public static void main (String[] args)
{
String inputFileName = "samples/big.txt" ;
String outputDirName = "output" ;
SparkConf conf = new SparkConf().setAppName("org.sparkexample.WordCount").setMaster("local");
JavaSparkContext context = new JavaSparkContext(conf);
@SuppressWarnings("deprecation")
SQLContext sc = new SQLContext(context);
DataFrame input = sc.jsonFile(inputFileName);
input.printSchema();
}
}
但不知道如何使用 csv 制作它。我对 databricks 提供的 Spark-csv 有一些想法。
请让我知道我该怎么做。
【问题讨论】:
-
您使用的是什么版本的 spark?阅读 csv 或将生成的数据框放入 hive 也是您的问题吗?
-
您可以使用 spark-csv 包将 csv 文件读取到
dataframe中,然后使用它将其加载到 hive table 中。 github.com/databricks/spark-csv -
@AssafMendelson Spark 版本 1.6.0
-
@RajatMishra 我也在尝试。但是不明白问题所在。第一次使用 Spar 和 java。一直在和 Scala 打交道,但看不懂 java。
-
对不起,我使用的是 2.1.0 版本
标签: java csv hadoop apache-spark spark-dataframe