原创 spark streaming 流式計算-----容錯(hbase冪等性修改)

在做流式計算過程中,最複雜最難做的莫過於數據冪等性修改操作的設計。先解釋一下概念【冪等性操作】,冪等性概念來源於數學專業表示對一個表達式做多次相同的操作,表達式不會改變。例如:邏輯迴歸中的Sigmod函數,n次求導之後依然堅挺。在流式計算中

原创 廣播變量(Broadcast)-及生命週期

1 Spark中廣播變量概念廣播變量是spark中共享變量的其中一種。它可以讓程序高效的向所有工作節點發送一個只讀的值,以供一個或多個spark操作使用。 2 廣播變量使用示例下面是一段簡單的計算邏輯,對比了不使用廣播變量和使用廣播變量的兩

原创 SparkStreaming 手動維護kafka Offset到Mysql實例

官網詳解地址http://spark.apache.org/docs/latest/streaming-kafka-0-10-integration.html 手動提交offset,以保證數據不會丟失,尤其是在網絡抖動嚴重的情況下,但是如

原创 使用SparkSql 讀取ES數據

對於大批量數據,查詢es時,需要帶條件去查詢,否則一下查出所有數據數據量會很大 es查詢需要編寫json格式的DSL查詢語句,對於複雜查詢,DSL編寫起來也分很複雜,所以我們這裏使用sparksql,通過編寫sql語句,spark將sql

原创 分佈式消息隊列kafka

kafka是Linkedin開源的分佈式發佈-訂閱消息系統(消息隊列) kafka特點 1 高吞吐率、低延遲,每秒處理幾十萬消息,延遲最低幾毫秒 2 可擴展性,支持動態擴展節點數據 3 持久性與可靠性,數據被持久化磁盤,支持數據多副本防止數

原创 Spark Streaming 的saveAsTextFiles遇到的坑

使用sparkStreaming消費數據,並使用Dstream的 saveAsTextFile保存數據到hdfs中,通過使用這個方法,生成的文件夾存在問題, 代碼例子如下:     resultRdd.map(x=>x).saveAsTex

原创 Spark基本的RDD算子之groupBy,groupByKey,mapValues

1. groupby def groupBy[K: ClassTag](f: T => K): RDD[(K, Iterable[T])] def groupBy[K: ClassTag](f: T => K, numPartitions