大數據分析及應用項目教程(Spark SQL)(微課版) 課件 許慧 第1、2章 大數據分析概述、實踐環(huán)境準備_第1頁
大數據分析及應用項目教程(Spark SQL)(微課版) 課件 許慧 第1、2章 大數據分析概述、實踐環(huán)境準備_第2頁
大數據分析及應用項目教程(Spark SQL)(微課版) 課件 許慧 第1、2章 大數據分析概述、實踐環(huán)境準備_第3頁
大數據分析及應用項目教程(Spark SQL)(微課版) 課件 許慧 第1、2章 大數據分析概述、實踐環(huán)境準備_第4頁
大數據分析及應用項目教程(Spark SQL)(微課版) 課件 許慧 第1、2章 大數據分析概述、實踐環(huán)境準備_第5頁
已閱讀5頁,還剩54頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第1章大數據分析概述關于大數據分析第一部分什么是大數據分析大數據分析可視化大數據分析工具學習目標和要求1、了解大數據分析的概念、特點、類別、優(yōu)缺點。2、知道大數據分析的相關工具。3、了解大數據分析可視化的概念及相關工具。什么是大數據分析12345Volume(容量)Velocity(速度)Variety(種類)Value(價值)Veracity(真實性)1、大數據的“5V”特征大數據是指無法在一定時間范圍內用常規(guī)軟件工具進行捕捉、管理和處理的數據集合,大數據分析就是指對規(guī)模巨大的數據進行數據分析。什么是大數據分析2、大數據分析概念數據分析量大1234數據處理速度快數據分析類型多數據價值密度低3、大數據分析的特點BigDataAnalysis5數據的可靠性低什么是大數據分析什么是大數據分析4、大數據分析類別預測分析關注的是對未來事件的預測。預測性分析規(guī)范性分析是指在發(fā)生問題之后,根據問題診斷性分析之后,結合預測性分析,做出相應的優(yōu)化建議和行動。規(guī)范性分析針對過去已經發(fā)生的事情,分析該事件產生的原因。診斷性分析描述性分析是描述過去的數據,基于歷史數據描述發(fā)生了什么,對過去的大量歷史數據進行匯總分析描述,以簡單可讀的方式進行呈現。描述性分析為優(yōu)質決策提供參考;提高產品開發(fā)創(chuàng)新力;改善客戶服務體驗;提升風險管理優(yōu)勢缺點信息透明化成本高數據質量低技術更新變化快什么是大數據分析5、大數據分析的優(yōu)勢與缺點大數據分析工具(1)ApacheSpark:具有SparkSQL、Streaming實時計算、機器學習和SparkGraphX圖計算的內置功能。(2)Hbase:HBase是一個基于HDFS的面向列的分布式數據庫。(3)Storm:Storm是流處理的代表性實現之一。Storm具有低延遲、高性能、分布式、可擴展、容錯、可靠性、快速等特點。(4)Flink:

Flink是一個框架和分布式處理引擎,用于在無邊界和有邊界數據流上進行有狀態(tài)的計算。1、Hadoop生態(tài)圈中的大數據分析工具123編程語言Scala語言:Scala語言是基于JVM運行環(huán)境、面向對象和函數式編程的完美結合Python語言:Python在數據分析領域也是一個強大的語言工具。R語言:是大數據分析工具之一,可用于科學計算、統(tǒng)計分析、數據可視化等。大數據分析工具2、大數據分析編程語言RapidMiner其特點是拖拽操作,無需編程,運算速度快,具有豐富數據挖掘分析和算法功能,常用于解決各種商業(yè)關鍵問題。12MongoDB是一個基于分布式文件存儲的數據庫。旨在為WEB應用提供可擴展的高性能數據存儲解決方案。大數據分析工具3、其他工具

數據可視化是利用計算機以圖形圖表的形式將原始的抽象信息和數據直觀的表示出來。

