Spark Sqlチュートリアル(3)-DataFrameはSqlクエリーを実行

1331 ワード

Spark sqlチュートリアルSpark Sqlチュートリアル(1)————sparkSession Spark Sqlチュートリアルを作成する(2)———DataFrame基本操作Spark Sqlチュートリアル(3)———DataFrame実行SqlクエリーSpark Sqlチュートリアルを実行する(4)———グローバルテンポラリテーブルとローカルテンポラリテーブルSpark Sqlチュートリアル(5)———datasetとdataframe Spark Sqlチュートリアル(6)———RDDからDataFrame Spark Sqlチュートリアルに変換する方法(7)———ParquetファイルSpark Sqlチュートリアル(8)———さまざまな形式のファイルタイプを読み込む
前回はdataframeが持参したapiを用いた操作を示し,sqlを用いたクエリーについて説明した.SparkSessionは、テンポラリ・テーブルを登録してからsqlクエリーを行うsqlクエリーを直接実行するインタフェースを提供します.
package sparksql

import org.apache.spark.sql.SparkSession

object SparkSqltest1 {

  def main(args: Array[String]): Unit = {
    //  sparksession
    val   sparkSession=SparkSession.builder().appName("test1").master("local[*]")getOrCreate()
    import  sparkSession.implicits._
    //      dataframe
    val   df=sparkSession.read.json("hdfs://192.168.1.181:9000/json/data.json")
    val   tableperson=df.createTempView("person")    //     
    sparkSession.sql("select  *  from  person").show()   //  sql    
    sparkSession.sql("select name from person").show()


    sparkSession.stop()
  }
}

結果:
+---+--------+
|age|    name|
+---+--------+
|  1|zhangsan|
|  2|    lisi|
+---+--------+

+--------+
|    name|
+--------+
|zhangsan|
|    lisi|
+--------+