2016-12-08 11 views
0

私はhdfsにcsvファイルを持っていますが、spark SQLでこのファイルをどのようにクエリできますか?たとえば、私は特別な列の選択要求を行い、その結果は、Hadoopの分散ファイルシステムに再格納されるように、あなたがデータフレームを作成することによって達成することができますSpark Sqlを使用してhdfsをクエリ

おかげ

答えて

0

を取得したいと思います。

val dataFrame = spark.sparkContext 
    .textFile("examples/src/main/resources/people.csv") 
    .map(_.split(",")) 
    .map(attributes => Person(attributes(0), attributes(1).trim.toInt)) 
    .toDF() 

dataFrame.sql("<sql query>"); 
+0

あなたはSparkSessionを持っているので、それは2.0スパークです。なぜ組み込みのCSVパーサーを使用していないのですか? –

0
  1. あなたはSparkSessionを作成する必要があります。例はhereです。
  2. CSVファイルをロード:val df = sparkSession.read.csv("path to your file in HDFS")
  3. 選択操作を実行してください:val df2 = df.select("field1", "field2")
  4. バックの結果を書く:df2.write.csv("path to a new file in HDFS")
関連する問題