DataFrame对象未显示任何数据

时间:2016-08-09 09:05:13

标签: hadoop apache-spark apache-spark-sql spark-dataframe spark-csv

我试图使用spark csv lib在hdfs文件上创建一个数据框对象,如图in this tutorial所示。

但是当我试图获取DataFrame对象的计数时,它显示为0

这是我的文件,

employee.csv:

empid,empname
1000,Tom
2000,Jerry

我使用

加载了上面的文件
val empDf = sqlContext.read.format("com.databricks.spark.csv").option("header","true").option("delimiter",",").load("hdfs:///user/.../employee.csv");

当我查询时,empDf object.printSchema()给出了带有empid的正确模式,empname作为字符串字段,我可以看到分隔符已正确读取。

但是当我尝试使用时显示dataFrame, empDf.show只提供列标题,并且没有数据,当我执行empDf.count给出0记录时。

如果我错过了一些非常需要的事情,请纠正我。

1 个答案:

答案 0 :(得分:0)

确保构建Spark分发版的spark-csv版本和Scala版本相同。

例如,如果您的Spark发行版是使用Scala 2.10(Databricks预构建的Spark发行版的默认Scala版本)构建的,则需要spark-csv_2.10 - 版本spark-csv_2.11(如上所述教程中所示)将不起作用,并将返回仅包含列名称的空数据框 - 有关类似情况,请参阅my answer to this SO question