使用Spark DataFrame从HDFS加载数据 [英] Using spark dataFrame to load data from HDFS

查看:666
本文介绍了使用Spark DataFrame从HDFS加载数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

从HDFS读取数据时,我们可以使用DataFrame吗? 我有一个制表符,用于分隔HDFS中的数据.

Can we use DataFrame while reading data from HDFS. I have a tab separated data in HDFS.

我用Google搜索,但是看到它可以与NoSQL数据一起使用

I googled, but saw it can be used with NoSQL data

推荐答案

DataFrame当然不限于NoSQL数据源. 1.4至1.6.1原生提供了Parquet,ORC和JSON支持;使用spark-cvs软件包支持文本分隔文件.

DataFrame is certainly not limited to NoSQL data sources. Parquet, ORC and JSON support is natively provided in 1.4 to 1.6.1; text delimited files are supported using the spark-cvs package.

如果您的tsv文件位于/demo/data中的HDFS中,则以下代码会将文件读取到DataFrame中

If you have your tsv file in HDFS at /demo/data then the following code will read the file into a DataFrame

sqlContext.read.
  format("com.databricks.spark.csv").
  option("delimiter","\t").
  option("header","true").
  load("hdfs:///demo/data/tsvtest.tsv").show

要从spark-shell运行代码,请使用以下命令:

To run the code from spark-shell use the following:

--packages com.databricks:spark-csv_2.10:1.4.0

在Spark 2.0中,csv本身受支持,因此您应该可以执行以下操作:

In Spark 2.0 csv is natively supported so you should be able to do something like this:

spark.read.
  option("delimiter","\t").
  option("header","true").
  csv("hdfs:///demo/data/tsvtest.tsv").show

这篇关于使用Spark DataFrame从HDFS加载数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