spark入門系列教程三——spark sql(一)
Spark SQL是用於結構化資料處理的Spark模組,可以通過sql、dataset、dataframe與spark sql進行互動。更多理論性知識請移步官網http://spark.apache.org/docs/2.3.1/sql-programming-guide.html
在spark 2.0以前,多使用SqlContext進行開發,2.0以後,推薦使用SparkSession,本文將以SqlContext寫一個簡單的例子,在後面的博文中,會寫spark session相關的博文,並會詳細說明二者之間的差別。
接著上一篇的工程,繼續開發學習。
1.準備
1.1新增maven依賴
在pom檔案中新增如下依賴:
1.2準備資料
新建一個txt檔案,加入以下資料
如果有hdfs叢集,可以將資料push到hdfs叢集
2.編碼
新建scala object SparkSqlDemo1,加入如下程式碼:
執行結果:
完整程式碼已上傳至github https://github.com/wuyueming985/sparkdemos
感謝閱讀!
相關推薦
spark入門系列教程三——spark sql(一)
Spark SQL是用於結構化資料處理的Spark模組,可以通過sql、dataset、dataframe與spark sql進行互動。更多理論性知識請移步官網http://spark.apache.org/docs/2.3.1/sql-programming-guide.html 在spark 2.0以前
Apache Spark漸進式學習教程(三): Spark單節點安裝和快速入門Demo
一,下載Spark 使用 Spark 的第一步是下載和解壓縮。我們先從下載預編譯版本的 Spark 開始。訪問 ht
spark入門四(RDD高階運算元一)
1. mapPartitionsWithIndex 建立RDD,指定分割槽數為2 scala> val rdd1 = sc.parallelize(List(1,2,3,4,5,6,7),2) 檢視分割槽 scala> rdd1.partitio
Selenium-webdriver系列教程(三)————如何執行一段js指令碼
有時候在進行自動化測試時需要在頁面上執行一段js指令碼,這個時候就需要用到execute_script方法了。 require 'selenium-webdriver' dr = Selenium::WebDriver.for :ff url = 'http://www.
資料分析系列教程之pandas(一)
之前講了資料分析numpy庫,今天開始講資料分析教程pandas庫,可以說,python在資料分析領域獨樹一幟,離不開pandas的強有力支撐,之前教程中也說過了,numpy主要處理數值型資料,pandas不但能處理數值型,字元型等也能處理,而且相比numpy,pandas會更好用,一般情況
系列教程|IntelliJ IDEA(一):安裝與破解
之前經常聽人說IDEA效能如何優越,使用如何方便,今天心血來潮,準備從eclipse轉投IDEA的懷抱。安裝破解的時候,在網上搜索了許多教程,不經意間看到這位大佬(JaJian)的部落格,頁面優美、整潔,內容完備、清晰,一時之間引為天人。 所以,就決定以JaJian大佬的部落格作為初步學習IDE
Angular2入門系列教程6-路由(二)-使用多層級路由並在在路由中傳遞複雜引數
之前介紹了簡單的路由以及傳參,這篇文章我們將要學習複雜一些的路由以及傳遞其他附加引數。一個好的路由系統可以使我們的程式更好的工作。 假設你已經跟上了我們的進度。 我們來為我們的文章明細新增一個評論框;當我們在明細中點選評論的時候,在我們的明細頁面顯示評論,這裡
Linux Shell系列教程之(十一)Shell while迴圈
在上一篇Linux Shell系列教程之(十)Shell for迴圈中,我們已經對Shell 迴圈語句的for迴圈進行了介紹,本篇給大家介紹下Shell 中另一種迴圈語句:Shell while迴圈。 Shell while迴圈語法及特點 Shell whi
spark 教程三 spark Map filter flatMap union distinct intersection操作
文件的 ask wordcount 本地文件 png var foreach sets list RDD的創建 spark 所有的操作都圍繞著彈性分布式數據集(RDD)進行,這是一個有容錯機制的並可以被並行操作的元素集合,具有只讀、分區、容錯、高效、無需物化、可以緩存、RD
Java EE入門教程系列第二章JSP(一)——第一個JSP程式
2、1JSP概述 2.1.1JSP簡介 JSP,全稱是Java Server Pages,是在Servlet技術的基礎上形成的,主要完成網頁中伺服器動態部分的編寫。 有如下特點: (1)一次編寫,隨處執行 (2)可重用元件技術 (3)標記化頁面開發:JSP將許多常用功能封裝起
40-天亮大資料系列教程之Spark常用運算元分析與應用
目錄 1、運算元概述 2、Spark運算元介紹與應用 3、經典運算元練習 詳情 1、運算元概述 什麼是運算元 英文翻譯為:Operator(簡稱op) 狹義:指從一個函式空間到另一個函式空間(或它自身)的對映。 廣義:指從一個空間到另一個空間的對
ASP.NET Identity入門系列教程(一) 初識Identity
摘要 通過本文你將瞭解ASP.NET身份驗證機制,表單認證的基本流程,ASP.NET Membership的一些弊端以及ASP.NET Identity的主要優勢。 目錄 身份驗證(Authentication)和授權(Authorization) 我們先來思考一個問題:如何構建安全的WEB應
Spark入門基礎教程
from: http://www.linuxidc.com/Linux/2016-03/129506.htm 背景 目前按照大資料處理型別來分大致可以分為:批量資料處理、互動式資料查詢、實時資料流處理,這三種資料處理方式對應的業務場景也都不一樣; 關注大資料處理
Tensorflow入門系列(三)--官方新手教程詳解
官方教程詳解 Part 1 –資料集無法下載 在命令列模式下執行 python premade_estimator.py時會遇到報錯,錯誤原因是資料集無法下載。在iris_data.py這個檔案下,我們可以看到通過tf.keras.utils.g
理解Spark SQL(一)—— CLI和ThriftServer
Spark SQL主要提供了兩個工具來訪問hive中的資料,即CLI和ThriftServer。前提是需要Spark支援Hive,即編譯Spark時需要帶上hive和hive-thriftserver選項,同時需要確保在$SPARK_HOME/conf目錄下有hive-site.xml配置檔案(可以從hive
Spring Boot2 系列教程(三十一)Spring Boot 構建 RESTful 風格應用
RESTful ,到現在相信已經沒人不知道這個東西了吧!關於 RESTful 的概念,我這裡就不做過多介紹了,傳統的 Struts 對 RESTful 支援不夠友好 ,但是 SpringMVC 對於 RESTful 提供了很好的支援,常見的相關注解有: @RestController @GetMapping
資料探勘入門系列教程(一)之親和性分析
資料探勘入門系列教程(一)之親和性分析 教程系列簡介 系列地址:https://www.cnblogs.com/xiaohuiduan/category/1661541.html 該教程為入門教程,為博主學習資料探勘的學習路徑步驟。教程為入門教程,從最簡單的開始。使用的程式語言為Pytho
資料探勘入門系列教程(三)之scikit-learn框架基本使用(以K近鄰演算法為例)
資料探勘入門系列教程(三)之scikit-learn框架基本使用(以K近鄰演算法為例)簡介scikit-learn 估計器載入資料集進行fit訓練設定引數預處理流水線結尾 資料探勘入門系列教程(三)之scikit-learn框架基本使用(以K近鄰演算法為例) 資料探勘入門系列部落格:https://
資料探勘入門系列教程(三點五)之決策樹
## 資料探勘入門系列教程(三點五)之決策樹 本來還是想像以前一樣,繼續學習《 Python資料探勘入門與實踐 》的第三章“決策樹”,但是這本書上來就直接給我懟了一大串程式碼,對於`決策樹`基本上沒有什麼介紹,可直接把我給弄懵逼了,主要我只聽過決策樹還沒有認真的瞭解過它。 這一章節主要是對決策樹做一個介紹
Python入門系列教程(二)
字符 小寫 無符號 bsp div width raw_input abc body 字符串 1.字符串輸出 name = ‘xiaoming‘ print("姓名:%s"%name) 2.字符串輸入 userName = raw_input(‘請輸