[英]Spark Streaming and High Availability
我正在構建作用於多個流的Apache Spark應用程序。
我確實閱讀了文檔的性能調優部分: http : //spark.apache.org/docs/latest/streaming-programming-guide.html#performance-tuning
我沒有得到的是:
1)流媒體接收器是位於多個工作節點還是驅動程序機器?
2)如果接收數據的其中一個節點發生故障(斷電/重啟)會發生什么
流接收器是位於多個工作節點還是驅動程序機器
接收器位於工作節點上, 工作節點負責消耗保存數據的源。
如果其中一個接收數據的節點出現故障(斷電/重啟)會發生什么
接收器位於工作節點上。 工作節點從驅動程序獲取它的任務。 如果您在客戶端模式下運行,則此驅動程序可以位於專用主服務器上;如果您在群集模式下運行,則該驅動程序可以位於其中一個工作服務器上。 如果節點發生故障並且未運行驅動程序,則驅動程序會將故障節點上保存的分區重新分配給另一個,然后可以從源重新讀取數據,並執行其他操作。從故障中恢復所需的處理。
這就是需要可重放源,如Kafka或AWS Kinesis的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.