大數據分析可視化工具有很多,比如Zeppelin、PowerBI、Tableau、Spass等等。大數據分析可視化認識SparkSQL第二部分SparkSQL背景簡介SparkSQL運行原理學習目標和要求1、了解SparkSQL的背景、特點。2、知道SparkSQL的運行架構。3、掌握Catalyst查詢編譯器的工作流程。4、掌握SparkSQL運行流程。HiveSharkSparkSQLHive是最原始的SQL-on-Hadoop工具。是Facebook開發(fā)的構建于Hadoop集群之上的數據倉庫應用,它提供了類似于SQL語句的HQL語句作為數據訪問接口脫離了Hive的依賴,SparkSQL在數據兼容、組件擴展、性能優(yōu)化方面都得到了極大的提升。Shark是使用Scala語言開發(fā)的開源SQL查詢引擎。其設計目標是作為Hive的補充,性能比Hive提高了10-100倍。但是Shark對于Hive依舊存在很多的依賴。SparkSQL背景簡介1、SparkSQL的背景多種性能優(yōu)化技術組件擴展性用戶可以對SQL的語法解析器、分析器以及優(yōu)化器進行重新定義和開發(fā),并動態(tài)擴展。采用內存列存儲(In-MemoryColumnarStorage),字節(jié)碼生成技術(byte-codegeneration),CostModel對查詢操作進行動態(tài)評估、獲取最佳物理計劃等。支持多種數據源可以在Hive上運行SQL或者HQL;可以從RDD、parquet文件、JSON文件中獲取數據。SparkSQL背景簡介2、SparkSQL的特點SparkSQL背景簡介多種性能優(yōu)化技術內存列存儲(In-MemoryColumnarStorage)JVM對象存儲和內存列存儲對比SparkSQL背景簡介多種性能優(yōu)化技術字節(jié)碼生成技術(byte-codegeneration)例如執(zhí)行selecta+bfromtable這條命令通用的SQL方法:首先將生成一個表達式,并多次調用虛函數。SparkSQL:在其catalyst模塊的expressions中增加了codegen模塊。使用動態(tài)字節(jié)碼生成技術來優(yōu)化其性能,對匹配的表達式采用特定的代碼動態(tài)編譯,然后運行。SparkSQL運行原理1、SparkSQL的運行架構SparkSQL的整體架構SparkSQL是由Catalyst,Core,Hive和Hive-Thriftserver四個子項目組成。SparkSQL運行原理(1)Catalyst:負責處理整個查詢過程,包括解析、綁定、優(yōu)化等,將SQL語句轉換成物理執(zhí)行計劃。(2)Core:用于將Catalyst的邏輯查詢計劃轉換為SparkRDD代碼。(3)Hive:Hive組件包括HiveContext和SQLContext,允許用戶使用HiveQL的子集編寫查詢。(4)Hive-Thriftserver:支持HiveServer和CLI。SparkSQL運行原理2、Catalyst查詢編譯器(1)Catalyst的組成:Parser、Analyzer、Optimizer、Planner(2)Catalyst的工作流程Catalyst運行流程SparkSQL運行原理3、SparkSQL的運行原理(1)傳統(tǒng)SQL的運行流程詞法和語法解析(Parse)綁定(Bind)優(yōu)化(Optimize)執(zhí)行(Execute)SparkSQL運行原理(2)SparkSQL運行流程SessionCatalog保存元數據ANTLR生成未綁定的邏輯計劃Analyzer綁定邏輯計劃Optimizer優(yōu)化邏輯計劃SparkPlanner生成可執(zhí)行的物理計劃CostModel選擇最佳物理執(zhí)行計劃execute執(zhí)行物理計劃小結

本章首先對大數據分析進行了介紹,詳細闡述了大數據分析的相關概念、特點、類別及優(yōu)缺點;簡單介紹了大數據分析的常用工具;并對大數據分析可視化的優(yōu)勢價值等進行了分析。然后對大數據分析工具中的SparkSQL展開了詳盡的描述,包括SparkSQL的發(fā)展演變歷程、特點、運行架構原理等內容。THANKS!第2章實踐環(huán)境準備Hadoop集群環(huán)境搭建第一部分環(huán)境準備啟動Hadoop集群運行經典案例wordcount安裝Hadoop學習目標和要求1、掌握Hadoop集群環(huán)境搭建的環(huán)境準備工作,包括配置主機名、防火墻設置、免密登錄設置、Java環(huán)境設置。2、掌握安裝Hadoop的過程、配置文件設置及啟動集群的方法。3、會在Hadoop集群運行經典案例wordcount。環(huán)境準備1、集群節(jié)點規(guī)劃此集群由三個節(jié)點構成,分別是master、slaver01、slaver02。集群搭建部署均在虛擬機中完成,使用VMwareWorkstation16Pro虛擬計算機軟件。環(huán)境準備2、配置主機名和IP(1)修改對應虛擬機的IP地址:

vi/etc/sysconfig/network-scripts/ifcfg-ens33(2)將三臺虛擬機的主機名修改為master、slaver01、slaver02。

