2

다른 작업 (Spark core jobs)을 사용하여 Spark Streaming 작업을 클러스터에서 실행하고 있습니다. Spark Streaming을 포함한 이러한 작업에 Dynamic Resource Allocation을 사용하고 싶습니다. 아래의 JIRA Issue에 따르면 동적 할당은 Spark Streaming (1.6.1 버전에서)을 지원하지 않습니다. 그러나이 문제의 PDF에 따르면 2.0.0Spark Streaming에 대한 동적 할당

JIRA link

에서 수정, 그것은 구성 필드 spark.streaming.dynamicAllocation.enabled=true 라고하지만이 문서에서이 구성을 볼 그나마이 있어야 말한다.

누군가가 확인하시기 바랍니다 수,

  1. 나는 1.6.1 버전에서 스파크 스트리밍을위한 동적 자원 할당을 활성화 할 수 없습니다.
  2. Spark 2.0.0에서 사용할 수 있습니까? 네, 어떤 구성이 (spark.streaming.dynamicAllocation.enabled=true 또는 spark.dynamicAllocation.enabled=true)를 설정해야하는 경우

답변

2

나는 1.6.1 버전을 스트리밍 스파크에 대한 동적 자원 할당을 가능하게 할 수 있나요?

예, spark.dynamicAllocation.enabled=true 어떤 스파크 응용 프로그램 설정 동적 할당하여을 활성화 할 수 있습니다하지만 (JIRA에 언급 된) 스트리밍 응용 프로그램

  1. 하는 것은 귀하의 집행이 유휴 결코 수와 몇 가지 문제가 N 초마다 무언가를 실행하기 때문에.
  2. 적어도 하나의 수신자가 항상 실행되어야합니다.
  3. 기존 휴리스틱은 AC에 들어 가지 않습니다. 일괄 처리 대기열의 길이 계산

따라서 스트리밍 앱만을위한 새로운 속성 (spark.streaming.dynamicAllocation.enabled)이 Spark 2.0에 추가되었습니다.

Spark 2.0.0에서 사용할 수 있습니까? 그렇다면 어떤 구성이 이되어야 spark.streaming.dynamicAllocation.enabled 또는 spark.dynamicAllocation.enabled로 설정되어 있습니까? 응용 프로그램을 스트리밍하는 경우

그렇지 않으면 함께 머리를 이동 spark.streaming.dynamicAllocation.enabled 여야합니다 spark.dynamicAllocation.enabled

편집 : (2017-JAN-05 코멘트 당에)

이는의 문서화되지 않은 오늘,하지만 Spark 소스 코드에서이 속성과 구현을 얻습니다. ExecutorAllocationManager.scala (단위 테스트 ExecutorAllocationManagerSuite.scala) 클래스가 Spark 2.0에 포함되어 있으며이 구현은 Spark 1.6 이하에는 없습니다.

+0

답장을 보내 준 Srinivas에게 감사드립니다. 그러나 Spark Documentation에서 "spark.streaming.dynamicAllocation.enabled"가 표시되지 않습니다. 이걸 본 링크로 나를 가리켜 주시겠습니까? –

+0

@AkhilaLankala : Pls가 편집을 확인합니다. – mrsrinivas