더북(TheBook)

6.2.2 카프카를 사용해 스트리밍 애플리케이션 개발

 

스파크 셸이 아직 열려 있다면 종료하자. 카프카 라이브러리와 스파크-카프카 커넥터 라이브러리를 스파크 셸의 클래스패스에 추가해 재시작해야 한다. 각 라이브러리의 JAR 파일을 직접 내려받을 수도 있지만, 다음과 같이 packages 매개변수를 지정하면 스파크는 JAR 파일을 자동으로 내려받아 사용한다(이 명령은 아직 실행하지 말자).

$ spark-shell --master local[4] --packages org.apache.spark:spark-streaming-kafka-0-8_2.11:2.0.0,org.apache.kafka:kafka_2.11:0.8.2.1

 

--packages에는 각 라이브러리의 groupID, artifactID 및 라이브러리 버전 정보를 콜론(:)으로 구분해 나열한다. 버전 정보에는 현재 사용 중인 스파크 버전에 맞는 라이브러리 버전을 지정한다. 반면 스파크 독립형 애플리케이션을 메이븐 프로젝트로 빌드할 때는 애플리케이션의 pom.xml 파일에 다음 의존 라이브러리를 추가하면 된다.

<dependency>
  <groupId>org.apache.spark</groupId>
  <artifactId>spark-streaming-kafka-0-8_2.11</artifactId>
  <version>2.0.0</version>
</dependency>
<dependency>
  <groupId>org.apache.kafka</groupId>
  <artifactId>kafka_2.11</artifactId>
  <version>0.8.2.1</version>
</dependency>
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.