hive on spark on yarn
最近不是很忙就寫篇關於spark在實際中的應用
我目前帶領團隊給幾家銀行做資料分析相關工作,其中一家使用的是spark,一家使用的是impala,還有一家用的是hadoop。今天重點就來說說spark吧。
由於設計商業機密,我重新簡單的畫了個和業務無關的架構圖
首先要告訴大家的是,在生產環境我們很少直接寫MR或者用SCALA組合自己的RDD。雖然寫過但是真的很少很少。這樣說並不代表他們不重要,只是生產環境時間人力都有限,我們一般都會選擇HIVE來寫業務邏輯。所以大家一定要學好HIVE,至少目前來看直接使用sparkSQL還不是很成熟。
言歸正傳,我們先來搭建起我們的HIVE on spark on yarn的環境吧,對於spark在生產環境應用的問題歡迎大家和我溝通,互相學習。我的郵箱是5724589@qq.com
Hive On Spark
對於Hive和Spark的安裝,請檢視我部落格相關章節,這裡只提下將他們整合一起時需要修改的地方。
1.將hive-site.xml 複製到spark_home/conf下
2.修改spark-env.sh
新增:
export HADOOP_HOME=/Users/luobao/study/hadoop-2.6.0
export SPARK_CLASSPATH=$SPARK_CLASSPATH:/Users/luobao/study/spark/lib/mysql-connector-java-5.1.34.jar
Spark on yarn
1.修改spark-env.sh
新增:
export HADOOP_HOME=/Users/luobao/study/hadoop-2.6.0
我也想寫多點,可是就是這麼簡單···
啟動程式:
1.啟動hadoop
cd $HADDOP_HOME/sbin
sh start-all.sh
2.啟動spark
cd $SPARK_HOME/sbin
sh start-all.sh
3.啟動spark的thrift服務(用來提供JDBC連線)
sh start-thriftserver.sh
這時候我們就可以在我們的程式中寫SQL來查詢spark了,例如
def main(args: Array[String]) { Class.forName("org.apache.hive.jdbc.HiveDriver") val conn: Connection = DriverManager.getConnection("jdbc:hive2://localhost:10000/default", "", "") val pstat: PreparedStatement = conn.prepareStatement("SELECT * from info where name='羅寶'") val rs: ResultSet = pstat.executeQuery while (rs.next) { println("track_time: " + rs.getString("name") ) } rs.close pstat.close conn.close }
我們去spark的UI上看下JOB執行情況
需要說的是,在我們執行查詢語句之前,我已經在HIVE裡建立了表,並且load了資料。
關於HIVE的操作可以檢視這幾篇部落格,或網上搜下。
有什麼問題留言或直接與我聯絡。
相關文章
- Spark on Yarn 和Spark on MesosSparkYarn
- 12 Spark on YARNSparkYarn
- spark with hiveSparkHive
- Spark on Yarn 實踐SparkYarn
- Spark:Yarn-client與Yarn-clusterSparkYarnclient
- hive on spark配置HiveSpark
- Spark整合hiveSparkHive
- spark 與 yarn 結合SparkYarn
- 搭建spark on yarn 叢集SparkYarn
- Spark on Yarn 環境搭建SparkYarn
- Hive on Spark和Spark sql on Hive,你能分的清楚麼HiveSparkSQL
- Hive on Spark 和 Spark sql on Hive,你能分的清楚麼HiveSparkSQL
- hive、spark優化HiveSpark優化
- Spark開發-Yarn cluster模式SparkYarn模式
- spark on yarn 資料插入mysqlSparkYarnMySql
- spark2.2.0 配置spark sql 操作hiveSparkSQLHive
- Spark on Yarn 部分一原理及使用SparkYarn
- Spark 原始碼系列(七)Spark on yarn 具體實現Spark原始碼Yarn
- 【Spark篇】---Spark中yarn模式兩種提交任務方式SparkYarn模式
- spark寫入hive資料SparkHive
- Hive和Spark分割槽策略HiveSpark
- Spark操作Hive分割槽表SparkHive
- hive on spark記憶體模型HiveSpark記憶體模型
- 部署Spark2.2叢集(on Yarn模式)SparkYarn模式
- Flume+Spark+Hive+Spark SQL離線分析系統SparkHiveSQL
- Spark UI (基於Yarn) 分析與定製SparkUIYarn
- Spark原始碼解析-Yarn部署流程(ApplicationMaster)Spark原始碼YarnAPPAST
- Apache Spark和Hive有用的功能ApacheSparkHive
- hive on spark執行速度慢HiveSpark
- spark on yarn 的資源排程器設定.SparkYarn
- Spark on Yarn 任務提交流程原始碼分析SparkYarn原始碼
- 【Spark篇】---SparkSQL on Hive的配置和使用SparkSQLHive
- spark相關介紹-提取hive表(一)SparkHive
- hive on spark:return code 30041 Failed to create Spark client for Spark session原因分析及解決方案探尋HiveSparkAIclientSession
- 基於樹莓派的叢集實驗(一)--spark on yarn樹莓派SparkYarn
- zookeeper:spark-project專案的hive和mysql配置SparkProjectHiveMySql
- Hadoop2.7.3+Hive2.1.1+Spark2.1.0環境搭建HadoopHiveSpark
- spark-submit提交到yarn中執行的log怎麼看?SparkMITYarn