SparkStreaming
生活随笔
收集整理的這篇文章主要介紹了
SparkStreaming
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、RDD基礎
RDD.scala源碼寫到RDD的5個屬性。driver生成RDD 分發到個executor,RDD可理解為操作描述,除sc.parallelize()生成的RDD包含數據外,一般RDD不包含具體數據,只存儲要讀取的文件位置,DAG等。
KafkaUtils.createDirectStream生成KafkaRDD,分區與topics分區數對應。
基于receiver的方式生成blockRDD,默認200ms取一次數據保存在block,由blockmanager管理,分區數與block數有關,與kafka分區數無關,offset由zookeeper管理。
處理邏輯寫在foreachRDD中,轉變為sparkcore編程,便于發生故障時,做數據校驗二次處理。
* Internally, each RDD is characterized by five main properties:* - A list of partitions* - A function for computing each split* - A list of dependencies on other RDDs* - Optionally, a Partitioner for key-value RDDs (e.g. to say that the RDD is hash-partitioned)* - Optionally, a list of preferred locations to compute each split on (e.g. block locations for an HDFS file)?2、receiver
3、優雅地停止
//spark.streaming.stopGracefullyOnShutdown 在yarn cluster模式下不起作用,采取hdfs Markfile的方式,檢測到存在Markfile,程序就調用stop(true,true).(https://www.inovex.de/blog/247-spark-streaming-on-yarn-in-production/)?
轉載于:https://www.cnblogs.com/csyusu/p/11062210.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的SparkStreaming的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 剑指offer——最小的K个数和数组中第
- 下一篇: IT外包概要