91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>數(shù)值算法/人工智能>

如何使用Apache Spark 2.0

大小:0.5 MB 人氣: 2017-09-28 需要積分:1

  Spark 2.0中使用DataFrames和SQL的第一步

  Spark 2.0開發(fā)的一個動機(jī)是讓它可以觸及更廣泛的受眾,特別是缺乏編程技能但可能非常熟悉SQL的數(shù)據(jù)分析師或業(yè)務(wù)分析師。因此,Spark 2.0現(xiàn)在比以往更易使用。在這部分,我將介紹如何使用Apache Spark 2.0。并將重點關(guān)注DataFrames作為新Dataset API的無類型版本。

  到Spark 1.3,彈性分布式數(shù)據(jù)集(Resilient Distributed Dataset,RDD)一直是Spark中的主要抽象。RDD API是在Scala集合框架之后建模的,因此間接提供了Hadoop Map / Reduce熟悉的編程原語以及函數(shù)式編程(Map、Filter、Reduce)的常用編程原語。雖然RDD API比Map / Reduce范例更具表達(dá)性,但表達(dá)復(fù)雜查詢?nèi)匀缓芊爆?,特別是對于來自典型數(shù)據(jù)分析背景的用戶,他們可能熟悉SQL,或來自R/Python編程語言的數(shù)據(jù)框架。

  Spark 1.3引入了DataFrames作為RDD頂部的一個新抽象。DataFrame是具有命名列的行集合,在R和Python相應(yīng)包之后建模。

  Spark 1.6看到了Dataset類作為DataFrame的類型化版本而引入。在Spark 2.0中,DataFrames實際上是Datasets的特殊版本,我們有type DataFrame = Dataset [Row],因此DataFrame和Dataset API是統(tǒng)一的。

  表面上,DataFrame就像SQL表。Spark 2.0將這種關(guān)系提升到一個新水平:我們可以使用SQL來修改和查詢DataSets和DataFrames。通過限制表達(dá)數(shù)量,有助于更好地優(yōu)化。數(shù)據(jù)集也與Catalyst優(yōu)化器良好集成,大大提高了Spark代碼的執(zhí)行速度。因此,新的開發(fā)應(yīng)該利用DataFrames。

  在本文中,我將重點介紹Spark 2.0中DataFrames的基本用法。我將嘗試強(qiáng)調(diào)Dataset API和SQL間的相似性,以及如何使用SQL和Dataset API互換地查詢數(shù)據(jù)。借由整個代碼生成和Catalyst優(yōu)化器,兩個版本將編譯相同高效的代碼。

  代碼示例以Scala編程語言給出。我認(rèn)為這樣的代碼最清晰,因為Spark本身就是用Scala編寫的。

  ?SparkSession

  SparkSession類替換了Apache Spark 2.0中的SparkContext和SQLContext,并為Spark集群提供了唯一的入口點。

  如何使用Apache Spark 2.0

  為了向后兼容,SparkSession對象包含SparkContext和SQLContext對象,見下文。當(dāng)我們使用交互式Spark shell時,為我們創(chuàng)建一個名為spark的SparkSession對象。

  ?創(chuàng)建DataFrames

  DataFrame是具有命名列的表。最簡單的DataFrame是使用SparkSession的range方法來創(chuàng)建:

  使用show給我們一個DataFrame的表格表示,可以使用describe來獲得數(shù)值屬性概述。describe返回一個DataFrame:

  如何使用Apache Spark 2.0

?

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

如何使用Apache Spark 2.0下載

相關(guān)電子資料下載

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?