SparkSession對象怎么構建?【附詳細代碼】
在RDD階段,程序的執(zhí)行入口對象是:SparkContext
在Spark 2.0后,推出了SparkSession對象,作為Spark編碼的統(tǒng)一入口對象。
SparkSession對象可以:
- 用于SparkSQL編程作為入口對象
- 用于SparkCore編程,可以通過SparkSession對象中獲取到SparkContext
所以,我們后續(xù)的代碼,執(zhí)行環(huán)境入口對象,統(tǒng)一變更為SparkSession對象

SparkSession:這是一個新入口,取代了原本的SQLContext與HiveContext。對于DataFrame API的用戶來說,Spark常見的混亂源頭來自于使用哪個“context”?,F(xiàn)在使用SparkSession,它作為單個入口可以兼容兩者,注意原本的SQLContext與HiveContext仍然保留,以支持向下兼容。
文檔:
http://spark.apache.org/docs/latest/sql-getting-started.html
1)、SparkSession在SparkSQL模塊中
2)、SparkSession對象實例通過建造者模式構建

SparkSession實現(xiàn)了SQLContext及HiveContext所有功能。SparkSession支持從不同的數(shù)據(jù)源加載數(shù)據(jù),并把數(shù)據(jù)轉(zhuǎn)換成DataFrame,并且支持把DataFrame轉(zhuǎn)換成SQLContext自身中的表,然后使用SQL語句來操作數(shù)據(jù)。SparkSession亦提供了HiveQL以及其他依賴于Hive的功能的支持。
其中①表示導入SparkSession所在的包,②表示建造者模式構建對象和設置屬性
現(xiàn)在,來體驗一下構建執(zhí)行環(huán)境入口對象:SparkSession
IDEA范例演示:構建SparkSession實例,加載文本數(shù)據(jù),統(tǒng)計條目數(shù)
