原创 Spark系列---SparkSQL(五)創建json格式的list註冊成臨時表用sql語句查詢

1.創建json格式的list註冊成臨時表用sql語句查詢 scala版本 package com.kevin.scala.dataframe import org.apache.spark.sql.SQLContext import

原创 Flink系列---Flink流處理WordCount

FlinkStream的WordCount案例 這篇直接貼上案例,關於理論方面,我會選文章專門將Flink的運行流程、架構、原理、流處理、批處理的理論。 代碼結構類型:maven的module 該處是DTFlinkStreaming 項目

原创 Spark性能調優系列:(四)數據傾斜(提高shuffle操作的並行度)

提高shuffle操作的並行度 使用場景 如果必須要對數據傾斜迎難而上,那麼建議優先使用該方案,因爲這是處理數據傾斜最簡單的一種。 實現思路 在對RDD執行shuffle算子時,給shuffle算子傳入一個參數,比如reduceBy

原创 Spark性能調優系列:(八)開發調優(使用Kryo優化序列化性能)

使用Kryo優化序列化性能 Spark主要有三個地方涉及序列化: 1.算子函數中使用到外部變量時,該變量會被序列化後進行網絡傳輸。 2.將自定義類型作爲RDD的泛型類型時(比如Student是自定義類型),所有自定義類型對象,都會進行序

原创 Spark性能調優系列:(七)開發調優(廣播大變量)

廣播大變量 開發過程中,如果需要在算子函數中使用外部變量的場景(尤其是100m以上的數據),那麼此時應該使用廣播變量來提升性能。 算子函數中,默認情況下,Spark會將該變量複製多個副本,通過網絡傳輸到task中,此時每個task都有一個

原创 Spark性能調優系列:數據本地化

Spark數據本地化 背景: 數據本地化對於Spark Job性能有着巨大的影響,如果數據以及要計算它的代碼是一起的,那麼性能當然會非常高。但是如果數據與計算它的代碼是分開的,那麼其中之一必須到另外一方機器上,通常來說,移動代碼到其它節點

原创 Spark性能調優系列:(一)數據傾斜(原理)

數據傾斜 一、概述: 有時,我們會遇到數據傾斜,在遇到數據傾斜的時候Spark作業的性能會比期望差很多,這時,我們就需要對數據傾斜進行調優,以保證Spark作業的性能。 二、數據傾斜發生時的現象: 1.絕大多數Task執行得非常快,但個

原创 Spark性能調優系列:(五)數據傾斜(兩階段聚合(局部聚合+全局聚合))

兩階段聚合(局部聚合+全局聚合) 適用場景 對RDD執行reduceByKey等聚合類shuffle算子或者在SparkSQL中使用Groupby語句進行分組聚合時,比較適用這種方案。 實現思路 核心實現思路就是進行兩階段聚合。第一

原创 Spark性能調優系列:(九)開發調優(優化數據結構)

優化數據結構 Java中有三種類型比較耗費內存:   1.對象,每個Java對象都有對象頭,引用等額外的信息,因此比較佔用內存空間。 2.字符串,每個字符串內部都有一個字符數組以及長度等額外信息。 3.集合類型,比如HashMap、Li

原创 Spark性能調優系列:(二)數據傾斜(Hive ETL預處理數據方案)

Hive ETL預處理數據方案 適用場景 導致數據傾斜的是Hive表,如果Hive表中的數據本身分佈不均勻(比如:某個key對應了100萬數據,其他key只對應了100條數據), 而且業務場景需要頻繁使用到Spark對Hive表執

原创 Flink部署後啓動不成功錯誤

案例:Flink1.9   啓動Flink 查看jps發現沒有啓動 Master Slave 如果啓動成功 Master應該有StandaloneSessionClusterEntrypoint Slave應該有TaskMana

原创 Flink系列---Flink批處理WordCount(Java、Scala版本)

Flink系列---Flink批處理WordCount(Java、Scala版本)   一、配置Linux中的Flink HA集羣 配置Flink HA集羣 二、配置IDEA中Flink的環境 需要有Scala插件,百度一下即可。 三

原创 Spark系列---SparkSQL(二)讀取txt文件轉爲DataFrame表的所有action(Java、Scala版本)

該文章只附上代碼案例,不進行講解,需要了解的看以下文章 Spark系列---SparkSQL(一)介紹與使用 Spark系列---Spark算子RDD(Java、Scala版本) 讀取txt文件轉爲DataFrame表的所有action

原创 Spark系列---SparkSQL(一)介紹與使用

SparkSQL前世今生 SparkSQL 1.0版本之前:Shark -> Hive on Spark SparkSQL 1.0版本之後:SparkSQL SparkSQL 1.3.X版本:SparkSQL+DataFrame Spa

原创 Spark性能調優系列:(三)數據傾斜(過濾少數導致傾斜的key)

過濾少數導致傾斜的key 使用場景 如果發現導致傾斜的key就少數幾個,而且對計算本身的影響並不大的話,那麼非常適合該方案。(比如:99%的key就對應100條數據,只有1個key對應百萬條數據,從而導致數據傾斜) 實現思路 如果覺得