hostnamectlset-hostname主機名(3)重啟網絡,使網絡配置生效。

systemctlrestartnetwork環(huán)境準備3、連接MobaXterm終端工具使用MobaXterm終端工具,為master、slaver01和slaver02創(chuàng)建SSH連接。環(huán)境準備4、關閉防火墻

防火墻是對服務器進行保護的一種服務,但有時候會帶來很多麻煩,它會妨礙Hadoop集群間的相互通信,所以我們要關閉防火墻。關閉master、slaver01和slaver02主機的防火墻,并設置開機不自啟。systemctlstatusfirewalldsystemctlstopfirewalldsystemctldisablefirewalldsystemctlstatusfirewalld環(huán)境準備5、關閉SElinuxSELINUX是對系統(tǒng)安全級別更細粒度的設置。關閉master、slaver01和slaver02主機的SElinux。vi/etc/sysconfig/selinux環(huán)境準備6、修改/etc/hosts文件修改master、slaver01和slaver02主機的/etc/hosts文件,建立主機和ip地址之間的映射關系。vi/etc/hosts7、配置免密登錄首先在master節(jié)點創(chuàng)建生成密鑰。將密鑰拷貝到slaver01和slaver02兩個節(jié)點,完成免密登錄配置。環(huán)境準備8、配置Java環(huán)境在master節(jié)點上傳JDK軟件包并解壓。在.bash_profile文件中配置環(huán)境變量。使用source.bash_profile命令,使.bash_profile文件配置生效。查看Java版本,驗證安裝成功。使用scp命令將jdk解壓安裝相關文件分發(fā)到slaver01和slaver02節(jié)點。安裝Hadoop

由于三個節(jié)點都需要安裝Hadoop,為了提高部署效率,先在master節(jié)點進行部署安裝,然后將相關的文件和配置拷貝分發(fā)到另外兩個節(jié)點中。上傳Hadoop安裝包并解壓。修改環(huán)境變量。使環(huán)境變量生效。修改hadoop的配置文件hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml、workers。分發(fā)Hadoop和環(huán)境變量文件到slaver01和slaver02。格式化HDFS文件系統(tǒng)。啟動Hadoop集群1、啟動Hadoop集群只需要在master節(jié)點輸入start-all.sh。接著查看各節(jié)點的服務進程。2、打開Google瀏覽器,輸入地址30:8088,可以打開Yarn頁面。3、輸入地址30:9870,可以打開HDFS頁面。案例wordcount通過經典案例wordcount,體驗Hadoop運行MapReduce計算。1、在本地root目錄下創(chuàng)建一個txt文件,輸入一段自定義文字。2、上傳文本到到hdfs。案例wordcount3、運行命令并查看結果hadoopjarhadoop-mapreduce-examples-3.2.1.jarwordcount/input/outputSpark集群部署與使用第二部分Spark安裝啟動SparkSpark集群測試學習目標和要求1、掌握Spark集群安裝配置方法。2、會啟動關閉Spark集群。3、能使用Spark-shell進行簡單編程測試。Spark安裝1、上傳軟件包使用MobaXterm工具,將軟件包上傳至master節(jié)點的root目錄下,然后將其解壓到/usr/local目錄中。Spark安裝2、在.bash_profile文件中修改環(huán)境變量執(zhí)行source.bash_profile使環(huán)境變量生效Spark安裝3、修改Spark配置文件(1)配置spark-env.sh文件(2)配置workers文件4、復制修改spark啟動腳本,避免和hadoop的啟動腳本沖突。5、分發(fā)Spark安裝文件到slaver01和slaver02。啟動Spark1、在master節(jié)點輸入start-spark-all.sh,啟動Spark。2、查看各節(jié)點服務進程狀態(tài)(此處已經啟動Hadoop集群)啟動Spark3、Web查看Spark主頁情況在瀏覽器中輸入地址30:8080/,進行查看。Spark集群測試1、使用spark-submit工具提交Spark作業(yè)spark-submit提交任務及參數說明:--class:應用程序的主類,僅針對java或scala應用。--master:master的地址,提交任務到哪里執(zhí)行,例如spark://host:port,yarn,local。--driver-memory:driver進程所使用的內存數量,以字節(jié)為單位??梢灾付ú煌暮缶Y如“512m”或“15g”,默認是1G。--executor-memory:executor使用的內存數量,以字節(jié)為單位??梢灾付ú煌暮缶Y如“512m”或“15g”,默認是1G。--total-executor-cores:所有executor

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論