더북(TheBook)

6.1.1 예제 애플리케이션

 

이전 장과 마찬가지로 예제 애플리케이션을 사용해 스파크 스트리밍 개념을 알아보자. 우리는 한 증권사에서 대시보드 애플리케이션을 구축해 달라는 의뢰를 받았다. 이 증권사 고객은 인터넷 애플리케이션을 사용해 거래 주문(즉, 유가 증권(securities)1의 매매)을 요청하며, 증권사 담당자는 고객의 주문을 받아 증권 시장에서 실제 거래를 진행한다. 우리가 구축할 대시보드 애플리케이션은 초당 거래 주문 건수, 누적 거래액이 가장 많은 고객 1~5위, 지난 1시간 동안 거래량이 가장 많았던 유가 증권 1~5위를 집계해야 한다.

우리는 먼저 HDFS 파일의 데이터를 읽어 처리한 후 처리 결과를 다시 HDFS에 저장하는 단순한 예제부터 실습한다. 예제를 확장해 분산 메시지 전달 시스템인 아파치 카프카에 접속하는 방법은 6.2절에서 알아본다.

예제 애플리케이션의 지표 또한 초당 거래 주문 건수를 집계하는 단순한 것부터 먼저 구현한다. 거래액 1~5위 고객과 거래량 1~5위 유가 증권은 나중에 추가한다.

한 가지 더 짚고 넘어가자면, 이 장에서 제공하는 모든 예제는 스파크 셸을 기준으로 설명한다. 스파크 독립형 애플리케이션은 따로 설명하지 않고, 스파크 셸에서 스파크 스트리밍을 실행하는 방법과 어떤 차이점이 있는지만 별도로 언급한다. 3장 내용을 잘 파악했다면 이 장 예제 코드를 스파크 독립형 애플리케이션으로 변경하고 JAR 아카이브 형태로 클러스터에 제출할 수 있을 것이다.

 

1 유가 증권은 채권(bond)이나 주식(stock), 악명 높은 파생 상품(derivative) 등 거래 가능한 금융 자산을 의미한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.